【API渗透测试】第一步:侦查
2023-11-24 11:40:25 0 举报
AI智能生成
登录查看完整内容
在API渗透测试的侦查阶段,我们将首先对目标系统进行详细的分析和了解。这包括收集目标系统的公开信息,如域名、IP地址、开放端口等。同时,我们也会尝试找到可能存在的安全漏洞,如过时的软件版本、不安全的网络协议等。此外,我们还会研究目标系统的API接口,了解其工作原理和可能的安全风险。这一阶段的目标是建立对目标系统的全面认识,为后续的渗透测试打下坚实的基础。
作者其他创作
大纲/内容
e.g: /api/{{products}}/122/edit
资源枚举
e.g: enumerate object identifiers: /api/users/{{1}}/edit
对象枚举
RESTful API 枚举
在此阶段,您应该更多地关注响应标头、响应长度和应用程序的行为
https://github.com/swisskyrepo/PayloadsAllTheThings
PayloadAllTheThings
我们这样做的目的是检索可以在数据库中运行的每个查询及其参数
枚举自省查询
https://graphql-kit.com/graphql-voyager/
GraphQL Voyager
它将向我们展示 GraphQL 的可视化表示,这使得我们能够深入而准确地分析 GraphQL
可视化表示工具
GraphQL API 枚举
用于接口和内容发现的 API 扫描器。
https://github.com/assetnote/kiterunner
Kiterunner
从 URL 列表中提取路径,这将有助于生成自定义单词列表阶段
https://github.com/tomnomnom/unfurl
unfurl
工具
枚举
V1
V2
V3
……
API版本
开源产品
自定义接口
API实现方式
RESTful [Most common]
SOAP [Very rare]
GraphQL [Newcomer]
API 类型
WADL for RESTful API
WSDL for SOAP API
非公开访问
API接口文档开放访问,类似开源项目
公开访问
API文档
GET
POST
PATCH
PUT
DELETE
API接口请求方式
WADL
WSDL
通过非公开接口文档发现入口
需要身份验证和其他可公开访问的端点
基于Cookies (不规范)
基于Header (规范)
认证/授权方式
JWT (JSON Web Token)
Encrypted value
Arbitrary value to save the user's state
Encoded Serialized value
Encrypted Serialized value
Hashed user value
身份识别功能
认证&授权
发现隐藏的功能、请求方式或者接口
比较公开文档和非公开文档
入口
功能
请求方式
对象
API Fuzzing
梳理API接口的请求、响应和请求头
确认每个接口的功能(每个接口的功能都是不一样的)
功能梳理
Swagger API
自定义的接口
API可视化工具/接口发现
侦查
导入API环境、文档和集合
将 BurpSuite 代理与 Postman 链接
激活API环境
发现身份验证系统、服务头和请求参数正文
OTP
login
识别身份验证的点
分析 JS 代码,例如“测试”选项卡中的 JSON
Postman
最初导入 WADL / WSDL 文件或使用应用程序的 URL
利用端点资源管理器分析端点行为
SoapUI
拦截并监控每个请求/响应
在 API 上运行内容发现,寻找其他端点、操作和对象
分析请求和响应标头和参数
修改请求头并监控服务器对操作的响应
运行 JavaScript 扫描,分析 JavaScript 文件,以了解 API 基础架构
BurpSuite
Endpoints
Objects
Methods
Actions
Fuzzing 点
将其与 Burp 链接以扩展站点地图范围
FFUF
BurpSuite Intruder
将其与 Burp 链接以扩展端点参数范围(因目标而异)
分析 arjun 输出以检查可能存在漏洞的参数
Arjun
Tools
Fuzzing
https://github.com/danielmiessler/SecLists
SecLists
https://github.com/fuzzdb-project/fuzzdb
FuzzDB
Using wayback machine
Using the API docs
e.g: JavaScript
Source Code Reviewing
Organization's github repository if exists
The source code of API product - if it was open source -
生成自定义单词列表
Wordlists
工具化(自动化)
API渗透-侦查
0 条评论
回复 删除
下一页