You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
404StarLink/detail/HackBrowserData.md

223 lines
9.5 KiB

## HackBrowserData <https://github.com/moonD4rk/HackBrowserData>
<!--auto_detail_badge_begin_0b490ffb61b26b45de3ea5d7dd8a582e-->
![Language](https://img.shields.io/badge/Language-Golang-blue)
![Author](https://img.shields.io/badge/Author-moonD4rk-orange)
![GitHub stars](https://img.shields.io/github/stars/moonD4rk/HackBrowserData.svg?style=flat&logo=github)
![Version](https://img.shields.io/badge/Version-V0.4.4-red)
![Time](https://img.shields.io/badge/Join-20201221-green)
<!--auto_detail_badge_end_fef74f2d7ea73fcc43ff78e05b1e7451-->
<div align="center">
<img src="https://github.com/moonD4rk/HackBrowserData/raw/master/LOGO.svg" alt="hack-browser-data logo" />
</div>
`HackBrowserData` 是一个浏览器数据(密码|历史记录|Cookie|书签|信用卡|下载记录|localStorage|浏览器插件)的导出工具,支持全平台主流浏览器。
> 免责声明:此工具仅限于安全研究,用户承担因使用此工具而导致的所有法律和相关责任!作者不承担任何法律责任!
## 各平台浏览器支持情况
### Windows
| 浏览器 | 密码 | Cookie | 书签 | 历史记录 |
| :------- | :------: | :----: | :------: | :-----: |
| Google Chrome| ✅ | ✅ | ✅ | ✅ |
| Google Chrome Beta| ✅ | ✅ | ✅ | ✅ |
| Chromium | ✅ | ✅ | ✅ | ✅ |
| Microsoft Edge| ✅ | ✅ | ✅ | ✅ |
| 360 极速浏览器 | ✅ | ✅ | ✅ | ✅ |
| QQ | ✅ | ✅ | ✅ | ✅ |
| Brave | ✅ | ✅ | ✅ | ✅ |
| Opera | ✅ | ✅ | ✅ | ✅ |
| OperaGX | ✅ | ✅ | ✅ | ✅ |
| Vivaldi | ✅ | ✅ | ✅ | ✅ |
| Yandex | ✅ | ✅ | ✅ | ✅ |
| CocCoc | ✅ | ✅ | ✅ | ✅ |
| Firefox | ✅ | ✅ | ✅ | ✅ |
| Firefox Beta | ✅ | ✅ | ✅ | ✅ |
| Firefox Dev | ✅ | ✅ | ✅ | ✅ |
| Firefox ESR | ✅ | ✅ | ✅ | ✅ |
| Firefox Nightly | ✅ | ✅ | ✅ | ✅ |
| IE 浏览器 | ❌ | ❌ | ❌ | ❌ |
### MacOS
由于 MacOS 的安全性设置,基于 `Chromium` 内核浏览器解密时**需要当前用户密码**
| 浏览器 | 密码 | Cookie | 书签 | 历史记录 |
| :--- | :------: | :----: | :------: | :-----: |
| Google Chrome | ✅ | ✅ | ✅ | ✅ |
| Google Chrome Beta | ✅ | ✅ | ✅ | ✅ |
| Chromium | ✅ | ✅ | ✅ | ✅ |
| Microsoft Edge | ✅ | ✅ | ✅ | ✅ |
| Brave | ✅ | ✅ | ✅ | ✅ |
| Opera | ✅ | ✅ | ✅ | ✅ |
| OperaGX | ✅ | ✅ | ✅ | ✅ |
| Vivaldi | ✅ | ✅ | ✅ | ✅ |
| Yandex | ✅ | ✅ | ✅ | ✅ |
| CocCoc | ✅ | ✅ | ✅ | ✅ |
| Firefox | ✅ | ✅ | ✅ | ✅ |
| Firefox Beta | ✅ | ✅ | ✅ | ✅ |
| Firefox Dev | ✅ | ✅ | ✅ | ✅ |
| Firefox ESR | ✅ | ✅ | ✅ | ✅ |
| Firefox Nightly | ✅ | ✅ | ✅ | ✅ |
| Safari | ❌ | ❌ | ❌ | ❌|
### Linux
| 浏览器 | 密码 | Cookie | 书签 | 历史记录 |
| :----- | :------: | :----: | :------: | :-----: |
| Google Chrome | ✅ | ✅ | ✅ | ✅ |
| Google Chrome Beta | ✅ | ✅ | ✅ | ✅ |
| Chromium | ✅ | ✅ | ✅ | ✅ |
| Microsoft Edge | ✅ | ✅ | ✅ | ✅ |
| Brave | ✅ | ✅ | ✅ | ✅ |
| Opera | ✅ | ✅ | ✅ | ✅ |
| Vivaldi | ✅ | ✅ | ✅ | ✅ |
| Chromium | ✅ | ✅ | ✅ | ✅ |
| Firefox | ✅ | ✅ | ✅ | ✅ |
| Firefox Beta | ✅ | ✅ | ✅ | ✅ |
| Firefox Dev | ✅ | ✅ | ✅ | ✅ |
| Firefox ESR | ✅ | ✅ | ✅ | ✅ |
| Firefox Nightly | ✅ | ✅ | ✅ | ✅ |
## 安装运行
### 安装
可下载已编译好,可直接运行的 [二进制文件](https://github.com/moonD4rk/HackBrowserData/releases)
> 某些情况下,这款安全工具会被 Windows Defender 或其他杀毒软件当作病毒导致无法执行。代码已经全部开源,可自行编译。
### 从源码编译
仅支持 `go 1.18+` 以后版本,一些函数使用到了泛型
``` bash
$ git clone https://github.com/moonD4rk/HackBrowserData
$ cd HackBrowserData/cmd/hack-browser-data
$ CGO_ENABLED=1 go build
```
### 跨平台编译
由于用到了 `go-sqlite3` 库,在跨平台编译时需提前安装支持目标平台的 `GCC` 工具,下面以 `MacOS` 下分别编译 `Windows` 和 `Linux` 程序为例:
#### Windows
``` shell
brew install mingw-w64
CGO_ENABLED=1 GOOS=windows GOARCH=amd64 CC=x86_64-w64-mingw32-gcc go build
```
#### Linux
``` shell
brew install FiloSottile/musl-cross/musl-cross
CC=x86_64-linux-musl-gcc CXX=x86_64-linux-musl-g++ GOARCH=amd64 GOOS=linux CGO_ENABLED=1 go build -ldflags "-linkmode external -extldflags -static"
```
### 运行
双击直接运行,也可以使用命令行调用相应的命令。
```
PS C:\test> .\hack-browser-data.exe -h
NAME:
hack-browser-data - Export passwords/cookies/history/bookmarks from browser
USAGE:
[hack-browser-data -b chrome -f json -dir results -cc]
Export all browingdata(password/cookie/history/bookmark) from browser
Github Link: https://github.com/moonD4rk/HackBrowserData
VERSION:
0.4.2
GLOBAL OPTIONS:
--verbose, --vv verbose (default: false)
--compress, --zip compress result to zip (default: false)
--browser value, -b value available browsers: all|chrome|opera-gx|vivaldi|coccoc|brave|edge|chromium|chrome-beta|opera|yandex|firefox (default: "all")
--results-dir value, --dir value export dir (default: "results")
--format value, -f value file name csv|json (default: "csv")
--profile-path value, -p value custom profile dir path, get with chrome://version
--help, -h show help (default: false)
--version, -v print the version (default: false)
PS C:\test> .\hack-browser-data.exe -b all -f json --dir results -zip
[NOTICE] [browser.go:46,pickChromium] find browser Chrome success
[NOTICE] [browser.go:46,pickChromium] find browser Microsoft Edge success
[NOTICE] [browsingdata.go:59,Output] output to file results/microsoft_edge_download.json success
[NOTICE] [browsingdata.go:59,Output] output to file results/microsoft_edge_password.json success
[NOTICE] [browsingdata.go:59,Output] output to file results/microsoft_edge_creditcard.json success
[NOTICE] [browsingdata.go:59,Output] output to file results/microsoft_edge_bookmark.json success
[NOTICE] [browsingdata.go:59,Output] output to file results/microsoft_edge_cookie.json success
[NOTICE] [browsingdata.go:59,Output] output to file results/microsoft_edge_history.json success
[NOTICE] [browsingdata.go:59,Output] output to file results/chrome_history.json success
[NOTICE] [browsingdata.go:59,Output] output to file results/chrome_download.json success
[NOTICE] [browsingdata.go:59,Output] output to file results/chrome_password.json success
[NOTICE] [browsingdata.go:59,Output] output to file results/chrome_creditcard.json success
[NOTICE] [browsingdata.go:59,Output] output to file results/chrome_bookmark.json success
[NOTICE] [browsingdata.go:59,Output] output to file results/chrome_cookie.json success
```
### 基于此工具的一些其他项目
[Sharp-HackBrowserData](https://github.com/S3cur3Th1sSh1t/Sharp-HackBrowserData)
[Reflective-HackBrowserData](https://github.com/idiotc4t/Reflective-HackBrowserData)
<!--auto_detail_active_begin_e1c6fb434b6f0baf6912c7a1934f772b-->
## 项目相关
- 2022-09-08 发布演示视频[404星链计划开源安全工具演示——HackBrowserData](https://www.bilibili.com/video/BV1eU4y1z7si)
## 最近更新
#### [v0.4.4] - 2022-08-16
**更新**
- 修复 chrome 在 windows 上获取 cookie 内容失败的问题
- 在 CI 中添加了更多检查
- 优化 golangci-lint 代码
- 修复压缩结果时无法访问文件的问题
#### [v0.4.3] - 2022-06-05
**更新**
- 新增支持从浏览器导出多个用户
- 修复当过滤结果为空并导出到 csv 时,对其进行 utf8 编码
- 修复 Windows 下 Chrome 和 OperaGx 的配置文件夹
- 修复拼写错误
#### [v0.4.2] - 2022-05-01
**更新**
- 新增导出扩展
- 新增设置控制台 log 日志的色彩
- 文档添加 HackBrowserData 的 logo
#### [v0.4.1] - 2022-04-20
**更新**
- 支持所有浏览器导出 local storage
- 修复 firefox ans1 数据结构
- 修复 windows 平台上 chromium 密钥查找失败的问题
#### [v0.4.0] - 2022-04-18
**更新**
- 支持 Go 1.18 泛型,重构项目布局
- 添加对所有已发布的 Firefox 的支持
- 为命令行日志添加颜色输出
- 某些 Linux 发行版的 chromium 现可不使用 D-Bus 获取主密钥
- 修复 Chromium cookie 文件路径错误
- Windows 下解密 Chromium 密码时增加 AES 块大小检查
- 修复 Windows 导出信用卡失败
<!--auto_detail_active_end_f9cf7911015e9913b7e691a7a5878527-->