Skip to main content

开始劫持

经过前两章节的学习,我们已经配置好了开始劫持前的准备工作。本章节开始我们开始进行劫持的学习。在开始劫持前我们先对整个劫持页面进行熟悉:

  1. 设置代理监听主机,远程模式可以修改为0.0.0.0以监听主机所有网卡。
  2. 设置代理监听端口,设置一个不被占用的端口。
  3. 开启该选项将支持 HTTP/2.0 劫持,关闭后自动降级为HTTP1.1,开启后 HTTP2 协商失败也会自动降级。
  4. 根据填写的正则规则,对符合规则的数据包进行染色、标记、替换、打tag等操作,方便用户快速筛选出目标数据包。Yakit目前提供55条默认规则,点击默认配置导入即可使用。
  5. 开启启用插件则表示,进入劫持页面就会加载在侧边栏 ⑥ 当中选择的插件以及编写插件时设置了默认启动的插件。
  6. 插件商店当中的"MITM插件" 和 "端口扫描插件"类型的插件。
  7. 插件分组:将插件按照自己的使用习惯进行分组,便于在使用插件时快速勾选自己需要的插件。插件组在整个Yakit里是共用的,只要有加载插件的地方就使用插件分组。
  8. 根据关键字或者tag快速搜索所需插件。
  9. 下拉显示已创建过的分组,并进行分组选择。
  10. 高级配置:
  11. 为劫持再设置一个代理,通常用于访问中国大陆无法访问的网站或访问特殊网络/内网,也可用于接入xray等被动扫描。
  12. 客户端TLS:导入TSL证书,用于 mTLS(Mutual TLS)开启客户端验证的 HTTPS 网站抓包。
  13. 过滤器:通过配置过滤条件,来控制只抓/不抓哪些数据包,也可以理解为劫持的“黑白名单”。
  14. 下载Yakit证书。

开始劫持#

点击劫持启动后进入到劫持界面:选择丢弃请求,则该条数据不会出现在history,提交数据则会将该数据包记录在history 并开始劫持下一个数据包。

  1. 在劫持页面的左上角的①单选框选择手动劫持,打开浏览器,输入你需要访问的URL(以https://baidu.com/ 为例)并回车,这时你将会看到数据流量经过 Yakit 并暂停,您可以查看或修改数据包。选择自动放行则会放行所有的数据包,被动日志则为劫持模块、插件加载、被动扫描的执行日志。

  2. 选择手动劫持劫持到请求以后,点击右边② 丢弃请求 则该条数据将会丢失,不在继续处理且不会出现在history中,③提交数据则会将该数据包继续传输下去并记录在history并开始劫持下一个数据包。

  3. 劫持到请求以后,在右边单选框④劫持响应处选择当前请求,则会劫持到当前请求包对应的响应数据包。选择"所有"则会劫持所有请求的响应数据包。

  4. 在整个数据包展示处,我们可以看到HTTP请求的数据进行手工的修改,数据主要包含了:请求地址、http协议版本、主机头、浏览器信息、Accept可接受的内容类型、字符集、编码方式、cookie等,点击鼠标右键可以对数据包进行更多的操作:

  1. 劫持到的所有的数据包都会存入到history中,劫持后可以在history查看感兴趣的数据包。关于History功能的详情请移步 History进行查看。