skillZs
★ LIVE SKILL TAGS ★
>>> LIVE SKILLS INDEX <<<
* OPEN SOURCE *
NO LOGIN, NO TRACKING
※ REAL INSTALL DATA ※
← back to all skills
yaklang/yak-skills104 installs

yakit-basic

Yakit 基本使用指南。当用户需要了解 Yakit 是什么、如何安装、界面各功能区用途、引擎与前端的关系、 以及从零开始上手 Yakit 时使用。覆盖架构概览(引擎 + Electron 前端 + gRPC 通道)、三种界面模式 (经典 / 安全专家 / 扫描)、核心功能区路由表(MITM / Web Fuzzer / Codec / 端口扫描 / 插件 / 数据库等)、 引擎连接与项目切换、以及新手最常见问题的入口。当用户问"Yakit 怎么用 / 某个功能在哪 / 引擎连不上"时进入。

How do I install this agent skill?

npx skills add https://github.com/yaklang/yak-skills --skill yakit-basic
view source ↗

Is this agent skill safe to install?

  • Gen Agent Trust Hubpass

    The skill is a basic usage guide for Yakit, a security testing platform. It provides architectural overviews, functional routing, and a skeleton example script for writing plugins. No security issues were detected.

  • Socketwarn

    1 alert: gptSecurity

  • Snykfail

    Risk: CRITICAL · 1 issue

What does this agent skill do?

SKILL: Yakit 基本使用

AI LOAD INSTRUCTION: Yakit 是 Yak Project 的图形化安全测试平台,由 Electron 前端 + yaklang 引擎后端组成, 两者通过 gRPC 通信。本页是"Yakit 界面上有什么、各功能区干什么、引擎怎么连"的入口指南。要写插件/热加载 脚本请路由到对应专题 skill(见第 6 节路由表),本页只讲 UI 与基本使用。

0. 相关路由

1. 架构概览(先理解三层结构)

flowchart LR
    subgraph Frontend["Yakit 前端 (Electron + React)"]
        UI["界面交互<br/>MITM/Fuzzer/Codec/扫描/插件..."]
    end
    subgraph Engine["yaklang 引擎 (本地进程)"]
        GRPC["gRPC Server<br/>yakgrpc"]
        Lang["Yaklang 脚本引擎<br/>common/yak"]
        Libs["内置库<br/>poc/codec/db/risk/synscan..."]
    end
    UI <-->|"gRPC 双向流<br/>ExecResult / 请求响应"| GRPC
    GRPC --> Lang
    Lang --> Libs
    Libs -->|"SQLite/GORM"| DB[("项目数据库<br/>profile/project")]

关键理解:

  • 引擎是独立进程:yaklang 引擎是本地启动的 gRPC 服务(默认端口由引擎自动选择),前端 Electron 应用 通过 gRPC 双向流与之通信。引擎负责执行所有 yak 脚本、扫描、MITM 代理、发包等"重活"。
  • 前端是展示与交互层:Yakit 前端(React + Electron)不执行安全逻辑,它把用户操作翻译成 gRPC 请求, 把引擎返回的 ExecResult 流渲染成日志、表格、图表、风险卡片等 UI 组件。
  • 数据库有两层:
    • profile 数据库:全局配置、插件脚本(YakScript)、Payload 字典、全局 KV、指纹库等。
    • project 数据库:随项目切换的历史流量(HTTPFlow)、风险(Risk)、端口资产、域名资产等。

源码定位:引擎入口 yaklang/common/yakgrpc/;前端 gRPC 流消费 yakit/app/renderer/src/main/src/hook/useHoldGRPCStream/;前端路由定义 yakit/app/renderer/src/main/src/routes/newRoute.tsx。

2. 三种界面模式

Yakit 社区版有三种模式,通过左侧菜单形态区分(yakit/app/renderer/src/main/src/routes/newRoute.tsx 中 YakitModeEnum 定义):

