feat: add qq browser

pull/83/head
ᴍᴏᴏɴD4ʀᴋ 4 years ago
parent 10f523331a
commit dc8c14c538
  1. 1
      .gitignore
  2. 27
      README.md
  3. 13
      utils/utils_darwin.go
  4. 11
      utils/utils_windows.go

1
.gitignore vendored

@ -180,4 +180,5 @@ Login Data
Cookies Cookies
hack-browser-data hack-browser-data
History History
*.db

@ -20,10 +20,10 @@ go build
### 运行 ### 运行
```bash ```shell
./hack-browser-data -h ./hack-browser-data -h
NAME: NAME:
hack-browser-data - export passwords/cookies/history/bookmarks from browser hack-browser-data - Get passwords/cookies/history/bookmarks from browser
USAGE: USAGE:
[hack-browser-data -b chrome -f json -dir results -e all] [hack-browser-data -b chrome -f json -dir results -e all]
@ -39,25 +39,32 @@ GLOBAL OPTIONS:
``` ```
```shell
✗ ./hack-browser-data -b chrome -f json -dir results -e all
[x]: Get 538 bookmarks, filename is results/bookmarks_chrome.json
[x]: Get 1415 cookies, filename is results/cookies_chrome.json
[x]: Get 34050 history, filename is results/history_chrome.json
[x]: Get 357 login data, filename is results/login_data_chrome.json
```
### 目前支持平台
### 目前支持平台
| Browser | Password | Cookie | Bookmark | History | | Browser | Password | Cookie | Bookmark | History |
| :---------------------------------- | :------: | :----: | :------: | :-----: | | :---------------------------------- | :------: | :----: | :------: | :-----: |
| Chrome [Windows] | ✔ | ✔ | ✔ | ✔ | | Chrome version < 80 [Windows] | | | | |
| Chrome version > 80 [Windows] | ✔ | ✔ | ✔ | ✔ |
| Chrome [MacOS]<br />(need password) | ✔ | ✔ | ✔ | ✔ | | Chrome [MacOS]<br />(need password) | ✔ | ✔ | ✔ | ✔ |
| Edge [Windows] | ✔ | ✔ | ✔ | ✔ | | Edge [Windows] | ✔ | ✔ | ✔ | ✔ |
| Edge [MacOS]<br />(need password) | ✔ | ✔ | ✔ | ✔ | | Edge [MacOS]<br />(need password) | ✔ | ✔ | ✔ | ✔ |
| 360 Secure Browser [Windows] | ✔ | ✔ | ✔ | ✔ | | 360 Secure Browser [Windows] | ✔ | ✔ | ✔ | ✔ |
| 360 Speed Browser [Windows] | ✖ | ✖ | ✖ | ✖ | | QQ Browser [Windows] | ✔ | ✔ | ✔ | ✔ |
| FireFox [Windows] | ✖ | ✖ | ✖ | ✖ | | FireFox [Windows] | ✖ | ✖ | ✖ | ✖ |
| FireFox [MacOS] | ✖ | ✖ | ✖ | ✖ | | FireFox [MacOS] | ✖ | ✖ | ✖ | ✖ |
| Safari [MacOS] | ✖ | ✖ | ✖ | ✖ | | Safari [MacOS] | ✖ | ✖ | ✖ | ✖ |
| Internet Explorer [Windows] | ✖ | ✖ | ✖ | ✖ | | Internet Explorer [Windows] | ✖ | ✖ | ✖ | ✖ |
| QQ Browser [Windows] | ✖ | ✖ | ✖ | ✖ | | 360 Speed Browser [Windows] | ✖ | ✖ | ✖ | ✖ |
| Chrome [Linux] | ✖ | ✖ | ✖ | ✖ | | Chrome [Linux] | ✖ | ✖ | ✖ | ✖ |
@ -78,8 +85,10 @@ GLOBAL OPTIONS:
Based on those two lists, I woulf support those browser in the future Based on those two lists, I woulf support those browser in the future
- [x] Chrome - [x] Chrome
- [x] QQ browser
- [x] Edge
- [x] 360 secure browser
- [ ] 360 speed browser
- [ ] Safari - [ ] Safari
- [ ] Firefox - [ ] Firefox
- [x] Edge
- [x] 360 browser
- [ ] IE - [ ] IE

@ -14,15 +14,15 @@ import (
) )
const ( const (
chromeDir = "/Users/*/Library/Application Support/Google/Chrome/*/" chromeDir = "/Users/*/Library/Application Support/Google/Chrome/*/"
edgeDir = "/Users/*/Library/Application Support/Microsoft Edge/*/" edgeDir = "/Users/*/Library/Application Support/Microsoft Edge/*/"
mac360Secure = "/Users/*/Library/Application Support/360Chrome/*/" //mac360Secure = "/Users/*/Library/Application Support/360Chrome/*/"
) )
const ( const (
Chrome = "Chrome" Chrome = "Chrome"
Edge = "Microsoft Edge" Edge = "Microsoft Edge"
SecureBrowser = "Chromium" //Secure360 = "360"
) )
var ( var (
@ -80,7 +80,6 @@ func InitKey(key string) error {
return err return err
} }
func decryptChromeKey(chromePass []byte) { func decryptChromeKey(chromePass []byte) {
chromeKey = pbkdf2.Key(chromePass, chromeSalt, 1003, 16, sha1.New) chromeKey = pbkdf2.Key(chromePass, chromeSalt, 1003, 16, sha1.New)
} }

@ -16,10 +16,12 @@ import (
const ( const (
chromeDir = "/AppData/Local/Google/Chrome/User Data/*/" chromeDir = "/AppData/Local/Google/Chrome/User Data/*/"
chromeKeyFile = "/AppData/Local/Google/Chrome/User Data/Local State" chromeKeyFile = "/AppData/Local/Google/Chrome/User Data/Local State"
secure360Dir = "/AppData/Local/360chrome/Chrome/User Data/*/"
secure360KeyFile = ""
edgeDir = "/AppData/Local/Microsoft/Edge/User Data/*/" edgeDir = "/AppData/Local/Microsoft/Edge/User Data/*/"
edgeKeyFile = "/AppData/Local/Microsoft/Edge/User Data/Local State" edgeKeyFile = "/AppData/Local/Microsoft/Edge/User Data/Local State"
secure360Dir = "/AppData/Local/360chrome/Chrome/User Data/*/"
secure360KeyFile = ""
qqBrowserDir = "/AppData/Local/Tencent/QQBrowser/User Data/*/"
qqBrowserKeyFile = ""
) )
var ( var (
@ -41,10 +43,13 @@ var (
secure360Dir, secure360Dir,
secure360KeyFile, secure360KeyFile,
}, },
"qq": {
qqBrowserDir,
qqBrowserKeyFile,
},
} }
) )
func PickBrowser(name string) (browserDir, key string, err error) { func PickBrowser(name string) (browserDir, key string, err error) {
name = strings.ToLower(name) name = strings.ToLower(name)
if choice, ok := browserList[name]; ok { if choice, ok := browserList[name]; ok {

Loading…
Cancel
Save