渗透测试方法论(GoogleHack和nmap)

信息探测类


使用Google等搜索引擎对某些特定的网络主机漏洞(通常是服务器上的脚本漏洞)进行搜索,以达到快速找到漏洞主机或特定主机的漏洞的目的。Google毫无疑问是当今世界上最强大的搜索引擎。然而,在黑客手中,它也是一个秘密武器,它能搜索到一些你意想不到的信息。

Google搜索引擎之所以强大,关键在于它详细的搜索关键词,以下是几个常用的搜索关键词:
inurl: 用于搜索网页上包含的URL. 这个语法对寻找网页上的搜索,帮助之类的很有用.
intext: 只搜索网页部分中包含的文字(也就是忽略了标题,URL等的文字).
site: 可以限制你搜索范围的域名.
filetype: 搜索文件的后缀或者扩展名
intitle: 限制你搜索的网页标题.
allintitle: 搜索所有关键字构成标题的网页. 但是推荐不要使用
link: 可以得到一个所有包含了某个指定URL的页面列表.

例如:link:www.google.com就可以得到所有连接到Google的页面。


利用GHDB结合搜索引擎高级指令进行敏感信息获取
1.搜索特殊的文件后缀
site:test.com inurl:jsp.bak   搜索站点中是否存在后缀为jsp.bak的文件,即,某些jsp的备份文件。
site:test.com filetype:sql    搜索站点中是否存在SQL脚本文件
site:test.com inurl:log      搜索站点中是否存在应用程序日志文件,如ftp日志、oracle日志等
site:test.com filetype:txt    查找站点中是否有包含敏感信息的txt文件
site:test.com filetype:conf   查找站点中是否有包含敏感信息的conf文件

2.查找第三方组件或程序
site: test.com inurl:/fckeditor/  搜索站点是否使用了fckeditor
site: test.com inurl:ewebeditor  搜索站点是否使用了 ewebeditor


3.搜索错误的配置
site: test.com intitle:”index of /”   搜索站点是否使用了列目录功能
site: test.com inurl:”examples”     搜索站点中是否存在测试代码

4.搜索管理后台
site: test.com inurl:admin
site: test.com inurl:login
site: test.com inurl:manage
site: test.com inurl:system
site: test.com inurl:console

Nmap



