使用一条命令扫描CORS漏洞

使用一条命令扫描CORS漏洞

命令

使用前请安装如下程序,kali中请指定httpx位置(例如:/root/Desktop/httpx)。

assetfinder
httpx
rush
assetfinder fitbit.com  | httpx -threads 300 -follow-redirects -silent | rush -j200 'curl -m5 -s -I -H "Origin: evil.com" {} | [[ $(grep -c "evil.com") -gt 0 ]] && printf "\n\033[0;32m[VUL TO CORS] \033[0m{}"' 2>/dev/null

这个命令的目的是:

  1. 查找 fitbit.com 及其子域名。
  2. 使用 httpx 检查这些子域名是否存活。
  3. 对每个存活的子域名执行一个带有伪造 Origin 请求头的 curl 请求,检查是否存在 CORS 漏洞。
  4. 如果发现 CORS 漏洞,输出相关子域名并标记为易受 CORS 攻击。

截图

使用一条命令扫描CORS漏洞

参数解释

1. assetfinder fitbit.com

  • assetfinder 是一个工具,用于查找与指定域名(在这里是 fitbit.com)相关的子域名。它通过各种公开数据源来发现这些子域名。
  • 这部分命令会列出 fitbit.com 及其子域名。

2. httpx -threads 300 -follow-redirects -silent

  • httpx 是一个快速的HTTP检查工具,通常用于检查目标的存活状态。
  • -threads 300 指定使用300个线程进行并行处理,提高速度。
  • -follow-redirects 允许工具自动跟踪 HTTP 重定向。
  • -silent 表示静默模式,不显示额外的输出信息。
  • 这部分命令将所有从 assetfinder 得到的 URL 输入 httpx,并检查它们的可达性。

3. rush -j200

  • rush 是一个并行任务处理工具,它能通过并行执行任务来加速处理。
  • -j200 指定最多并行执行200个任务。

4. 'curl -m5 -s -I -H "Origin: evil.com" {} | [[ $(grep -c "evil.com") -gt 0 ]] && printf "\n\033[0;32m[VUL TO CORS] \033[0m{}"'

  • 对每个 URL,rush 会运行一个 curl 请求。
    • -m5 表示设置最大超时为5秒。
    • -s 表示静默模式,不显示进度条和错误信息。
    • -I 表示仅请求响应头。
    • -H "Origin: evil.com":此请求头设置了一个伪造的 Origin,即一个不同于目标网站的来源地址(这里是 evil.com)。
  • grep -c "evil.com" 会检查响应头中是否包含来自 evil.com 的内容。如果响应头中有该来源地址,说明目标站点可能存在 CORS 漏洞。
  • 如果找到匹配项(即网站允许跨域访问 evil.com),则会输出:bash复制代码[VUL TO CORS] <URL> 其中 <URL> 是发现漏洞的目标网站的地址。

5. 2>/dev/null

  • 将错误输出重定向到 /dev/null,也就是说,如果命令执行过程中发生任何错误,这些错误信息将被忽略。
https://twitter.com/Mr_Dark55/status/1874072824278831385

转载请注明出处及链接

Leave a Reply

您的邮箱地址不会被公开。 必填项已用 * 标注