Github数据泄露事件处置常见技巧

手动获取个人邮箱

方法一:通过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功能(阻止推送:如果发现暴露了邮箱地址,则阻止推送。)

开启后会给我们提供一个虚拟的邮箱号,效果如下   

 

posted @ 2024-09-14 12:33  魔都安全札记  阅读(23)  评论(0编辑  收藏  举报