模式菜单形态适合人群固定 Tab
安全专家左侧图标条 + 右侧"更多"折叠熟练渗透测试人员MITM / Web Fuzzer / History
经典左侧树形折叠菜单入门/习惯传统菜单首页 / History
扫描左侧树形菜单(精简)只需批量扫描-

模式切换在"系统设置"里,切换后左侧菜单和固定 Tab 随之变化。

3. 核心功能区路由表

从前端 YakitRouteToPageInfo 和 RouteToPage 提取的核心页面(按功能分组):

3.1 渗透测试

功能路由 key界面用途关联 skill
MITM 交互式劫持mitm-hijack启动 MITM 代理,实时查看/修改/转发 HTTP 流量,加载热加载 hookmitm-hotpatch
Web FuzzerhttpFuzzer单 Tab 发包调试,支持 fuzztag、热加载、序列发包、数据提取webfuzzer-hotpatch
Websocket Fuzzerwebsocket-fuzzerWebSocket 协议发包与 fuzz-
Codeccodec编解码工具,内置 base64/url/hex/hash 等 + 自定义 codec 插件yakit-rightclick-plugin
数据对比dataCompare两段数据差异对比-
Yak RunneryakScript在线编写/运行 yak 脚本,等同 IDEyaklang-syntax

3.2 安全工具

功能路由 key界面用途关联 skill
端口/指纹扫描scan-port端口扫描 + 指纹识别-
专项漏洞检测poc基于 PoC 插件批量检测yakit-native-plugin
弱口令检测brute弱口令爆破-
空间引擎space-engine空间测绘引擎搜索(Fofa/Hunter/Quake 等)-
子域名收集plugin-op(内置)调用"子域名收集"插件yakit-native-plugin
基础爬虫plugin-op(内置)调用"基础爬虫"插件yakit-native-plugin
目录扫描plugin-op(内置)调用"综合目录扫描与爆破"插件yakit-native-plugin

3.3 插件

功能路由 key界面用途关联 skill
插件仓库plugin-hub在线插件商店,一键下载安装-
批量执行batch-executor-page-ex批量执行多个插件yakit-native-plugin
插件管理plugin-audit管理已安装插件(启用/禁用/编辑/审核)-
新建插件add-yakit-script创建新插件(yak/mitm/codec 类型)yakit-native-plugin

3.4 反连

功能路由 key界面用途
DNSLogdnslogDNS 反连检测
ICMP-SizeLogicmp-sizelogICMP 回显检测
TCP-PortLogtcp-portlogTCP 端口回连检测
Yso-Java HackPayloadGenerater_NewJava 反序列化 payload 生成
反连服务器ReverseServer_New统一反连服务器管理
端口监听器shellReceiver反弹 Shell 监听

3.5 数据库(项目数据)

功能路由 key界面用途关联 skill
Historydb-http-requestMITM/Fuzzer 产生的全部历史流量yakit-data-extract-plugin
流量分析器db-http-request-analysis历史流量高级分析-
漏洞与风险db-risks扫描产出的漏洞/风险列表-
报告db-reports-results扫描报告查看-
端口db-ports端口资产列表-
域名db-domains域名资产列表-
指纹库fingerprint-manageWeb 指纹规则管理-
CVE 管理cveCVE 数据查询-
字典管理payload-managerPayload 字典管理(与 db.SavePayload 联动)yaklang-database
配置管理config-management全局配置(代理/Payload/热加载模板)global-hotpatch

3.6 AI 功能

功能路由 key界面用途
AIAgentai-agentAI 对话与自动化任务
知识库ai-repositoryAI 知识库管理
工具库ai-toolAI 工具管理
技能库ai-forgeAI 技能(Forge)管理
记忆库ai-memoryAI 记忆库

3.7 代码审计

