Httpx

Httpx

Httpx 是一款快速多功能的 HTTP 工具包,用于 Web 技术的探测和枚举。

简介

Httpx 是 ProjectDiscovery 开发的基于 HTTP 的探测工具,支持多种 HTTP 探测功能,包括状态码检测、技术栈识别、标题提取等。

主要特性

  • 快速探测 - 并发 HTTP 请求检测
  • 技术识别 - 识别 Web 技术栈
  • 状态码检测 - 检测 HTTP 响应状态
  • 标题提取 - 提取页面标题
  • 内容类型 - 检测 Content-Type
  • 重定向跟踪 - 跟踪 HTTP 重定向
  • JSON 输出 - 支持结构化输出
  • 多协议支持 - HTTP/HTTPS 支持

安装方式

Go 安装

go install -v github.com/projectdiscovery/httpx/cmd/httpx@latest

Docker 部署

docker run -i projectdiscovery/httpx

源码安装

git clone https://github.com/projectdiscovery/httpx.git
cd httpx/cmd/httpx
go build

常用参数

参数 描述
-u 目标 URL
-l 从文件读取目标
-title 提取页面标题
-status-code 显示状态码
-tech-detect 技术栈识别
-content-type 显示内容类型
-location 显示重定向位置
-json JSON 格式输出
-silent 静默模式
-threads 线程数
-rate-limit 速率限制
-retries 重试次数
-timeout 超时时间
-follow-redirects 跟随重定向
-method HTTP 方法

使用示例

# 探测单个目标
httpx -u https://target.com

# 从文件读取目标
httpx -l urls.txt

# 提取标题和状态码
httpx -l urls.txt -title -status-code

# 技术栈识别
httpx -u https://target.com -tech-detect

# JSON 输出
httpx -l urls.txt -json -o results.json

# 显示内容类型
httpx -l urls.txt -content-type

# 跟随重定向
httpx -l urls.txt -follow-redirects

# 多线程扫描
httpx -l urls.txt -threads 50

# 组合使用
httpx -l urls.txt -title -status-code -tech-detect -json -o output.json

输出示例

https://target.com [200 OK] [text/html] [Title: Target Website] [Tech: nginx, jquery]

渗透测试用途

  • 存活检测 - 检测 Web 服务是否存活
  • 技术栈识别 - 识别目标使用的技术
  • 状态码分析 - 分析 HTTP 响应状态
  • 信息收集 - 收集 Web 服务信息
  • 资产发现 - 发现 Web 资产

参考资源