无公开文档时,如何获取目标API站点的REST API方法与路由?
除了暴力枚举URI,这些实用方案能帮你更高效地获取目标API的信息:
分析前端代码与静态资源
如果该API是为自家前端服务的,直接查看前端的JS代码、HTML源码或JSON配置文件。搜索fetch、axios这类请求关键词,通常能找到硬编码的API路由、参数格式甚至完整请求示例。抓包记录真实请求
用浏览器开发者工具的Network面板,或者Charles、Wireshark这类抓包工具,模拟正常用户操作关联的前端页面,记录所有发出的API请求。这种方法能拿到真实可用的路由、参数、请求头甚至鉴权信息,比暴力枚举精准得多。查看
robots.txt文件
访问https://api.somewebsite.com/robots.txt,部分站点会在这里标注禁止爬虫抓取的API路径,反向推导就能得到有效路由列表。挖掘HTTP响应头线索
部分API服务器会在响应头里暴露关键信息:比如Allow头会返回当前路径支持的HTTP方法(GET/POST/PUT等);Link头可能关联其他关联API端点;甚至403/404错误页面的提示文本,也可能包含有效路径的线索。测试通用API命名规范
很多API遵循RESTful或行业通用命名规则,比如/v1/users、/products/{id}、/search?q=keyword,优先测试这类符合规范的路径,比盲目枚举效率更高。排查关联子域名与服务
目标API可能存在版本化子域名(如v2.api.somewebsite.com),或者关联的管理后台、移动端API接口,这些服务的请求结构往往和主API一致,能提供参考方向。
内容的提问来源于stack exchange,提问作者danyalutsevich

