手動獲取個人郵箱
方法一:透過commits
找到作者提交的,點選箭頭位置
在出現的url後面加上.patch
https://github.com/xxxx/xxxexample/commit/4a0b0613da9ca66c61bc9e8eeebe7325c4908afeb
修改後的
https://github.com/xxxx/xxxexample/commit/4a0b0613da9ca66c61bc9e8eeebe7325c4908afeb.patch
方法二:github API介面
https://api.github.com/users/<name>/events/public
替換name為需要查詢的駭客id
https://api.github.com/users/駭客id/events/public
可查詢到作者郵箱
方法三:graphql 查詢
地址https://docs.github.com/en/graphql/overview/explorer
{ repository(name: "填入要查詢的GitHub儲存庫的名稱", owner: "填入要查詢的GitHub儲存庫的所有者的使用者名稱") { ref(qualifiedName: "master") { target { ... on Commit { id history(first: 5) { edges { node { author { name email } } } } } } } }}
- 自動化工具獲取作者資訊
Gitmails,是一款收集github儲存庫中包含的作者提交的名字和電子郵箱的工具。常用於攻防演練中的資訊收集,溯源工作。
https://github.com/giovanifss/Gitmails
安裝python依賴
python3 -m pip install -r requirements.txt
python3 -m pip install pygit2
使用方式
python3 gitmails.py -u 使用者名稱
會遍歷一些介面查詢使用者郵箱(需要kx上網)
- 為什麼查詢不到作者資訊
GitHub 提供了兩種方法來保護我們的郵箱隱私:
1、在推送時發現隱私郵箱則阻止推送;
2、使用 GitHub 專用的替代郵箱。
勾選以下兩個功能後點選儲存:
Keep my email addresses private功能(隱私地址轉換:如果發現以上列表中的郵箱地址,則會轉換為 GitHub 專用的郵箱地址)
Block command line pushes that expose my email功能(阻止推送:如果發現暴露了郵箱地址,則阻止推送。)
開啟後會給我們提供一個虛擬的郵箱號,效果如下