当前位置: 首页 > news >正文

推荐两款github敏感信息搜集工具(gsil、gshark)

推荐两款github敏感信息搜集工具(gsil、gshark) - 云+社区 - 腾讯云 (tencent.com)

github敏感信息泄露是很多企业时常忽视的一个问题,国外有一份研究报告显示,在超过24,000份的GitHub公开数据中,发现有数千个文件中可能包含敏感信息,原文链接https://www.anquanke.com/post/id/198361,整体情况如下:

翻译过来便是:

  • 4109个配置文件
  • 2464个API密钥
  • 2328个硬编码的用户名及密码
  • 2144个私钥文件
  • 1089个OAuth令牌

总体占比高达50.56%,想想这有多可怕吧

所以我们能在第一时间发现自己企业泄露了哪些信息或者获取别人énénén······是很有必要的,这时你就需要下面两个神器啦

1、gsil

介绍:此工具主要用于GitHub敏感信息泄露的监控,可实现邮件实时告警,缺点不是可视化

所需环境:

  • Python2、3皆可,笔者用的是Python3
  • gsil项目:https://github.com/FeeiCN/GSIL
  • 开启POP3/SMTP服务的邮箱
  • 一个github账号token,获取地址:https://github.com/settings/tokens

项目安装:

建议在安装之前把pip升级到最新版,不然有可能报错,命令如下:

python3 -m pip install --upgrade pip

复制

然后进入想要安装的目录,依次输入:

git clone https://github.com/FeeiCN/gsil.git

复制

cd gsil

复制

pip3 install -r requirements.txt

复制

这就安装完了,下一步进入gsil目录找到config.gsil.example文件

内容如下:

  1. [mail]
  2. host : smtp.exmail.qq.com //这个最后要改成smtp.qq.com
  3. port : 25 //这个端口smtp服务一般是465
  4. mails : your_mail //这是你的邮箱地址Ps:多个邮箱用,隔开
  5. from : GSIL
  6. password : your_password //这是生成的授权码
  7. to : feei@feei.cn //这是接受邮件的邮箱地址
  8. cc : feei@feei.cn //这是抄送邮件的邮箱地址
  9. [github]
  10. clone : false //扫描到的漏洞仓库是否立刻Clone到本地
  11. tokens : your_github_token //这是你github的token

复制

邮箱服务配置:

这里以QQ邮箱为例,找到【设置】点击【账户】下拉找到POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务一栏,点击开启,绑定QQ安全中心的用户需要输入app中的令牌

验证成功授权码就拿到啦

github获取token:

进入https://github.com/settings/tokens页面点击生成新令牌

然后会验证密码

勾选public_repo

然后生成就完活了

最后将配置文件改成这样就行了

  1. [mail]
  2. host : smtp.qq.com
  3. port : 465
  4. mails : nsq88@vip.qq.com
  5. from : GSIL
  6. password : jvydbjshjvhvjdsc
  7. to : nsq88@vip.qq.com
  8. cc : nsq88@vip.qq.com
  9. [github]
  10. clone : false
  11. tokens : 1ef5d5f0bajdshvcb455dmcbmdbh29046d5b

复制

配置搜索规则:

如图找到rules.gsil.example文件,修改你想搜索的内容

解释如下:

  1. {
  2. # 一级分类,一般使用公司名,用作开启扫描的第一个参数(python gsil.py test)
  3. "test": {
  4. # 二级分类,一般使用产品线
  5. "mogujie": {
  6. # 公司内部域名
  7. "\"mogujie.org\"": {
  8. # mode/ext默认可不填
  9. "mode": "normal-match",
  10. "ext": "php,java,python,go,js,properties"
  11. },
  12. # 公司代码特征
  13. "copyright meili inc": {},
  14. # 内部主机域名
  15. "yewu1.db.mogujie.host": {},
  16. # 外部邮箱
  17. "mail.mogujie.com": {}
  18. },
  19. "meilishuo": {
  20. "meilishuo.org": {},
  21. "meilishuo.io": {}
  22. }
  23. }
  24. }

