02信息收集

信息收集概览

渗透测试的主要流程

  1. 确定目标
  2. 信息收集(40-60%)
    域名信息、IP段、开放的端口、网站架构、文件目录结构、软件版本、WAF、旁站、C段……
  3. 漏洞扫描
  4. 漏洞利用
  5. 形成报告

渗透测试的重要性

影响后续流程的效果

包括内容

  1. 域名相关信息
  2. IP相关信息
  3. 端口服务相关信息
  4. 指纹识别(CMS/CDF/WAF)
  5. Google Hacking
  6. 目录扫描
  7. Git Hack

学习框架

  1. 这种信息是什么?
  2. 怎么收集这种信息?
  3. 收集这种信息有什么用?

域名信息

域名是什么

用来代替IP,找到网络上的一台计算机

www.baidu.com --> 域名解析服务 --> 220.181.38.148

域名的分类

  1. 国际域名
    .com(商业公司);.net(网络服务);.org(组织协会等);.gov(政府部门);.edu(教育机构);.m(军事领域);.int(国际组织)
  2. 国别域名
    .CN代表中国;.UK代表英国;.US代表美国
  3. 新顶级域名
    biz、info、name、pro、aero、coop、museum、......

域名联系人信息

whois查询
    可以查询到域名注册的相关信息: **姓名、电话、 邮箱、 地址**
工具

域名Whois查询 - 站长工具
whois
kali自带了whois命令

域名反查

注册人whois反查_域名注册人反查- 站长工具
域名whois查询 – 站长工具

ICP备案

作用:所有服务器或者虚拟主机放在大陆的网站,域名必须要在工信部的系统里备案,否则不能通过域名访问
信息:姓名、备案号、邮箱(默认公开)
工具
工业和信息化部政务服务平台 ICP/IP地址/域名信息备案管理系统
ICP备案查询_APP及小程序备案查询 - 站长工具
备案88

企业信息查询

天眼查
企查查
国家企业信用信息公示系统

子域名信息

方法:
    字典爆破、枚举
工具

Layer4.2下载
https://phpinfo.me/domain网站已经找不到
GitHub - lijiejie/subDomainsBrute: 高并发的DNS暴力枚举工具

域名DNS信息

配置
image.png
记录类别
image.png
工具
域名解析查询(A/Txt/Cname/Mx/Srv/Aaaa...)
netcraft工具(英文)
在线域名解析记录检测-在线Nslookup域名解析查询工具
kali命令:host urldig url

IP信息

如何根据域名获得IP

image.png
命令:
ping:man ping
nslookup
查询邮件服务器idnslookup -type="MX" baidu.com
image.png
IP归属
CNNIC及中国大陆的IP地址分配信息

如何获得CDN背后的真实IP

什么是CDN

(Content Delivery Network)内容分发网络。让在各个不同的地点的网络用户,都可以迅速访问到网站提供的内容

常见厂商
  • CloudFlare/CloudFront.....
  • 帝联/蓝讯/网宿/七牛云/腾讯/百度/阿里云..
CDN工作流程
  1. 当终端用户(北京)向www.a.com下的指定资源发起请求时,首先向LDNS(本地DNS)发起域名解析请求。
  2. LDNS检查缓存中是否有www.a.com的IP地址记录。如果有,则直接返回给终端用户;如果没有,则向授权DNS查询。
  3. 当授权DNS解析www.a.com时,返回域名CNAME www.a.tbcdn.com对应IP地址。
  4. 域名解析请求发送至阿里云DNS调度系统,并为请求分配最佳节点IP地址。
  5. LDNS获取DNS返回的解析IP地址。
  6. 用户获取解析IP地址。
  7. 用户向获取的IP地址发起对该资源的访问请求。
如何获取CDN背后的真实IP
  1. 查看IP数量

查看对应 IP 地址是否唯一,如果不唯一则使用了CDN
多个地点Ping服务器,网站测速 - 站长工具

  1. 历史DNS

