漏洞概述 IDA Pro的Machine Control Protocol (MCP)在本地回环地址(`127.0.0.1:13337`)上暴露了一个未认证的JSON-RPC接口。当`py_eval`工具启用时,该接口可以执行任意Python代码。由于缺乏认证、CORS验证和浏览器来源保护,恶意网页可以通过DNS rebinding攻击实现远程代码执行(RCE)。
漏洞分析/复现
IDA PRO MCP IDA Pro MCP是一个JSON-RPC over HTTP服务,默认监听在:http://127.0.0.1:13337/mcp
DNS rebinding DNS Rebinding是一种攻击技术,利用DNS解析的时间窗口: 1初始解析:浏览器首次访问evil.com时,DNS返回攻击者控制的IP(如1.2.3.4) 2TTL过期:DNS记录的TTL(Time To Live)很短(如0秒) 3重新绑定:浏览器再次解析时,DNS返回127.0.0.1 4绕过同源策略:浏览器认为evil.com和127.0.0.1是同源的(因为域名相同)