复制

都配置好以后你可以先检查一下token的有效性,这样部署就完成了

python gsil.py --verify-tokens

复制

开始获取敏感信息 :

终端输入

python gsil.py test

复制

这是我配置的规则,有点多

结果展示:

比如这里有一个泄露用户名及密码的

点击e8b503就可以直接定位到文件位置

‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

2、gshark

介绍:这是个可视化的监测工具,它不仅可以监控github,还可以监控gitlab

所需环境:

  • go
  • 64位gcc
  • Linux 一个github账号token,获取地址:https://github.com/settings/tokens

不建议使用window部署,别问为什么,问就是“错错错,是我的错”

安装go

apt-get install golang

复制

Linux中一般自带gcc,没有的话跟上面一样安装就行了

项目安装:

gshark安装可以执行命令,也可以直接到github下载

git clone https://github.com/madneal/gshark

复制

然后执行

go get ./...

复制

如果报错没有执行成功可以试试这个更换国内源

go env -w GOPROXY=https://goproxy.cn

复制

完成后执行

go build main.go

复制

然后改个文件名就哦克了

mv app-template.ini app.ini

复制

运行服务:

开启后台web服务

./main web &

复制

浏览器中输入

http://127.0.0.1:8000/admin/login

复制

账号密码都是gshark

进去之后先添加github的token

规则配置:

改一下规则,想扫那个子域名或者关键字填上就行

规则配置好后点击enable启用规则,想停用就点右边那个

过滤规则可以自己添加

然后回到终端输入下面命令开始监测

./main scan

复制

结果展示:

‍过一段时间源代码扫描报告中就会有一堆结果

直接点击上面的链接会跳到那个文件,这时你就可以愉快的寻找敏感信息啦,哦耶

相关文章:

推荐两款github敏感信息搜集工具(gsil、gshark)

推荐两款github敏感信息搜集工具(gsil、gshark) - 云社区 - 腾讯云 (tencent.com) github敏感信息泄露是很多企业时常忽视的一个问题,国外有一份研究报告显示,在超过24,000份的GitHub公开数据中,发现有数千个文件中可能…...

如何不拷贝资源的使用fork

我们知道fork出的子进程会把父线程的资源拷贝一遍,其中包括文件描述符表,如果是一些独占的设备,那么经常会出问题。 比如你在父进程ose了设备,但子进程的文件描述符表里依然记录是open的,这样当你再次在父进程open时&a…...

使用事件侦听器和 MATLAB GUI 查看 Simulink 信号研究

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...

使用协程让物体颜色慢慢消失

以下是使用协程让物体颜色慢慢消失的完整代码,每行都有注释说明: using UnityEngine; using System.Collections;public class ExampleClass : MonoBehaviour {public SpriteRenderer sprite; // 物体的SpriteRenderer组件public float fadeSpeed 0.1f…...

服务器流量

1.服务器流量分为入流量和出流量 入流量(Inbound Traffic)是指流向服务器的数据流量,也就是客户端发送到服务器的数据。这些数据可能包括请求信息、文件上传等。 出流量(Outbound Traffic)是指从服务器流向客户端的数…...

加拿大量子研究新动作!D-Wave与滑铁卢大学合作研究量子相干性

​ (图片来源:网络) D-Wave是量子计算系统、软件和服务的领导者,也是量子计算机的第一家供应商。近期,D-Wave宣布与滑铁卢大学量子计算研究所(IQC)达成两项新合作。他们为量子计算系统建立了关键…...

网络安全进阶学习第十一课——MySQL手工注入(2)

文章目录 一、UA注入1、原理2、靶场演示:1)一旦页面出现如下现状,就可以使用UA注入2)BP抓包3)修改User-Agent 二、referer注入1、原理2、靶场演示:1)使用BP抓包2)修改Referer 三、DN…...