查看与域名绑定的历史记录,可能会存在使用CDN前的记录。这些记录可以帮助您找到网站的真实IP地址
(DNS) Historical Record
netcraft
全球 CDN 服务商查询_专业精准的IP库服务商_IPIP
https://github.com/vincentcox/bypassfirewalls-by-DNS-history

  1. 子域名查询

CDN 的价格还是比较贵的,所以很多站可能只对主站或者流量大的子站点做 CDN,而很多小站子站点跟主站在同一台服务器或者同一个C段内,此时就可以通过查询子域名对应的 IP 来辅助查找网站的真实IP。

  1. 国外主机解析

HostTracker
WebPageTest
Pingdom Tools

  1. 网络空间搜索引擎:fofa、censys
  2. 邮件:即使是当前的记录也可能泄漏原始服务器IP。例如,MX记录是一种常见的查找IP的方式。如果网站在与web相同的服务器和IP上托管自己的邮件服务器,那么原始服务器IP将在MX记录中。
  3. 手机APP抓包
  4. 微信服务号抓包

11种绕过CDN查找真实IP方法

端口服务信息

扫描的思路

  1. 发现目标主机或网络 (端口扫描)
  2. 发现目标后进一步搜集目标信息,包括操作系统类型、运行的服务以及服务软件的版本等。如果目标是一个网络,还可以进一步发现该网络的拓扑结构、路由设备以及各主机的信息 (目标信息识别)
  3. 根据收集到的信息判断或者进一步测试系统是否存在安全漏洞 (漏洞扫描)

一个服务对应一个端口
查看本机端口

windows netstat -aon|findstr 3306
Linux netstat -an|grep 3306

远程机器端口

telnet 192.168.142.137 80
wget 192.168.142.137 80
nc -vz 192.168.142.137 445
nc -vz 192.168.142.137 80-9000

代码实现

链接:https://pan.baidu.com/s/18I04jJfBxhgp6t8-Oc7Xng?pwd=8888
提取码:8888
--来自百度网盘超级会员V5的分享

image.png

常见端口

https://nsrc.org/workshops/2009/summer/presentations/day3/common-ports.pdf

image.png

文件共享服务

image.png

远程连接服务

image.png

Web应用服务

image.png

数据库服务

image.png

邮件服务

image.png

网络常见协议

image.png

特殊服务

image.png

metasploitable2靶机

链接:https://pan.baidu.com/s/1KDU1jdlw0dgkptPQsG-2uw?pwd=8888
提取码:8888
--来自百度网盘超级会员V5的分享

  1. 下载、解压、导入VM
  2. 默认用户名密码 msfadmin/msfadmin
  3. 修改root密码 sudo passwd root
  4. ifconfig查看IP
  5. root下打开配置文件vim /etc/network/interfaces
  6. 重启网络 /etc/init.d/networking restart
  7. 将vm的网络模式改为NAT模式
  8. 重新启动虚拟机

扫描工具NMap(Network Mapper)

https://nmap.org/

主要功能
  1. 扫描主机(Host Discovery)
  2. 扫描端口(Port Scanning)
  3. 探测操作系统(OperatingSystem Detection)
  4. 探测软件版本 (Version Detection)
参数类型分类
  • TARGET SPECIFICATION:目标,对什么进行扫描,比如是域名、IP或者网络
  • HOST DISCOVERY:主机发现,怎么对主机进行扫描,比如简单扫描,还是全部扫一遍,或者用相应的协议扫
  • SCAN TECHNIQUES:扫描技术,协议的设置
  • PORT SPECIFICATION AND SCAN ORDER:端口和扫描顺序设置
  • SERVICE/VERSION DETECTION:服务和版本识别
  • SCRIPT SCAN:使用脚本,nmap本身内置了大量的lua脚本,而且还可以自己编写脚本
  • OS DETECTION:操作系统识别
  • TIMING AND PERFORMANCE:时间和性能设置,比如扫描频率、重试次数等等
  • FIREWALL/IDS EVASION AND SPOOFING:防火墙绕过和欺骗,比如使用代理,假IP等
  • OUTPUT:把扫描接出输出到文件
  • MISC: 杂项:启用IPv6等等配置

