一款全面且强大可平替xray的扫描器,支持被动主动扫描-漏洞探测
ninehua 2024-12-06 18:09 45 浏览
0x01 工具介绍
为什么称之为 Security Copilot,按照我的构想,这不仅仅是一个漏洞扫描器,还是一个集大成的辅助工具。挂上扫描器后,过一遍网站,即使没有漏洞,也要告诉我这个网站的大致信息(指纹、cdn、端口信息、敏感信息、API 路径、子域名等等),这样帮助人工进行进一步的梳理,辅助挖洞,而不是扫描完毕没洞就是完事了,还要人工重新过一遍。
0x02 功能简介
主动模式
命令执行
使用 crawlergo 爬虫实现 主动模式下可以通过指定 --copilot 来进入 Security Copilot 模式,扫描完不退出,方便查看 web 结果页面。
./Jie web -t https://public-firing-range.appspot.com/ -p xss -o vulnerability_report.html --copilot
不指定 web 的用户名密码,会自动生成一个yhy/密码,可以在日志中查看,比如下面就是自动生成的。
INFO [cmd:webscan.go(glob):55] Security Copilot web report authorized:yhy/3TxSZw8t8w
被动模式(Security Copilot)
被动代理 通过 go-mitmproxy 实现。
Security Copilot
为什么称之为 Security Copilot,按照我的构想,这不仅仅是一个漏洞扫描器,还是一个集大成的辅助工具。
挂上扫描器后,过一遍网站,即使没有漏洞,也要告诉我这个网站的大致信息(指纹、cdn、端口信息、敏感信息、API 路径、子域名等等),这样帮助人工进行进一步的梳理,辅助挖洞,而不是扫描完毕没洞就是完事了,还要人工重新过一遍。
证书下载
被动代理下HTTPS 网站需要安装证书,HTTPS 证书相关逻辑与 mitmproxy 兼容,并保存在 ~/.mitmproxy 文件夹中。
安装信任根证书, 安装步骤可参考 Python mitmproxy 文档:About Certificates。
启动
./Jie web --listen :9081 --web 9088 --user yhy --pwd 123 --debug
这样会监听 9081 端口,web 界面(SecurityCopilot)开放会在 9088 端口
浏览器指定代理 9081,或者联动 burp。
通过主动或者被动收集过来的流量插件内部会判断是否扫描过 (TODO 扫描插件是否要按某个顺序执行)
信息收集
- 网站指纹信息
- 每个网站请求的 url 收集聚合展示
- 网站域名信息: cdn/waf/cloud、解析记录
- Jwt 自动爆破 (todo 根据域名自动生成字典)
- 敏感信息
- 主动的路径扫描(bbscan 规则 ,新增了一个指纹字段,存在指纹时只会扫描对应的规则,比如 对 php 网站就不会扫描 springboot 的规则)
- 端口信息
- 收集域名、ip、api
插件
有的扫描会对比收集的指纹信息进行语言环境识别,防止对 php 的网站调用 java 的扫描插件
扫描目录结构
scan目录为扫描插件库,每个目录的插件会处理不同情形
- PerFile 针对每个url,包括参数啥的
- PerFolder 针对url的目录,会分隔目录分别访问
- PerServer 对每个domain 的,也就是说一个目标只扫描一次
插件 | 介绍 | 默认是否开启 | 作用域 |
xss | 语义分析、原型链污染、dom 污染点传播分析 | true | PerFile |
sql | 目前只实现一些简单的SQL注入检测 | true | PerFile |
sqlmap | 通过指定 sqlmap API 将流量转发到 sqlmap 进行注入检测 | false | PerFile |
ssrf | true | PerFile | |
jsonp | true | PerFile | |
cmd | 命令执行 | true | PerFile |
xxe | true | PerFile | |
fastjson | 当检测到请求为 json 时,缝合了@a1phaboy师傅的FastjsonScan扫描器,探测 fastjson; jackson 暂未实现 | true | PerFile |
bypass403 | dontgo403 403 绕过检测 | true | PerFile |
crlf | crlf注入 | true | PerFolder |
iis | iis高版本短文件名猜解[iis7.5-10.x-ShortNameFuzz]( | false | PerFolder |
nginx-alias-traversal | Nginx 配置错误导致的目录遍历nginx | true | PerFolder |
log4j | log4j 漏洞检测,目前只会测试请求头 | true | PerFolder |
bbscan | bbscan 规则 目录扫描 | true | PerFolder |
portScan | 使用 naabu 扫描 Top 1000 端口,然后使用 fingerprintx 识别服务 | false | PerServer |
brute | 如果开启服务爆破,会在扫描到端口服务后进行服务爆破 | PerServer | |
nuclei | 集成nuclei | false | PerServer |
archive | 利用 https://web.archive.org/ 进行获取历史 url 链接(参数),然后进行扫描 | true | PerServer |
poc | go 写的 poc 模块检测, poc 模块依托于指纹识别,只有识别到对应的指纹才会扫描,没有插件化了 | false | PerServer |
逻辑漏洞 TODO
添加多个用户 cookie 进行越权检测
0x03更新介绍
修复 sqlapi 配置文件指定不生效的问题
控制进度信息显示
修复 web 页面修改插件不生效的问题
更新 README 和 帮助信息; 新增 -p all 开启全部插件
update README
0x04 使用介绍
使用./Jie web -h获取详细介绍,一些配置可以通过Jie_config.yaml修改,也可以通过http://127.0.0.1:9088/的配置界面修改(web 界面修改后会实时更新到配置文件中)
Flags:
--copilot Blocking program, go to the default port 9088 to view detailed scan information.
主动模式下,可以通过指定该参数阻塞程序,扫描完不退出程序,可以到 web 端口查看信息。
-h, --help help for web
--listen string use proxy resource collector, value is proxy addr, (example: 127.0.0.1:9080).
被动模式监听的代理地址,默认 127.0.0.1:9080
--np not run plugin.
禁用所有的插件
-p, --plugin strings Vulnerable Plugin, (example: --plugin xss,csrf,sql,dir ...)
指定开启的插件,当指定 all 时开启全部插件
--poc strings specify the nuclei poc to run, separated by ','(example: test.yml,./test/*).
自定义的nuclei 漏洞模板地址
--pwd string Security Copilot web report authorized pwd.
web页面登录密码,不指定会随机生成一个密码
--show specifies whether the show the browser in headless mode.
主动扫描下是否显示浏览器
--user string Security Copilot web report authorized user, (example: yhy).]
web页面登录用户名,默认为yhy (default "yhy")
--web string Security Copilot web report port, (example: 9088)].
web页面端口,默认9088 (default "9088")
Global Flags:
--debug debug
-f, --file string target file
主动扫描目标列表,每行一个
-o, --out string output report file(eg:vulnerability_report.html)
漏洞结果报告保存地址
--proxy string proxy, (example: --proxy http://127.0.0.1:8080)
指定 http/https 代理
-t, --target string target
主动扫描目标,被动下不需要指定
与 Burp 联动
Burp 设置上游代理
这里的上游代理 Intruder 和 Repeater 模块的流量也会走扫描器
Tips:
工具介绍:https://jie.fireline.fun/
地址:https://github.com/yhy0/Jie
本文来源于yhy0 WIN哥学安全
相关推荐
- 单打独斗的产品设计师工作流程总结
-
来人人都是产品经理【起点学院】,BAT实战派产品总监手把手系统带你学产品、学运营。我从入行开始就在一个做自己产品的小公司工作,到现在已经三年了。刚开始工作的时候什么也不懂,老板说让出效果图,就开始直接...
- 毕业生必备软件!6套APP构建我的产品设计工作流
-
工欲善其事,必先利其器。思维和方法论固然超级重要,但是掌握并制定适合自己的工作流也可以成倍提升效率。好的软件加上熟练的使用可以帮助解决遇到的所有问题,不仅可以减轻大脑和身体的负担,更可以让产品设计师在...
- 如何在APP原型上写需求?(app原型设计规范)
-
你有没有过这样的经历——辛辛苦苦写了半天的文档,结果开发一眼没看,做需求的时候又把文档里的内容问了一遍?如果你也有这样的经历,那么在APP原型上写需求,或许能帮你解决这个问题。为什么要把需求直接写在...
- 产品经理工具箱|原型及交互设计工具
-
来人人都是产品经理【起点学院】,BAT实战派产品总监手把手系统带你学产品、学运营。世界上最实在最方便的原型设计及交互工具:国外的谷歌,facebook等大型互联网公司的交互工具就是上面最原始,最有效最...
- 交互设计利器汇总:实用工具大揭秘!
-
近年来,页面交互设计有了很好的发展,越来越受到人们的重视。如果你想成为一名页面交互设计师,除了对平面设计和产品设计有一定的了解外,更重要的是要知道哪个软件适合页面交互设计。本文将带您了解5款流行的页面...
- Taro - 京东凹凸实验室出品的小程序多端开发工具,内置 UI 组件库
-
可以支持转换到微信/京东/百度/支付宝/字节跳动/QQ小程序以及H5端,同时也支持使用Vue语法了。关于Taro凹凸实验室(O2Lab)来自京东零售集团,创建于2015年10月,是...
- 开发2小时,修bug2周,我用Trae做了个小程序
-
在当今快速发展的科技时代,AI技术的崛起为开发者带来了前所未有的机遇与挑战。一方面,AI极大地降低了技术门槛,让更多的创意得以快速实现;另一方面,它也提升了竞争维度,促使人们在认知、方法和时间效率上不...
- 好用的10款免费原型设计工具(免费的原型设计软件)
-
对产品经理或UI/UX设计师来说,一款好的原型设计工具至关重要。好的原型设计软件能够帮助你快速构建还原度高且信息架构清晰明了的原型图,还能极大减低工作中与同事的沟通成本,更高效地推进工作。那么,一款好...
- 用局域网内部分享Axure原型,这里有详细的步骤
-
来人人都是产品经理【起点学院】,BAT实战派产品总监手把手系统带你学产品、学运营。用axure做好原型,想分享给别人,有几个方法:生成本地文件,发送本地文件,但是文件有更新,就要重新发送用axure自...
- Axure制作App原型应该怎样设置尺寸?原型尺寸对照表!
-
最近有几位小伙伴儿都提出同样一个疑问:想用Axure设计一个APP原型放到真实的移动设备中演示,但不知道应该使用什么尺寸?若要解释清楚像素和分辨率需要的篇幅比较长,请大家参考百度百科。这里老枪搜集...
- 200套数据可视化大屏模版Axure高保真原型
-
超炫可视化大屏模版来了,Axure高保真原型。关注微信公众号“素材帮帮站”,发送消息100051,获取素材下载地址。查看往期文章,获取更多免费素材。
- Axure RP 8 Beta版正式上线(axure rp8是什么软件)
-
AxureSoftwareSolution公司于美国当地时间8月12日宣布其旗下产品AxureRP的v8版本的测试版正式上线。以下是其官方博客关于对AxureRP8Beta版的介绍:今天,...
- PM小技术:使用SAE发布在线Axure文档
-
俗话说,不会写代码的产品经理不是好的射鸡湿。关于产品经理与技术之间的微妙关系,扯开了讲可是长篇大论,比如知乎上这个问题:IT行业产品经理(尤其是创业的)需要懂技术吗?懂到什么程度?,以及这个:产品经...
- 『原型资源』Axure自带图标库不够用,第三方经典图标库来袭
-
今天小编为大家带来第三方经典图标库,己确认内容可用现推荐给大家。直接上手就可不用自己画哈~获取原型文档请与班主任联系!先睹为快,合适再拿走不谢:图标太多,截取部分给大家参考o(* ̄︶ ̄*)o免费领取资...
- Axure RP 8 测试版:将于今年夏天到来
-
我们一直在努力的开发AxureRP8。我认为这是对现有客户以及刚接触Axure的人的一个重要版本。我们希望看到你使用这些新特性,所以我们对现有客户免费升级。所有有AxureRP授权的客户包括标准...