数据库和ORM如何优雅的添加字段?

RT,业务需要为某个实体添加字段,如何在生成了Mybatis XML(包含了手写的部分联合查询)的情况下优雅的添加字段呢? 作者:方小葱 链接:https://www.zhihu.com/question/284511416/answer/43812337…...

QT ubuntu下开发视频播放 FFmpeg

ubuntu 安装FFmpeg T113VideoDemo.pro #------------------------------------------------- # # Project created by QtCreator 2023-07-28T11:45:22 # #-------------------------------------------------QT core guigreaterThan(QT_MAJOR_VERSION, 4): QT widget…...

8.3一日总结

1.远程仓库的使用 a.克隆远程仓库 1>.在桌面克隆远程仓库 git clone 仓库名 2>.修改仓库内容 3>添加目录 git add. 4>提交: git commit -m 完成登录功能 5>推送提交远程仓库 : git push origin master -u 6>更改推送:git push(简写形式) 需要先添加,再提交,最…...

load、unload和pagehide、pageshow

一、load、unload和pagehide、pageshow的主要应用 1)load 和 unload 事件监听web页面的进入和离开,一般用于页面的首次加载、刷新和关闭等操作的监听; 2)pageshow 和 pagehide 事件多用于监听浏览器的前进和后退等。 二、pagesh…...

【面试问题12】

1.吞吐量和并发区别? 并发请求树/单位时间一般是s 吞吐量 并发/平均响应时间 常用的吞吐量指标有qps,tps 2.mysql数据是怎么存储的? 存储在data目录下,数据库作为文件夹,文件夹里面有.ibd文件,一个表一个ib…...

高性能网络框架笔记