https://nmap.org/book/man.html

image.png
nmap中内置了大量的lua脚本,可以通过ls /usr/share/nmap/scripts/ | wc -l进行查看
也可以到官网查询相关文档[https://nmap.org/book/nse-scripts.html](https://nmap.org/book/nse-scripts.html)

nmap 192.168.178.112 --script http-enum 列举HTTP服务
nmap --script=auth 绕过鉴权
nmap --script=brute 暴力破解
nmap --script=vuln 扫描漏洞

image.png

参数示例

nmap 192.168.178.112
image.png
nmap testfire.net
image.png
简单扫描 nmap -sP 192.168.178.112
image.png
指定端口或范围扫描: nmap -p0-65535 192.168.178.112
image.png
探测操作系统: nmap -O 192.168.178.112
image.png
只进行主机发现,不进行端口扫描 nmap -sn 192.168.178.112/24(24表示子网掩码的位数,表示是C类)
image.png

界面工具Zenmap

第一种:Intense scan
第二种:Intense scan plus UDP
第三种:Intense scan,all TCP ports
第四种:Intense scan,no ping
第五种:Ping scan
第六种:Quick scan
第七种:Quick scan plus
第八种:Quick traceroute
第九种:Regular scan
第十种:Slow comprehensive scan

nmap的一些脚本总结
链接:https://pan.baidu.com/s/1_FELwEkMqP0p1Fs6pug3Kw?pwd=8888

其他工具

masscan、nbtscan
在线端口检测,端口扫描,端口开放检查-在线工具-postjson

CMS指纹识别

什么是指纹识别?

根据关键特征,识别出目标的CMS系统、服务器、开发语言、操作系统、CDN、WAF的类别版本等等

对象
  1. CMS信息:比如Discuz、织梦、帝国CMS、PHPCMS、ECshop等;
  2. 前端技术:比如HTML5、jquery、bootstrap、Vue、ace等;
  3. 开发语言:比如PHP、Java、Ruby、Python、C#等;
  4. Web服务器:比如Apache、 Nginx,、IIS、lighttpd等;
  5. 应用服务器:比如Tomcat、Jboss、Weblogic、Websphere等;
  6. 操作系统信息:比如Linux、win2k8、win7、Kali、Centos等;
  7. CDN信息:是否使用CDN,如cloudflare、帝联、蓝讯、网宿、七牛云、阿里云等;
  8. WAF信息:是否使用WAF,如D盾、云锁、帝联、蓝讯、网宿、七牛云、阿里云等;

什么是CMS? (Content Management System 内容管理系统)

常见CMS

企业建站系统:MetInfo(米拓)、蝉知、SiteServer CMS等;
B2C商城系统:商派Shopex、ECshop、HiShop、XpShop等;
门户建站系统:DedeCMS(织梦)、帝国CMS、PHPCMS、动易、CmsTop等;
博客系统:WordPress、Z-Blog等;
论坛社区:Discuz、PHPwind、WeCenter等;
问答系统:Tipask、whatsns等;
知识百科系统:HDwiki;
B2B门户系统:Destoon、B2Bbuilder、友邻B2B等;
人才招聘网站系统:骑士CMS、PHP云人才管理系统;
房产网站系统:FangCms等;
在线教育建站系统:Kesion、EduSoho;
电影网站系统:苹果CMS、ctcms、movcms等;
小说文学建站系统:杰奇CMS;

CMS指纹识别的思路

版权信息 Powered by XXX
image.png
特定的文件(favicon.ico等等)MD5 [**https://github.com/Lucifer1993/cmsprint**](https://github.com/Lucifer1993/cmsprint)
image.png
查看网页源码 分析特定的路径或者代码内容
image.png
特定文件 比如robots.txt
image.png

CMS指纹识别的工具

Kali自带工具 whatweb whatweb -v www.discuz.vip
image.png
whatweb -v www.coolshell.cn
image.png
浏览器插件
image.png
image.pngimage.png
在线网站
http://whatweb.bugscaner.com
TideFinger 潮汐指纹 TideFinger 潮汐指纹
image.png
离线工具

链接:https://pan.baidu.com/s/1DczWHlq6AViL8X3JorkKlA?pwd=8888
提取码:8888
--来自百度网盘超级会员V5的分享

image.png
其他开源程序
[https://github.com/Tuhinshubhra/CMSeeK](https://github.com/Tuhinshubhra/CMSeeK)
cmseek -u www.discuz.vip
image.png

CDN指纹识别

CDN指纹识别思路

如何找出真实IP
  • 超级ping
  • 历史DNS
  • 通过子域名查询IP
  • 国外主机解析
  • 其他
CDN如何配置

通过配置CNAME(别名记录)
通过配置CNAME域名实现网站加速_CDN(CDN)-阿里云帮助中心
image.png

CDN指纹识别工具

基本工具
  1. kali自带lbd(load balance detector)lbd www.12306.cn
    image.png
  2. ping ping www.alibaba.com
    image.png
  3. nslookup nslookup www.bilibili.com
    image.png
  4. 超级ping [http://ping.chinaz.com](http://ping.chinaz.com)
专用识别工具

各地CDN节点测速结果 - CDN云观测 - 站长工具
404 - CDN Planet(外国网站)
image.png

脚本

https://github.com/boy-hack/w8fuckcdn/
image.png
https://github.com/3xp10it/xcdn
image.png

WAF指纹识别

什么是WAF

定义

(Web Application Firewall) Web 应用防火墙:过滤HTTP或者HTTPS的请求,识别并拦截恶意的请求
image.png

类型

硬件型 WAF 、云 WAF 、软件型 WAF

常见WAF厂商

各种云:阿里云、腾讯云、华为云、百度云……
安全狗、宝塔、360、知道创宇、长亭、安恒…

WAF的识别思路

方法(https://github.com/0xInfection/Awesome-WAF
  • 再返回中设置自己的cookie,额外的cookie,比如云锁
  • 任何响应或请求的附加标头,比如安全宝
  • 响应内容(如果被阻止请求)增加标识,比如DotDefender, Armor, Sitelock
  • 响应代码(如果被阻止请求),比如WebKnight, 360 WAF
指纹库

https://github.com/CSecGroup/wafid/blob/master/finger.xml

怎么触发WAF
  1. URL或者表单输入恶意内容
xsstring = '<script>alert("XSS");</script>'
sqlistring = "UNION SELECT ALL FROMinformation_schema AND ' or SLEEP(5) or '"
lfistring = '../../../../etc/passwd'
rcestring = '/bin/cat /etc/passwd; ping 127.0.0.1; curlgoogle.com'
xxestring = '<!ENTITY xxe SYSTEM "file:///etc/shadow">]><pwn>&hack;</pwn>'
  1. WAF的识别工具

Kali自带
wafw00f https://www.12306.cn
wafw00f [https://pinpai.smzdm.com](https://pinpai.smzdm.com)

https://github.com/EnableSecurity/wafw00f

image.png
Nmap
nmap www.12306.cn --script=http-waf-detect.nse
sqlmap
sqlmap -u "https://pinpai.smzdm.com/1773/gushi/?id=1" --identify-waf --batch
其他
https://github.com/0xInfection/Awesome-WAF

搜索引擎收集信息

运算符

完全匹配 "网络安全工程师"双引号包含内容
任意字词 批发 OR 特价 or连接
不包含 burp suite -xxx -不想要出现的内容
数字范围 number..number 在两个数字之间..

高级语法

只搜索某个网站的内容 :site:zhihu.com
网页的内容包括:allintext: Powered by Discuz intext: Powered by Discuz
标题出现allintitle: 后台登录 intitle: 后台登录
URL地址包括 allinurl: admin.phpinurl: index.php?id=1
文件类型指定: filetype:pdf
index of

语法数据库

https://www.exploit-db.com/google-hacking-database
https://github.com/BullsEye0/google_dork_list

工具

github搜索: google hackinggoogle dorks

网络空间搜索引擎

引子

360水滴直播事件
思考

除了网络摄像头之外,网络空间还包括什么?
黑客是怎么找到某一个网络设备的?

什么是网络空间?

Cyber space
搜索引擎
发展

  • 图片
  • 音乐
  • 声音 电视剧
  • ……
  • 进一步
    • 网络系统
      • CDN
      • CMS
      • IDS intrusion detection system入侵检测系统
      • 办公软件
      • 数据库服务
      • 杀毒软件
      • 文件服务NFS
    • 网络设备
      • 手机
      • 平板电脑
      • 交换机
      • 路由器
      • 网络摄像头
      • 私人网盘
      • 打印机
      • ATM
      • 物联网家电
      • 机器人
    • 工业系统
      • 交通信号灯
      • 企业大屏幕
      • 公园控制系统
      • 加油站
      • 电网
      • 自来水厂
      • 核电站

网络空间搜索引擎

OSINT Open source intelligence 开源网络情报

怎么扫描?
  1. 用网络扫描的工具: nmap、 zmap
  2. 方式: IP库、 枚举

怎么标识一个设备

  • 爬虫 ( url)
  • ip ( 域名)
  • 开放端口
  • 操作系统
  • 物理地址 (深圳、北京)
  • MAC地址
  • 设备的类型

实施威胁地图

https://www.fireeye.com/cyber-map/threat-map.html

安全性

安全研究者

Shodan(https://www.shodan.io/

如何使用 Shodan 搜索引擎保姆级教程(附链接)_shodan 怎么用-CSDN博客

基本介绍:
  • 地图、截图、监控
  • 新手指引
  • 视频教程
  • 开发者工具
  • Filter过滤器
  • Exploer

image.png
apache city:"Changsha"
image.png
tomcat country:"CN"
image.png
Service:Hikvision-Webs Country:"CN"
image.png
server: gws hostname:"google"
image.png

CLI 命令行工具:

kali自带
image.png

 Commands:
alert       Manage the network alerts for your account  # 管理账户的网络提示
convert     Convert the given input data file into a...  # 转换输入文件
count       Returns the number of results for a search  # 返回查询结果数量
download    Download search results and save them in a...  # 下载查询结果到文件
honeyscore  Check whether the IP is a honeypot or not.  # 检查 IP 是否为蜜罐
host        View all available information for an IP...  # 显示一个 IP 所有可用的详细信息
info        Shows general information about your account  # 显示账户的一般信息
init        Initialize the Shodan command-line  # 初始化命令行
myip        Print your external IP address  # 输出用户当前公网IP
parse       Extract information out of compressed JSON...  # 解析提取压缩的JSON信息,即使用download下载的数据
scan        Scan an IP/ netblock using Shodan.  # 使用 Shodan 扫描一个IP或者网段
search      Search the Shodan database  # 查询 Shodan 数据库
stats       Provide summary information about a search...  # 提供搜索结果的概要信息
stream      Stream data in real-time.  # 实时显示流数据

使用

  1. 查看自己的API-KEY

image.png
shodan init xxxxxx
image.png
用法示例

shodan host 172.67.167.88
shodan count apache
shodan count vuln:cve-2019-0708
shodan search --fields ip_str,port,org,hostnames microsoft iis 6.0
shodan stats port:445 SMB
shodan download --limit -1 test net:172.67.167.88/24

工具
https://github.com/jakejarvis/awesome-shodan-queries (语法)
https://github.com/random-robbie/My-Shodan-Scripts (python脚本)

其他的网络空间搜索引擎

Censys
Exposure Management and Threat Hunting Solutions | Censys

  • 没有收费
  • 收录了证书
  • ZMap和ZGrab

ZoomEye
ZoomEye - Cyberspace Search Engine

  • 网络空间资源测绘
  • Xmap

Fofa

工具

https://github.com/knownsec/Kunyu
https://github.com/coco413/DiscoverTarget
https://github.com/saucer-man/saucerframe 

目录扫描收集信息

什么是目录扫描

部署的网站有一些敏感文件

配置文件(xxx.cfg)
数据文件(xxx.sql、xxx.tar.gz)
目录(/backup、/conf、/admin)

会泄露哪些信息
  • 数据库用户名和密码
  • 服务器用户名和密码
  • 网站源码
  • 数据库的文件
为什么会目录泄露?

配置不当的问题
本地文件包含local file inclusion (LFI)
PHP中会引入一些模块,比如header.php、common.php、 footer.php、 function.php等减少重复工作,但是include导入就有可能存在本地文件包含的漏洞 include ("恶意代码or路径/文件")include("../../..")require();
dvwa靶场
http://localhost/dvwa/vulnerabilities/fi/?page=../../phpinfo.php
image.png
http://localhost/dvwa/vulnerabilities/fi/?page=本磁盘内部路径的文件

常见的敏感目录和文件

  1. robots.txt:对爬虫和机器人进行限制 (信息,站点地图)cms系统自动更新
  2. sitemap.xml(指导搜索引擎去搜索文件)
  3. 网站的备份文件/数据
    1. 文件:在线压缩:路径、文件名、wwwroot、日期.zip
    2. 数据:帝国备份王:将1.sql打包生成1.zip
  4. 后台登录的目录:/admin/manage
  5. 安装包(源码)
    1. 非开源,商用
    2. 1.zip
  6. 上传的目录
    1. 文件上传漏洞:webshell
    2. /upload
    3. /upload.php
  7. mysql的管理界面 300M
    1. MySQL
    2. web页面去管理
    3. phpadmin-->密码爆破-->webshell
  8. 程序安装路径
    1. /install
  9. php探针
    1. phpinfo
    2. 雅黑探针[http://www.yahei.net/tz/tz.zip](http://www.yahei.net/tz/tz.zip)
  10. 文本编辑器(漏洞较多)
  11. Ueditor-->https://github.com/fex-team/ueditor
  12. kindeditor
  13. CKeditor
  14. 文件上传漏洞、命令注入
  15. Linux(常分析文件)
  16. /etc/passwd
  17. /etc/shadow:密码使用SHA512加密
  18. /etc/sudoers: sudo使用root权限
  19. MacOS
  20. .DS_Store
  21. 编辑器的临时文件
  22. .swp(临时文件)
  23. 目录穿越
  24. Windows IIS
  25. Apache
  26. pikachu靶场
    http://localhost/pikachu/vul/dir/dir_list.php?title=jarheads.php
    image.png
    http://localhost/pikachu/vul/dir/dir_list.php?title=../../../../Windows/win.ini
    image.pngpikachu靶场全攻略
  27. tomcat WEB-INF
    https://github.com/BlackFan/WEB-INF-dict/blob/master/web-inf.txt(脚本)
  28. WEB-INF/web.xml : Web应用程序配置文件, 描述了servlet和其他的应用组件配置及命名规则.
  29. WEB-INF/database.properties : 数据库配置文件
  30. WEB-INF/classes/ : 一般用来存放Java类文件(.class)
  31. WEB-INF/lib/ : 用来存放打包好的库(.jar)
  32. WEB-INF/src/ : 用来放源代码(.asp和.php等)
  33. 非常规文件,(细节察觉,文件名判断)
  34. secret.txt
  35. password.txt

文件扫描思路

做法: 直接在域名路径拼接路径/文件名,如果返回200,就是存在

扫描方法
  1. 递归 dir xxx

  2. 字典

  3. 暴力破解

    1. 1位:a-z、 0-9
    2. 2位: aa、 00、 a0、 9z
  4. 爬虫

  5. fuzz(模糊测试)

         字典
         /dir
         /index.php?file or name or url=
    
文件扫描字典

kali自带:wordlists
image.png

cd /usr/share/set/src/fasttrack
less wordlist.txt 

image.png
工具
kali自带: dirb
dirb [http://www.testfire.net/](http://www.testfire.net/)
image.png
kali图形化界面:dirbuster
image.png
御剑
image.png
Burp Suite: Intruder选择payload使用 www.baidu.com/$bbs$进行爆破
image.png
DirBrute
Dirsearch
Dirmap
wfuzz

注意事项

容易被WAF,IDS记录下来并进行拦截

  1. 代理换IP
  2. 网络空间搜索引擎(寻找已经存在的记录)

如何防御

  1. 权限
  2. 删除敏感文件
  3. 配置WAF,IDS

Git信息收集

什么是版本控制系统(Version Control System)

项目代码进行恢复,备份;但是会存在一些问题:直接修改文件时对仓库难以进行管理,难以寻找修改的文件;若是对整个工程直接打包,占用空间就会过多

发展阶段
  1. 本地VCS
  2. 如果协同开发时对同一个文件进行修改,则会发生冲突
    1. 自动合并不冲突的内容
    2. 标记冲突的内容
    3. 集中化的VCS(Centralized Version control systems)
      CVCS、CVS--Concurrent Version system、SVN
  3. 去中心化(一旦中心的服务器服务断开,则有可能会导致整个项目出现问题)
    分布式cvs(Distributed Version Control)DVCS、Github,Gitlab,码云 、Git、 Bitkeeper

为什么Git会导致信息泄露

  1. 把私有仓库/隐私文件提交到了GitHub
  2. 部署项目的时候,不小心把.git文件一起打包进去,放到web网站目录下
    .git中会有项目的war包,可以去尝试还原项目源码
git有用的内容
目录 信息
.git/logs/HEAD 储存了git的log信息,可以找到历史的commit项
.git/index 缓存git add的文件,暂存区
.git/refs/stash 通过git stash命令,把代码存入缓存区
.git/refs/heads/master 记录了master的commit的hash
.git/objects/packs/.pack 通过对.git/objects/目录解压缩也可以获得源码

Github搜索技巧

kali in:file:搜索文件中包含kali的代码
image.png
kali in:path:搜索路径中包含kali的代码
image.png
kali in:path,file:搜索路径、文件中包含kali的代码

shodan language:Python:搜索关键字shodan,语言为Python的代码

filename:config.php language:php:搜索文件名为config.php,且语言为php

kali topics:>=5:标签数量大于等于5的

kali size:<1000:文件小于1KB的

kali stars:10..50:star大于10小于50的

kali pushed:>2021-08-15:搜索在2021815日之后提交的

kali pushed:2021-07-01..2021-08-01:搜索在此区间

kali created:>=2021-06-01:创建时间

kali pushed:<2021-08-01 -language:java:搜索在2020年8月1日前push代码且排除Java语言

Git信息泄露利用方式

找到.git
  1. 目录扫描
  2. robots.txt
  3. 搜索引擎搜索:intitle:“index of /.git"

image.png

把.git下载到本地

https://github.com/BugScanTeam/GitHack
https://github.com/lijiejie/GitHack
https://github.com/wangyihang/githacker
https://github.com/WangWen-Albert/JGitHack(图形化工具)

用git的命令获取内容
命令 信息
git log 获取提交记录
git reset --hard 【log hash】 恢复到某个版本
git diff 对比版本差异
工具

https://github.com/gakki429/Git_Extract
image.png

案例

CTFHub
ctfhub技能树(Web—>信息泄露—>Git泄露—>Log、stash、index)
image.png
打开题目
image.png
kali使用dirb进行扫描
image.png
使用命令:python GitHack.py [http://challenge-ac3298dadd1adcb4.sandbox.ctfhub.com:10800/.git](http://challenge-ac3298dadd1adcb4.sandbox.ctfhub.com:10800/.git)将项目git文件夹打包下来
image.png
进入git目录cd dist/challenge-ac3298dadd1adcb4.sandbox.ctfhub.com_10800/.git,查看项目日志git log
image.png
可以发现第二版本添加了flag信息,而第三个版本将flag信息进行了删除,此时只需要对比当前版本和第二版区别即可,返回项目文件主目录下使用git diff 6da69b79abde9749cde7427241f2a78adeabf94d
image.png
获取flag:ctfhub{22b3d9927c854c1e16d0ffdc}

posted @   Buzz_lon  阅读(56)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
· SQL Server 2025 AI相关能力初探
· 为什么 退出登录 或 修改密码 无法使 token 失效
点击右上角即可分享
微信分享提示