网络安全之信息收集
域名扫描工具
oneforall
特点:相对较慢,相对较全,误报率高
subDomainsBrute
2、服务器信息收集
pin 域名 网站归属信息ip138.com
CDN 内容分发网络
绕过cdn访问真实ip方法:
(1)超级ping
使用所在全国不同地区服务器去访问该网站获取返回ip 判断是否使用 cdn
(2)历史DNS
查看该网站是是否被历史解析过 大多网站一般都不是一开始都使用CDN的,早期的dns可能就是真实ip
工具(历史DNS记录查询):http://dnshistory.org/ https://tools.ipip.net/cdn.php https://sitereport.netcraft.com/
(3)通过子域名查询ip
主站用了cdn 子站不一定用了cdn
(4)国外主机解析
未配制当前区域地址 访问 有可能访问到真实地址
(5)其他
邮件、SSL证书、手机app抓包、网络空间搜索引擎
CDN指纹识别
常规工具
ping
nslookup
超级ping
lbd(kali自带,负载均衡探测器)
专用工具
国内: http://cdn.chinaz.com/ 国外: https://www.cdnplanet.com/tools/cdnfinder/ 脚本: https://github.com/boy-hack/w8fuckcdn/ https://github.com/3xp10it/xcdn
端口服务信息
端口扫描工具(Linux)
访问端口 telnet、wget(下载工具)、nc -vz (访问监听端口)
常见端口漏洞
(1)文件共享服务
(2)远程连接服务
(3)web应用服务
(4)数据库服务
(5)常见网络协议
(6)特殊服务端口
\
端口扫描工具(Nmap)
参数类型
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等等配置
扫描操作
nmap testfire.net (IBM的一个靶场)
常用参数 192.168.59.132 (本地靶场 Metasploitable2-Linux)
简单扫描 nmap -sP 192.168.59.132
指定端口或范围扫描 nmap -p0-25535 192.168.59.132
探测操作系统 nmap -O 192.168.59.132
只进行主机发现,不进行端口扫描 nmap -sn 192.168.59.132
目录扫描工具(dirsearch)
目的:扫描后台的路径,扫描敏感文件
常见敏感目录和文件
1、robots.txt
2、网站备份文件
3、后台登录目录
4、安装包
5、上传目录
6、mysql管理接口
7、phpinfo(探针文件)
8、网站文本编辑器
9、/etc/passwd、/etc/shadow、/etc/sudoers
10、mac下的.DS_Store
11、vim编辑器备份文件
12、WEB-INF泄露
waf识别(常见waf识别)
waf:web应用防火墙
过滤http、https的请求
waf的作用
SQL Injection (SQLi):阻止SQL注入 Cross Site Scripting (XSS):阻止跨站脚本攻击 Local File Inclusion (LFI):阻止利用本地文件包含漏洞进行攻击 Remote File Inclusione(RFI):阻止利用远程文件包含漏洞进行攻击 Remote Code Execution (RCE):阻止利用远程命令执行漏洞进行攻击 PHP Code Injectiod:阻止PHP代码注入 HTTP Protocol Violations:阻止违反HTTP协议的恶意访问 HTTPoxy:阻止利用远程代理感染漏洞进行攻击 Sshllshock:阻止利用Shellshock漏洞进行攻击 Session Fixation:阻止利用Session会话ID不变的漏洞进行攻击 Scanner Detection:阻止黑客扫描网站 Metadata/Error Leakages:阻止源代码/错误信息泄露 Project Honey Pot Blacklist:蜜罐项目黑名单 GeoIP Country Blocking:根据判断IP地址归属地来进IP阻断
waf厂商
各种云:阿里云、腾讯云、华为云、百度云…… 安全狗、宝塔、360、知道创宇、长亭、安恒……
识别思路
额外的cookie; 任何响应或请求的附加标头; 响应内容(如果被阻止请求); 响应代码(如果被阻止请求); IP地址(云WAF); JS客户端模块(客户端WAF)
触发拦截
xss tring = '<script>alert("XSS");</script>' sqli string = "UNION SELECT ALL FROM information_schema AND ' or SLEEP(5) or '" lfi string = '../../../../etc/passwd' rce string = '/bin/cat /etc/passwd; ping 127.0.0.1; curl google.com' xxe string = '<!ENTITY xxe SYSTEM "file:///etc/shadow">]><pwn>&hack;</pwn>'
手动探测waf
云盾:响应头包含yundun关键字;页面源码有errors.aliyun.com
安全狗:相应头包含waf2.0、Safedog等字样
腾讯云:阻止响应页面,包含waf.tencent-clound.com阻止响应代码405 method not allow
安全宝:恶意请求时返回405恶意代码 响应头包含X-Powered-by:Anquanbao
百度云加速:响应头包含yunjisu-ngnix
自动探测工具 (wafw00f)
命令:waf00f 域名
cms识别
识别对象
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盾、云锁、宝塔、安全狗、360等
CMS信息(内容管理系统)
CMS包括什么? 博客(比如CSDN、博客园)、微博、团购网站、导航网站(hao123)、信息分类(58)、 问答网站(知乎)、商城、百科……企业官网、学校官网、医院官网……
主流cms
各种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指纹
版权信息
特定的md5值
查看网页源码
通过特定文件分析
cms识别工具
1、潮汐指纹:http://finger.tidesec.net/
2、whatweb工具(kali自带)
3、插件wappalyzer
4、网页源代码 meta name =“generator”
浏览器插件 Wappalyzer:https://www.wappalyzer.com whatruns :https://www.whatruns.com/
在线网站 http://whatweb.bugscaner.com http://finger.tidesec.com/
离线网站 御剑指纹扫描器(需要.NET Framework) Test404轻量CMS指纹识别 v2.1
3、搜索引擎收集信息
Google Hacking
运算符
完全匹配--“鸭梨”
任意字词 -- 批发 or 特价
不包含 -- 鸭梨-山大 (包含鸭梨不包含山大)
数字范围 -- num1..num2
高级语法
只搜索某个网站内容 site:taobao.com
网页的内容包括 allintext: 鸭梨大
标题出现:intitle:鸭梨大 /allintitle:鸭梨大
url地址包括:allinurl:admin.php /inurl:admin.php
文件类型指定: filetype:pdf
语法数据库
https://www.exploit-db.com/google-hacking-database https://github.com/BullsEye0/google_dork_list
工具
搜索Google Hacking、google dorks
4、网络空间搜索引擎(OSINT)
Shodan
示例
shodan host 127.0.0.1
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:127.0.0.1/24
工具
https://github.com/jakejarvis/awesome-shodan-queries (语法)
https://github.com/random-robbie/My-Shodan-Scripts (python脚本)
其他网络空间搜索引擎
censys
zoomeye(知道创宇)
fofa(白帽会)
工具
https://github.com/knownsec/Kunyu
https://github.com/coco413/DiscoverTarget
https://github.com/saucer-man/saucerframe
5、目录扫描
部署网站的服务器有一些敏感目录(配置文件、数据文件)/backup、/conf、/admin
本地文件包含(LFI)
常见的敏感目录和文件
robost.txt(禁止收索引擎搜索目录)
sitmap.xml(指导搜索引擎搜索目录页面)
网站的备份文件/数据
在线压缩工具
配置将文件备份压缩到某个地址
帝国备份王
后台登录的目录
/admin
/manage
安装包(源码)
.zip
/install
文件上传目录
/upload
upload.php
mysql的管理界面
web管理界面
phpadmin
程序的安装路径
/install
php的探针
phpinfo.php
雅黑探针
文本编辑器
linux
/etc/passwd
/etc/shadow--密码加密方式:SHA512 (破解或碰撞过)
/etc/sudoers
MacOS
.DS_Store
编辑器的临时文件
.swp
目录穿越
windows IIS
Apache
Tomecat WEB-INF
WEB-INF/web.xml : Web应用程序配置文件, 描述了servlet和其他的应 用组件配置及命名规则
WEB-INF/database.properties : 数据库配置文件
WEB-INF/classes/ : 一般用来存放Java类文件(.class)
WEB-INF/lib/ : 用来存放打包好的库(.jar)
WEB-INF/src/ : 用来放源代码(.asp和.php等)
其他非常规文件
secret.txt
password.txt
文件扫描思路
做法
直接在域名后面拼接路径/文件名,如果返回200,就是存在
扫描方法
递归
字典
暴力破解
爬虫
fuzz(模糊测试):字典:/word 、/index.php?word=
文件扫描字典
工具
dirb
dirbuster
御剑
Burp Suite
DirBrute
Dirsearch
Dirmap
wfuzz
注意事项
会被WAF、IDS识别
使用代理绕过
网络空间搜索引擎
防御
设置权限
删除敏感文件
使用WAF、IDS
Git信息收集
为什么Git会导致信息泄露
把私有仓库/隐私文件提交到了github
部署项目的时候,不小心把 .git 文件一起打包进 去,放到web网站的目录下
.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/pack/.pack
github搜索命令
kali in:file--搜索文件中包含kali的代码
kali in:path--搜索路径中包含kali的代码
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--搜索在2021年8月15日之后提交的
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信息泄露利用方式
找到.git2
目录扫描
robots.txt
搜索引擎搜索--intitle:"Index of /.git"
把.git下载到本地
https://github.com/BugScanTeam/GitHack--python GitHack.py xxx.com/.git/
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
案例
ctfhub技能树 https://www.ctfhub.com
buuctf https://buuoj.cn/