Nmap是一个网络连接端口扫描软件,用来扫描网上电脑开放的网络连接端口。确定哪些服务运行在哪些连接端口,并且推断计算机运行哪个操作系统。它是网络管理员必用的软件之一,以及用以评估网络系统安全。
Nmap的参数和选项繁多,功能非常丰富。我们先来看一下Nmap的通用命令格式:(详细教程及下载方式参见:http://nmap.org/

(一) 主机发现
1.原理
主机发现的原理与Ping命令类似,发送探测包到目标主机,如果收到回复,那么说明目标主机是开启的。Nmap支持十多种不同的主机探测方式,比如发送ICMP ECHO/TIMESTAMP/NETMASK报文、发送TCPSYN/ACK包、发送SCTP INIT/COOKIE-ECHO包,用户可以在不同的条件下灵活选用不同的方式来探测目标机。

2.主机发现的基本用法
-sL: List Scan 列表扫描,仅将指定的目标的IP列举出来,不进行主机发现。
-sn: Ping Scan 只进行主机发现,不进行端口扫描。
-Pn: 将所有指定的主机视作开启的,跳过主机发现的过程。
-PS/PA/PU/PY[portlist]: 使用TCPSYN/ACK或SCTP INIT/ECHO方式进行发现。
-PE/PP/PM: 使用ICMP echo, timestamp, and netmask 请求包发现主机。
-PO[protocollist]: 使用IP协议包探测对方主机是否开启。
-n/-R: -n表示不进行DNS解析;-R表示总是进行DNS解析。
–dns-servers <serv1[,serv2],…>: 指定DNS服务器。
–system-dns: 指定使用系统的DNS服务器
–traceroute: 追踪每个路由节点

(二)端口扫描
1.原理
端口扫描是Nmap最基本最核心的功能,用于确定目标主机的TCP/UDP端口的开放情况。默认情况下,Nmap会扫描1000个最有可能开放的TCP端口。Nmap通过探测将端口划分为6个状态:
open:端口是开放的。
closed:端口是关闭的。
filtered:端口被防火墙IDS/IPS屏蔽,无法确定其状态。
unfiltered:端口没有被屏蔽,但是否开放需要进一步确定。
open|filtered:端口是开放的或被屏蔽。
closed|filtered :端口是关闭的或被屏蔽。

2.端口扫描用法
-sS/sT/sA/sW/sM:指定使用 TCP SYN/Connect()/ACK/Window/Maimon scans的方式来对目标主机进行扫描。
-sU: 指定使用UDP扫描方式确定目标主机的UDP端口状况。
-sN/sF/sX: 指定使用TCP Null, FIN, and Xmas scans秘密扫描方式来协助探测对方的TCP端口状态。
–scanflags <flags>: 定制TCP包的flags。
-sI <zombiehost[:probeport]>: 指定使用idle scan方式来扫描目标主机(前提需要找到合适的zombie host)
-sY/sZ: 使用SCTP INIT/COOKIE-ECHO来扫描SCTP协议端口的开放的情况。
-sO: 使用IP protocol 扫描确定目标机支持的协议类型。
-b <FTP relay host>: 使用FTP bounce scan扫描方式

(三)版本侦测
1.原理
首先检查open与open|filtered状态的端口是否在排除端口列表内。如果在排除列表,将该端口剔除。
如果是TCP端口,尝试建立TCP连接。尝试等待片刻(通常6秒或更多,具体时间可以查询文件nmap-services-probes中Probe TCP NULL q||对应的totalwaitms)。

通常在等待时间内,会接收到目标机发送的“WelcomeBanner”信息。nmap将接收到的Banner与nmap-services-probes中NULL probe中的签名进行对比。查找对应应用程序的名字与版本信息。

如果通过“Welcome Banner”无法确定应用程序版本,那么nmap再尝试发送其他的探测包(即从nmap-services-probes中挑选合适的probe),将probe得到回复包与数据库中的签名进行对比。如果反复探测都无法得出具体应用,那么打印出应用返回报文,让用户自行进一步判定。

如果是UDP端口,那么直接使用nmap-services-probes中探测包进行探测匹配。根据结果对比分析出UDP应用服务类型。

如果探测到应用程序是SSL,那么调用openSSL进一步的侦查运行在SSL之上的具体的应用类型。

如果探测到应用程序是SunRPC,那么调用brute-force RPC grinder进一步探测具体服务。

2. 版本侦测用法
-sV: 指定让Nmap进行版本侦测
–version-intensity <level>: 指定版本侦测强度(0-9),默认为7。数值越高,探测出的服务越准确,但是运行时间会比较长。
–version-light: 指定使用轻量侦测方式 (intensity 2)
–version-all: 尝试使用所有的probes进行侦测 (intensity 9)
–version-trace: 显示出详细的版本侦测过程信息。

(四)OS侦测
1.原理
nmap使用TCP/IP协议栈指纹来识别不同的操作系统和设备。在RFC规范中,有些地方对TCP/IP的实现并没有强制规定,由此不同的TCP/IP方案中可能都有自己的特定方式。Nmap主要是根据这些细节上的差异来判断操作系统的类型的。

具体实现方式如下:
Nmap内部包含了2600多已知系统的指纹特征(在文件nmap-os-db文件中)。将此指纹数据库作为进行指纹对比的样本库。分别挑选一个open和closed的端口,向其发送经过精心设计的TCP/UDP/ICMP数据包,根据返回的数据包生成一份系统指纹。将探测生成的指纹与nmap-os-db中指纹进行对比,查找匹配的系统。如果无法匹配,以概率形式列举出可能的系统。

2.OS侦测用法
-O: 指定Nmap进行OS侦测。
–osscan-limit: 限制Nmap只对确定的主机的进行OS探测(至少需确知该主机分别有一个open和closed的端口)。
–osscan-guess: 大胆猜测对方的主机的系统类型。由此准确性会下降不少,但会尽可能多为用户提供潜在的操作系统。

打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

安全文库 WEB安全 渗透测试方法论(GoogleHack和nmap) https://www.safewiki.org/anquan/fenlei/310.html

渗透测试方法论(GoogleHack和nmap)
上一篇:

已经没有上一篇了!

渗透测试方法论(GoogleHack和nmap)
下一篇:

已经没有下一篇了!

常见问题

相关文章