目录 TCP粘包、分包惊群断开连接,TCP怎么检测的?大量的close wait,如何解 ?双方同时调用close水平触发和边沿触发的区别 TCP粘包、分包 解决:1.应用层协议头前面pktlen;2.为每一个包加上分隔符;(\r\n&…...

leetcode 738. 单调递增的数字

2023.8.4 这题用暴力法会超时,我就没试了,采用了个挺巧的方法,为了方便需要先将整数n转换为字符串的形式,然后从后向前遍历,当两个数字非递增时,将前一个数字--,后一个数字的位置记录在index中&…...

FPGA项目设计:数字时钟

项目要求: 设计一个数字时钟,数码管前两位显示小时,数码管中间两位显示分钟,数码管后面两位显示秒。 项目设计: 系统框架图: 计数模块时序图: 代码实现: 计数模块: /…...

科技云报道:向量数据库:AI时代的下一个热点

科技云报道原创。 最近,又一个概念火了——向量数据库。 随着大模型带来的应用需求提升,4月以来多家海外知名向量数据库创业企业传出融资喜讯。 4月28日,向量数据库平台Pinecone宣布获得1亿美元(约7亿元)B轮融资&am…...

【更新】119所院校考研重点勾画更新预告!

截至目前,我已经发布了47篇不同院校的择校分析。发布了87套名校信号考研真题以及119所不同院校的考研知识点重点勾画。 另外为了更好服务已经报名的同学,24梦马全程班也到了收尾的阶段。即将封班!需要报名的同学抓紧啦! 去年开始…...

【Leetcode】(自食用)LRU算法(哈希链表法)

step by step. 题目: 请你设计并实现一个满足 LRU (最近最少使用) 缓存 约束的数据结构。 实现 LRUCache 类: LRUCache(int capacity) 以 正整数 作为容量 capacity 初始化 LRU 缓存int get(int key) 如果关键字 key 存在于缓存中,则返回关键…...

robots.txt 如何禁止蜘蛛(百度,360,搜狗,谷歌)搜索引擎获取页面内容

什么是蜘蛛抓取 搜索引擎使用spider程序自动访问互联网上的网页并获取网页信息。spider在访问一个网站时,会首先会检查该网站的根域下是否有一个叫做robots.txt的纯文本文件。您可以在您的网站中创建一个纯文本文件robots.txt,在文件中声明该网站中不想…...

JVM 学习—— 类加载机制

前言 在上一篇文章中,荔枝梳理了有关Java中JVM体系架构的相关知识,其中涉及到的有关Java类加载机制的相关知识并没有过多描述。那么在这篇文章中,荔枝会详细梳理一下有关JVM的类加载机制和双亲委派模型的知识,希望能够帮助到有需要…...

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析

1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具,该工具基于TUN接口实现其功能,利用反向TCP/TLS连接建立一条隐蔽的通信信道,支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式,适应复杂网…...

论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(二)

HoST框架核心实现方法详解 - 论文深度解读(第二部分) 《Learning Humanoid Standing-up Control across Diverse Postures》 系列文章: 论文深度解读 + 算法与代码分析(二) 作者机构: 上海AI Lab, 上海交通大学, 香港大学, 浙江大学, 香港中文大学 论文主题: 人形机器人…...

连锁超市冷库节能解决方案:如何实现超市降本增效

在连锁超市冷库运营中,高能耗、设备损耗快、人工管理低效等问题长期困扰企业。御控冷库节能解决方案通过智能控制化霜、按需化霜、实时监控、故障诊断、自动预警、远程控制开关六大核心技术,实现年省电费15%-60%,且不改动原有装备、安装快捷、…...

C++--string的模拟实现

一,引言 string的模拟实现是只对string对象中给的主要功能经行模拟实现,其目的是加强对string的底层了解,以便于在以后的学习或者工作中更加熟练的使用string。本文中的代码仅供参考并不唯一。 二,默认成员函数 string主要有三个成员变量,…...

运行vue项目报错 errors and 0 warnings potentially fixable with the `--fix` option.

报错 找到package.json文件 找到这个修改成 "lint": "eslint --fix --ext .js,.vue src" 为elsint有配置结尾换行符,最后运行:npm run lint --fix...

Vue 实例的数据对象详解

Vue 实例的数据对象详解 在 Vue 中,数据对象是响应式系统的核心,也是组件状态的载体。理解数据对象的原理和使用方式是成为 Vue 专家的关键一步。我将从多个维度深入剖析 Vue 实例的数据对象。 一、数据对象的定义方式 1. Options API 中的定义 在 Options API 中,使用 …...

Qt学习及使用_第1部分_认识Qt---Qt开发基本流程

前言 学以致用,通过QT框架的学习,一边实践,一边探索编程的方方面面. 参考书:<Qt 6 C开发指南>(以下称"本书") 标识说明:概念用粗体倾斜.重点内容用(加粗黑体)---重点内容(红字)---重点内容(加粗红字), 本书原话内容用深蓝色标识,比较重要的内容用加粗倾…...

生产管理系统开发:专业软件开发公司的实践与思考

生产管理系统开发的关键点 在当前制造业智能化升级的转型背景下&#xff0c;生产管理系统开发正逐步成为企业优化生产流程的重要技术手段。不同行业、不同规模的企业在推进生产管理数字化转型过程中&#xff0c;面临的挑战存在显著差异。本文结合具体实践案例&#xff0c;分析…...

八、【ESP32开发全栈指南:UDP客户端】

1. 环境准备 安装ESP-IDF v4.4 (官方指南)确保Python 3.7 和Git已安装 2. 创建项目 idf.py create-project udp_client cd udp_client3. 完整优化代码 (main/main.c) #include <string.h> #include "freertos/FreeRTOS.h" #include "freertos/task.h&…...

DJango知识-模型类

一.项目创建 在想要将项目创键的目录下,输入cmd (进入命令提示符)在cmd中输入:Django-admin startproject 项目名称 (创建项目)cd 项目名称 (进入项目)Django-admin startapp 程序名称 (创建程序)python manage.py runserver 8080 (运行程序)将弹出的网址复制到浏览器中…...