Fiddler手机APP抓包渗透测试

Fiddler手机APP抓包渗透测试
最新回答
一个转身的距离。

2020-12-06 14:50:08

Fiddler可用于手机APP抓包进行渗透测试,通过设置代理捕获流量并分析发现漏洞,如SQL注入。 以下是具体操作流程与关键点说明:

一、环境准备与代理设置
  1. 设备要求

    手机与电脑需处于同一局域网(WiFi),或使用模拟器(如夜神、BlueStack)。

    确保Fiddler已安装并运行在电脑上。

  2. Fiddler代理配置

    打开Fiddler,进入 Tools > Options > Connections

    勾选 Allow remote computers to connect,设置代理端口(如8888)。

    重启Fiddler使配置生效。

图:Fiddler代理设置界面
  1. 手机端代理配置

    进入手机WiFi设置,选择当前网络,手动设置代理:

    服务器主机名:填写电脑的局域网IP(如192.168.1.100)。

    端口:填写Fiddler中设置的端口(如8888)。

    保存设置后,手机流量将通过Fiddler转发。

二、捕获APP流量
  1. 启动抓包

    在Fiddler界面中,所有通过代理的流量会实时显示。

    操作手机APP(如投票功能),触发目标请求(如提交投票的POST请求)。

  2. 流量分析

    在Fiddler的请求列表中,找到目标HTTP/HTTPS请求(如/index.php?c=vote&do=pc)。

    双击请求或右键选择 Inspect,查看请求详情(Headers、Body、Cookies等)。

图:Fiddler请求详情界面三、渗透测试:SQL注入漏洞发现
  1. 漏洞定位

    分析请求参数,发现u=3614参数可能存在SQL注入风险(如未过滤用户输入)。

    示例请求:

    POST /index.php?c=vote&do=pc&p=111100&group=0&id=60 HTTP/1.1Content-Type: application/x-www-form-urlencodedu=3614'
  2. 验证注入

    使用工具(如SQLMap)或手动构造恶意输入(如u=3614' OR '1'='1)。

    若返回异常或数据泄露,则确认存在SQL注入漏洞。

  3. 利用工具自动化测试

    将Fiddler捕获的请求导出为.har文件,或直接复制URL与参数。

    使用SQLMap运行命令:

    sqlmap -u "
    http://vote2..com/index.php?c=vote&do=pc&u=3614"
    --data "u=3614" --level=3 --risk=3
四、其他注意事项
  1. HTTPS流量解密

    Fiddler默认需安装证书才能解密HTTPS流量:

    电脑端:进入 Tools > Options > HTTPS,勾选 Decrypt HTTPS traffic,按提示安装证书。

    手机端:浏览器访问Fiddler代理IP与端口(如

    http://192.168.1.100:8888
    ),下载并安装Fiddler根证书。

  2. 参数分析技巧

    Cookie/Referer参数:若参数含义不明,可通过以下方式推测:

    修改参数值观察响应变化。

    对比不同用户或会话的参数差异。

    结合APP功能逻辑(如用户ID、会话令牌)。

  3. 替代工具推荐

    Sniffmaster:支持无需代理的HTTPS解密,适合快速抓包分析。

    Burp Suite:功能更强大的渗透测试工具,支持拦截、修改请求与自动化扫描。

五、总结

通过Fiddler设置代理捕获手机APP流量,可有效分析请求参数并发现漏洞(如SQL注入)。关键步骤包括:

  • 代理配置与设备连接。
  • 流量捕获与参数定位。
  • 漏洞验证与工具利用。

渗透测试需遵循法律与道德规范,仅对授权目标进行测试。