如何使用Hetty对HTTP进行安全研究审计
字数 1631 2025-08-15 21:32:58
Hetty HTTP安全研究审计工具使用指南
一、Hetty工具概述
Hetty是一款针对安全研究设计的HTTP工具套件,旨在成为商业软件(如BurpSuite Pro)的开源替代产品。该工具专为信息安全研究人员和漏洞猎人社区定制开发,具有以下核心功能:
- 中间人攻击功能,提供包含日志记录的HTTP/1.1代理
- 基于项目的数据库存储(SQLite)
- Scope支持功能
- 使用GraphQL实现的管理API
- 嵌入式Web接口(js)
当前状态:Hetty仍处于前期开发阶段,后续版本将添加更多功能。
二、安装方法
1. 预构建版本安装(推荐)
访问项目Releases页面下载对应操作系统版本(支持Linux、macOS和Windows)。
2. 从源码构建
依赖组件:
- Go编程语言
- Yarn包管理器
- rice资源嵌入工具
构建步骤:
$ git clone git@github.com:dstotijn/hetty.git
$ cd hetty
$ make build
注意事项:
- Hetty依赖SQLite(mattn/go-sqlite3),需要cgo进行编译
- 管理员面板(Next.js)的静态资源需要通过Yarn生成
- 使用go.rice将资源嵌入到.go文件中
3. Docker安装
基本命令:
$ docker run -p 8080:8080 dstotijn/hetty
持久化存储配置:
$ mkdir -p $HOME/.hetty
$ docker run -v $HOME/.hetty:/root/.hetty -p 8080:8080 dstotijn/hetty
三、基本使用
1. 启动工具
$ hetty
默认监听8080端口,可通过http://localhost:8080访问。
2. 命令行参数
| 参数 | 描述 | 默认值 |
|---|---|---|
-addr |
监听地址,格式"host:port" | ":8080" |
-adminPath |
管理界面构建文件路径 | - |
-cert |
CA证书文件路径 | "~/.hetty/hetty_cert.pem" |
-key |
CA私钥文件路径 | "~/.hetty/hetty_key.pem" |
-projects |
项目目录路径 | "~/.hetty/projects" |
3. 存储位置
默认配置下,项目数据库和CA证书存储在用户主目录的.hetty目录中:
- Linux/macOS:
$HOME/.hetty - Windows:
%USERPROFILE%\.hetty
四、证书配置
1. 证书生成方法
方法一:使用Hetty自动生成
首次运行Hetty时会自动生成:
$ hetty
生成文件:
~/.hetty/hetty_key.pem(私钥)~/.hetty/hetty_cert.pem(证书)
方法二:使用OpenSSL生成
$ mkdir ~/.hetty
$ openssl req -newkey rsa:2048 -new -nodes -x509 -days 31 \
-keyout ~/.hetty/hetty_key.pem \
-out ~/.hetty/hetty_cert.pem
此方法生成的证书31天后过期。
2. 指定自定义证书
$ hetty -key key.pem -cert cert.pem
3. 信任CA证书
Ubuntu系统:
$ sudo cp ~/.hetty/hetty_cert.pem /usr/local/share/ca-certificates/hetty.crt
$ sudo update-ca-certificates
Windows系统:
运行证书管理器:
certmgr.msc
macOS系统:
使用钥匙串访问程序:
Application/Utilities/Keychain Access.app
五、功能详解
1. 代理功能
- 作为中间人(MITM)代理运行
- 完整记录HTTP/1.1流量
- 支持HTTPS流量拦截(需安装CA证书)
2. 项目管理
- 基于SQLite的数据库存储
- 项目隔离机制
- 支持Scope定义
3. 管理接口
- 基于GraphQL的API
- 嵌入式Web管理界面
- 通过http://localhost:8080访问
六、高级配置
1. 自定义监听地址
$ hetty -addr "0.0.0.0:9090"
2. 指定项目存储位置
$ hetty -projects "/path/to/projects/directory"
3. 自定义管理界面路径
$ hetty -adminPath "/path/to/admin/build"
七、注意事项
- 开发状态:当前版本为早期开发阶段,功能可能不完整
- HTTPS拦截:必须正确安装CA证书才能拦截HTTPS流量
- 证书信任:浏览器可能需要单独信任安装的CA证书
- 数据持久化:使用Docker时需挂载卷以持久化数据
八、项目资源
- GitHub仓库: https://github.com/dstotijn/hetty
- 许可证: MIT开源许可证
通过本指南,您应该能够全面了解Hetty的安装、配置和使用方法,开始您的HTTP安全研究审计工作。随着项目的发展,建议关注GitHub仓库以获取最新功能和更新。