初步探索yakit单兵作战工具

宝剑锋从磨砺出,梅花香自苦寒来。这篇文章主要讲述初步探索yakit单兵作战工具相关的知识,希望能为你提供帮助。
写在前面和大家分享一个还不错的工具Yakit,是一款单兵作战工具,burpsuite的挑战者。因为它已经具备了burpsuite中常用的功能,如history模块、repeater模块、intruder模块;并且拥有了其他作为安全工程师常用的功能,如poc验证、端口扫描、编码/解码等功能(所说的,都是我自己用到的,还有些功能没探索)。Yakiy早在Xcon大会上就和广大用户见面了,只是笔者比较菜,了解的比较晚,有兴趣的同学可以看一下这个工具


项目地址:https://github.com/yaklang/yakit


工具简单介绍使用的编写语言:Yak


YAK是国际上首个致力于网络安全底层能力融合的垂直开发语言,提供了非常强大的安全能力。


YAKIT单兵工具简介


Yakit是基于yak语言开发的网络安全单兵工具,旨在打造一个覆盖测试全流程的网络安全工具库。


简单的搞上两句,水下文字。详细的工具模块介绍在项目链接中都有介绍。后面主要说一说我自己使用的一个过程。


工具的安装和使用安装
首先需要安装yak


笔者使用的电脑是MAC,在安装yak之前需要下载libpcap外部依赖
brew install libpcap


下载并安装yak
bash < (curl -sS -L http://oss.yaklang.io/install-latest-yak.sh)


出现Finished的时候就安装成功了


接着安装yakit
下载对应mac版本的工具安装包
https://github.com/yaklang/yakit/releases/tag/v1.0.12-sp7

安装成功,打开工具的界面



手工测试使用前连接yak引擎,并最后确保是最新版本,产品开发大佬更新速度还是很给力的,可能随时更新新功能或修复已知问题

目前只使用了本地模式,默认启动一个随机端口的  yak grpc  服务器
启动权限分普通用户启动和管理员启动,之所以有管理员启动应该是为了SYN端口扫描方式。这个端口扫描功能用了一次,不过还是习惯用nmap,不过这个工具优点也是在于人性化的GUI。后续再说
启动后

连接引擎

映入眼帘的功能是MITM:中间人代理与劫持(类似于burp的proxy模块)。


MITM模块



1. 手动劫持模式
劫持代理、端口就是在我们的浏览器上需要配置的地址,使用方式和burp是一样的
下游代理,设置fq的代理,方便访问国内无法访问的地址

自动放行,记录经过该代理的流量,但不拦截,直接放行
手动劫持,拦截经过的数据包,可放行、丢弃、和劫持响应包

2. HTTP History结果代理的数据包历史



3. 插件输出,在劫持中使用的插件输出结果,这里是初次使用,还未使用插件,后续补充
4. 网站树视角,整理了所有经过的数据,进行了站点统一分类(图中站点仅作访问)

5. Web Fuzz,类似于burp的repeater模块,可以对拦截的数据包修改重放(图中站点仅作访问)

Web fuzz功能界面(图中站点仅作访问)



MITM模块基本功能介绍完毕。几乎和burp的功能相同。
踩坑
引擎DNS处理不当,DNS错误配置后会导致引擎重要功能失效;每个人的主机的dns可能会有很多个,如内网中的dns,常见的114,8.8等。
场景:首选dns是内网dns,但已离开内网后使用yakit所有域名站点经过代理后,都会返回502,原因是yakit仅使用首选dns进行解析


所以当师傅们使用过程中出现类似问题,要合理配置dns服务器地址才行
【初步探索yakit单兵作战工具】

此问题已响应到工具开发的师傅,后面应该会很快解决。
基础安全工具爆破与未授权
功能界面

通过这里可直接对11种类型进行爆破,自己试了下测试速度还是挺OK的。


扫描端口/指纹
功能模块界面

端口扫描采用SYN,使用此功能的话,在启动引擎的时候需要使用管理员权限

扫描目标可以是域名/主机/ip/ip段,扫描端口自定义。指纹识别也是这些参数。该模块可以分开扫描端口和指纹,也可同时扫描。
总结刚开始用,也就写这么多,其他功能慢慢探索,后面有时间再写一写。从界面上来看的话个人觉得比burpsuite好一些,国内写的风格还是比较对胃口的;功能的话burp上的一些常用的功能也都覆盖到了,并且也添加了一些其他常用的功能且burp上没有的;Burp上使用的一些插件这里也可以自己编写,好像还不用对前端有什么要求,具体的也还没研究,慢慢看。

    推荐阅读