AI辅助渗透测试之如何对甲方说明API安全问题(利用HAR记录文件)

admin 2025年6月25日17:39:04评论2 views字数 1448阅读4分49秒阅读模式
最近做了些 IS Audit 项目(所以公众号文章写少了),期间少不了要做渗透测试。与本文相似的利用 AI 执行渗透测试的文章也不少,全自动连 SQL 注入都做了。但笔者本篇只聚焦在渗透测试的一个关键前期环节上:
如何找出测试对象可利用的 API 接口。
AI辅助渗透测试之如何对甲方说明API安全问题(利用HAR记录文件)
笔者:

国际注册信息系统审计师(CISA)

软考系统分析师

软件工程硕士

其实看完标题估计不少读者都知道该怎么干了,不过作为主要面向甲方的网安科普来说,笔者觉得多少都应写一下。
本文无图,因为懒得打码。
API 安全是网络安全的重灾区,OWASP 直接将其列为专门的一个项目来跟踪[1]。
渗透测试作为 IS Audit 或者等级保护测评过程必要的一环,需要尽可能简单、快速尤其是容易让甲方理解做了什么。
但有经验的读者都知道,对 API 接口的初始分析过程本身就是相当耗时耗力但也肯定绕不过而必须做的一件事,如果还要结合渗透测试向没有专业背景的甲方解释分析过程,谁都没有动力去做。
但客户的理解尤其关键!所以就要找办法把时间分配的重心转移到客户一侧,这也就是本文的目的。
HAR 即 HTTP Archive,文件内记录了通过 HTTP/HTTPS 协议实现网站访问交互过程的全部内容。产生该文件的最直接操作方式是按F12调出浏览器的开发者工具,切换到“网络”一页,然后把交互过程导出为 HAR 文件。
有条件有能力的还可以自己写程序(让 AI 写程序)自动执行交互过程和记录 HAR 文件,典型如利用 BrowserMob Proxy[2] 实现这个过程。
导出的 HAR 文件内包含有 HTTP 协议的交互过程,即 REQUEST/RESPONSE 记录,以及所有的在本次交互中双向传输的内容,HTML页面,JS文件,等等。
需要注意不同浏览器的开发者工具功能会有些许差别。比如 Chrome 内核浏览器中的筛选按钮是单选模式,这就远不如 Firefox/Gecko 内核浏览器中是多选模式方便
因为对于页面数据量大(图片多)的网站,我们自然希望在 HAR 文件内撇除和 API 分析无关的图片数据,但保留其他数据,这就只有多选模式才能满足要求。
保存的 HAR 文件是 JSON 格式,可以用支持 JSON 格式的编辑工具比如 VS Code 进行人工分析,不过这就比较傻,因为现在基本都会碰到做了压缩甚至混淆的 JavaScript 文件,人工分析在时间约束上已经完全不现实。所以,切题的做法就是找个 LLM AI 服务,然后把 HAR 文件直接提交给 AI 进行分析。
接下来就是看读者的提示词能力。不过就算只是简单地提要求,有 HAR 分析能力的 AI 都能清晰地整理和反馈在交互过程(以及在过程中获得的 JS 文件)中发现了哪些 API,本次交互调用了其中哪些 API,调用的参数和返回值是什么,以及:API 的调用过程是否存在安全隐患。
至于如何进行进一步的发掘,就看读者自己本事了,本文不作探讨。
回到笔者本文的目的,由于利用 AI 进行分析的过程等于是把分析过程可视化了(相对在人脑中生成再输出),这就非常适合向甲方说明:
你的信息系统 API 是否存在安全问题,根本就藏不住的。
[1] OWASP API Security Project

https://owasp.org/www-project-api-security/

[2] BrowserMob Proxy

https://github.com/lightbody/browsermob-proxy

注:题图为笔者自行拍摄。

~ 完 ~

点赞和转发都是免费的↓ 

原文始发于微信公众号(wavecn):AI辅助渗透测试之如何对甲方说明API安全问题(利用HAR记录文件)

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年6月25日17:39:04
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   AI辅助渗透测试之如何对甲方说明API安全问题(利用HAR记录文件)http://cn-sec.com/archives/4170615.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息