功能路由 key界面用途
代码扫描yakrunner-code-scan基于 SyntaxFlow 规则扫描代码
代码审计yakrunner-audit-code代码审计
AI代码审计irify-ai-code-auditAI 辅助代码审计
审计漏洞yakrunner-audit-hole代码审计发现的漏洞
规则管理rule-management自定义审计规则
项目管理yakrunner-project-manager审计项目管理
Java 反编译yak-java-decompilerJava 类文件反编译

4. 引擎连接与项目切换

4.1 引擎连接

首次启动 Yakit 前端时需要连接引擎:

  1. 本地引擎:在前端"引擎连接"页面选择本地引擎,前端会自动拉起 yaklang 引擎进程。
  2. 远程引擎:输入远程引擎的 gRPC 地址(host:port),前端通过 gRPC 连接。

引擎启动入口:yaklang/common/yakgrpc/,gRPC 服务端口由引擎自动选择并通过 IPC 通知前端。 前端 gRPC 客户端封装:yakit/app/renderer/src/main/src/services/electronBridge.ts。

4.2 项目切换

Yakit 的"项目"概念对应一个独立的 project 数据库:

  • 切换项目 = 切换 project 数据库,History/Risk/Port/Domain 等数据随之隔离。
  • profile 数据库不随项目切换(插件、Payload 字典、全局配置始终共享)。
  • 在脚本中用 db.SetProjectKey / db.GetProjectKey 存取的项目级配置也随项目切换。 详见 yaklang-database。

5. 新手快速上手路径

flowchart TD
    A[安装 Yakit + 连接引擎] --> B[MITM 劫持: 配置代理, 浏览流量]
    B --> C[Web Fuzzer: 重放/修改请求]
    C --> D[Codec: 编解码/数据变换]
    D --> E[插件仓库: 下载社区插件]
    E --> F[写自己的插件: yak/mitm/codec]
    F --> G[热加载: 内联改流量]
步骤操作对应功能区
1. 连接引擎启动 Yakit → 连接本地/远程引擎引擎连接页
2. MITM 抓包打开 MITM → 设置代理 → 浏览器配置代理 → 浏览目标MITM 交互式劫持
3. 重放/修改在 History 或 MITM 中右键 → 发送到 Web FuzzerWeb Fuzzer
4. 编解码选中数据 → 右键编码/解码,或打开 Codec 页面Codec
5. 装插件打开插件仓库 → 搜索 → 安装插件仓库
6. 写插件新建插件 → 选类型(yak/mitm/codec) → 写代码 → 保存新建插件
7. 热加载MITM 配置 → 热加载窗口粘贴代码 → 启用MITM 热加载

6. 完整路由表(到各专题 skill)

需求进入 skill
MITM 代理劫持/修改请求响应mitm-hotpatch
Web Fuzzer 单 Tab 发包加解密/签名/重试webfuzzer-hotpatch
全局热加载(MITM + Fuzzer 共享)global-hotpatch
写/读懂 Yaklang 语法yaklang-syntax
数据持久化与查询yaklang-database
写带参数表单的 yak/mitm 插件yakit-native-plugin
写右键 codec 插件yakit-rightclick-plugin
从 History 提取数据驱动扫描yakit-data-extract-plugin
验证插件/热加载脚本yaklang-toolchain
yak 脚本如何与 Yakit UI 交互yakit-ui-binding

参考来源

  • 前端路由定义:yakit/app/renderer/src/main/src/routes/newRoute.tsx(YakitRouteToPageInfo / RouteToPage)
  • 前端 gRPC 流消费:yakit/app/renderer/src/main/src/hook/useHoldGRPCStream/useHoldGRPCStream.ts
  • 引擎 gRPC 服务:yaklang/common/yakgrpc/
  • 脚本引擎注入:yaklang/common/yak/yaklib/yakit_client.go(SetEngineClient 覆写 yakit 全局变量)
  • 模式枚举:yakit/app/renderer/src/main/src/store/softMode.ts(YakitModeEnum)

Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.

<a href="https://skillzs.dev/skills/yaklang/yak-skills/yakit-basic">View yakit-basic on skillZs</a>