APIFinderPlus:JS响应信息提取工具内测

admin 2024年9月21日22:44:59评论136 views字数 1844阅读6分8秒阅读模式
0x00 前言
虽然很久没有发文章了,但是NOVASEC还在。
APIFinderPlus:JS响应信息提取工具内测
我的实战记录没什么好写的,日常就是就是
寻找脆弱点|弱口令上传RCE|捡到源码审计RCE->嘻嘻没有弱口令|马被杀了|服务器关了|管理员跑了—>不嘻嘻
没有啥特殊的技巧,不像大家的那么跌宕起伏。
APIFinderPlus:JS响应信息提取工具内测
所以聊聊其他的。
0x01 JS信息提取
JS信息提取一直是个前台信息搜集中的不可避免的话题,主要提取的数据有两个方面:
1、敏感的信息
2、URL|URI路径
我比较习惯使用@Key大佬的HAE插件进行敏感信息的提取,并且HAE的URL|URI提取规则,目前也非常完善。
https://github.com/gh0stkey/HaE
缺点就是HAE提取的路径还需要自己拼接进行测试,比较繁琐。
其他的路径提取工具要么就是只进行PATH提取功能、要么就是拼接方式过于粗糙(笛卡尔积)拼接。
因此,一直想编写一个程序,用于获取响应中的URI和URL、然后能够自动化的判断PATH的前缀,尽可能减少FUZZ请求的数量,但由于时间精力的问题一直没有落地。
这次@shaun大佬编写了一个BurpAPIFinder插件,使用的是定时任务的处理方式,这个方式在某个方面让我觉得很适合动态的URL分析。然后一直在开发过程中提供一些功能建议。
https://github.com/shuanx/BurpAPIFinder
但是由于逻辑设计想法上的差异,导致一直没有达到我想要的完美效果,最终选择借鉴BurpAPIfinder的UI和规则配置方案重新进行功能开发。
由于借鉴了APIFinder的处理逻辑,所以我把这个项目命名为【APIFinderPlus】以示尊敬。
0x02 设计方案

APIFinderPlus:JS响应信息提取工具内测

定时任务线程:- 查询数据库 ReqDataTable 表  - 是否存在未分析的 消息    - 根据规则配置 匹配 提取 请求|响应中的敏感信息和URL、PATH      - 分析结果存入数据库 AnalyseUrlResultTable 表- 查询数据库AnalyseUrlResultTable 表    - 将 AnalyseUrlResultTable 表中的新结果按照RootUrl分类 插入到 AnalyseHostResultTable 表- autoPathsToUrlsIsOpen 开启自动基于路径计算URL功能 (默认关闭、支持手动)  - 查询数据库  RecordPathTable    - 检查是否存在没有加入到 网站路径树 的有效请求PATH      - 根据已记录的URL路径计算/更新Pathree        - 分析结果存入 PathTree 表  - 查询数据库 联合分析 PathTreeTable 和 AnalyseHostResultTable 表    - 检查是否存在已经更新的PathTree 但是还没有重新计算过PATH URL的数据      - 根据已更新的Pathree计算新的PATH可能的前缀        - 分析结果存入  AnalyseHostResultTable 的 PATH计算URL - autoRecursiveIsOpen 开启自动访问未访问的URL  - 查询数据库 AnalyseHostResultTable 表    - 判断是否URL是否都已经被访问      - 对未访问URL构造HTTP请求
这里面有两个术语:
RootUrl 根URL 网站的协议://Host:Port部分PathTree 路径树 用于记录每个网站的目录信息。
0x03 插件效果
目标是做一个比较全面的API挖掘工具、减少手动拼接path的提取测试、补充无法自动处理的操作。
1、支持 自动提取响应信息中的敏感信息、URL、URI信息.2、支持 自动基于已知路径信息计算提取 PATH 对应的可能URL.3、支持 自动访问挖掘出来的 URL 进行递归式的信息提取.4、支持 对webpack的js的简单格式的拼接提取(限制格式,但准确度高)5、支持 配置自动请求URL时的方法和请求体参数.

APIFinderPlus:JS响应信息提取工具内测

支持简单webpack格式示例
目前暂时无法实现的TODO:
1、实现webpack.js的自动解析.2、将插件独立剥离为被动监听插件.
目前程序存在的缺陷:由于使用了高频率的定时任务进行PathTree更新、未访问URL检查、自动URL刷新,导致这些功能的全自动开启对PC的性能有一定要求。
0x04 总结
生活忙碌,经过好几个月断断续续的开发和内测,程序已经基本完善。
最终效果和想象的还是有亿点差异,想的是开启扫描就打穿,实际是扫描完成也不一定有结果,只能作为捡漏工具。
 

原文始发于微信公众号(NOVASEC):APIFinderPlus:JS响应信息提取工具内测

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年9月21日22:44:59
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   APIFinderPlus:JS响应信息提取工具内测https://cn-sec.com/archives/3186260.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息