Skip to main content

证书安装和免配置启动

要在渗透测试中使用Yakit 的 MITM劫持,您可以:

  • 使用免配置模式。不需要任何其他配置,只需安装Chrome 浏览器,免配置启动之后将打开一个新的浏览器会话,其中所有流量都将通过 Yakit 自动代理。无需安装 Yakit 的 CA 证书就可以使用它来通过 HTTPS 进行测试。
  • 使用您选择的外部浏览器。由于各种原因,您可能不想使用免配置的代理的浏览器。在这种情况下,您需要执行一些其他步骤来配置浏览器以与 Yakit的 MITM 一起使用,并在浏览器中安装 Yakit 的 CA 证书。

免配置模式#

点击手工测试--MITM交互式劫持即可进入MITM劫持页面,点击免配置启动进入免配置启动设置界面。

配置代理处默认为:http://127.0.0.1:8083 默认配置代理无需修改,点击启动免配置Chrome 默认启动谷歌浏览器,即开始劫持抓包,点击图中④的免配置启动即可关闭代理。

安装证书启动MITM劫持#

在上一章节中我们介绍了 MITM 技术。

而HTTPS协议是一种安全的HTTP协议,通过SSL/TLS协议来实现通信的加密和身份验证,可以有效地防止MITM攻击。

然而,虽然HTTPS协议可以保证通信的安全性,但在使用代理服务器等中间设备时,也会存在MITM攻击的风险。

这是因为代理服务器需要对HTTPS连接进行解密和再加密,从而中断原本的端到端加密,攻击者就有可能利用这个中断点进行MITM攻击。

为了解决这个问题,HTTPS协议中引入了一种称为证书锁定(Certificate Pinning)的机制。通过证书锁定,客户端可以预先保存目标服务器的SSL证书信息,并在与服务器通信时,检查服务器返回的证书是否与预期一致,从而避免代理服务器进行恶意的证书篡改和中间人攻击。

因此,为了实现中间人的角色,代理服务器需要自己生成一个SSL证书,并将其安装在客户端上,让客户端相信这个证书是有效的。

这个证书需要被客户端所信任,否则客户端会出现警告提示,这就需要在客户端上安装代理服务器生成的证书并进行信任设置。

因此基于HTTPS协议这些特性,我们在使用代理时,需要安装Yakit CA 证书,才能拦截HTTPS的消息。

CA证书的安装#

关于证书的安装(以windows为例),主要有以下步骤:

  1. 首先,需要我们根据图中所示配置好代理的监听端口和浏览器的代理服务器设置,然后点击③高级配置并下载证书。

    注:关于浏览器的代理服务器设置的详细内容将在下一章节(代理和浏览器配置)中进行介绍。

  1. 点击下图所示的证书下载,或者在设置代理后访问:http://download-mitm-cert.yaklang.io 进行下载,另存为到本地目录。

  1. 修改下载证书的后缀,去掉“.pem”,双击进行安装,证书存储选择 '受信任的根证书颁发机构'

拓展知识:CRT和PEM是两种常见的数字证书格式,用于加密和验证通信过程中的数据安全。CRT是一个X.509证书文件格式,PEM是一种可打印的证书文件格式,可以包含多种类型的加密和公钥证书。PEM格式通常使用base64编码,并且以“-----BEGIN CERTIFICATE-----”和“-----END CERTIFICATE-----”之间的文本块包含证书数据。PEM格式还可以用于存储密钥、证书请求和其他类型的加密数据。CRT格式是一种二进制格式,包含用于验证数字证书有效性的公钥、证书持有者的信息以及证书签名。CRT格式通常用于安装数字证书到Web服务器或其他应用程序中。在实践中,PEM格式比CRT格式更为常见,因为PEM格式的文件可以轻松地通过文本编辑器进行查看和编辑,并且PEM格式也可以包含多种类型的加密和公钥证书。不过,在某些情况下,例如在安装数字证书到Web服务器上时,CRT格式可能更为方便。

至此,我们已经完成Yakit-MITM证书的安装,在Yakit中可以对HTTPS请求进行抓包。

CA证书的卸载#

要删除证书,有两种方式:

  • 第一种方式:以谷歌浏览器为例:打开谷歌浏览器→打开右上角更多选项卡→设置隐私设置和安全性管理设备证书受信任的根证书颁发机构 选择证书然后点击删除

  • 第二种方式:第二种删除方式,主要是为了解决在第一种方式的基础上删除按钮失效或者证书列表中其他的证书误删除的方法。
  1. 打开cmd→输入mmc→点击文件菜单,选择添加/删除管理单元→如下图找到证书,点击添加

  1. 在弹出的对话框中默认选中我当前的用户,点击完成,结束后,会在控制台跟节点下多了一个证书-当前用户的节点,打开Yakit CA证书所在的位置,选择删除即可