渗透测试—信息收集

admin 2024年2月22日12:28:08评论21 views字数 11121阅读37分4秒阅读模式

0.前言

由于都是发自己的文章,所以也不会有那么多的内容发布,一周可能也就更新个两篇,如果工作忙,可能一周就一篇,但是文章都会很细致,暂时只更新学习笔记,至于挖洞思路,小菜鸟还不配。

0.1.免责声明

传播、利用本公众号剁椒鱼头没剁椒所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,公众号剁椒鱼头没剁椒及作者不为此承担任何责任,一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除并致歉。谢谢!

0.2.其他

本次新一轮的更新不确定要不要发到 GitHub 上,倘若发 MD 版本的话,会通知,本次更新不再是小迪的啦,但是总体感觉也还行吧,发高端的我也不会呀,转载我也不想转呀!

1. 收集域名信息

关于域名的收集,一般情况下如果是授权测试的,那么基本上甲方都会将一下相关的信息罗列出来,但是也不排除会遇到一些直接给你一个域名,而不不会给那么详细信息的甲方,那么就需要你自己去对这些域名进行信息收集。

1.1. 域名注册信息

这里在查询的时候需要注意,有些大型企业或者某些企业可能会不让你查询这些信息,例如下面去查询百度的时候,就出现了违规域名。

https://whois.chinaz.com
image-20240221121637755

而如果查询的是个人的域名则会出现,一些公司,而个人的情况下公司这里会显示注册人的名字拼音,包括一些其他的内容,这些就需要自己去看了。

image-20240221122039637

当然这里还有很多可以查询这些信息的网站,这里就自己去尝试看看吧。

中国万网域名WHOIS信息查询地址:
https://whois.aliyun.com/

西部数码域名wHOIS信息查询地址:
https://whois.west.cn/

新网域名WHOIS信息查询地址:
https://whois.xinnet.com/

纳网域名wHOIS信息查询地址:
http://whois.nawang.cn/

中资源域名wHOIS信息查询地址:
https://www.zzy.cn/domain/whois.html

三五互联域名wHOIS信息查询地址:
https://cp.35.com/chinese/whois.php

新网互联域名wHOIS信息查询地址:
https://crm.dns.com.cn/show/domain/whois/index.do

美橙互联域名wHOIS信息查询地址:
https://www.cndns.com/whois/index.aspx

爱名网域名wHOIS信息查询地址:
https://www.22.cn/domain/

1.2. SEO 信息收集

SEO 能够展现出来的信息更多,具体的内容那些是自己需要的还需要自己去分辨,不单单可以查询公司类型的域名,也可以查询个人的域名。

https://seo.chinaz.com
image-20240221123044916

1.3. 子域名收集

关于子域名是什么意思就不想介绍了,想必应该都知道。

1.3.1. 在线子域名收集

这里假设基于一个www.xxx.com,这里还需要看看xxx.com下除了www还有哪些子域名,那么就可以使用爆破,这里就需要使用自己的平时收集的字典,当然,如果自己平常也没收集,那么可以使用工具或者一些网站来实现信息收集。

https://tool.chinaz.com/subdomain/
image-20240221123541359

当然还有一些其他收集子域名的网站,例如下面这个网站,不单单可以收集子域名,还可以收集 IP 地址。

https://site.ip138.com/
image-20240221123853528

如果自己想要去找查询子域名的网站,可以直接在浏览器中输入查询子域名。

image-20240221124005787

当然还有一些是通过字典来爆破实现收集的。

https://scan.javasec.cn/
image-20240221124323274

1.3.2. 子域名收集工具

收集工具,在GitHub上有很多以及一些工具箱中都会含有子域名收集的工具,这里我也不想去找这些地址连接,在线的也够初学者使用的了,关于这些工具,可以在后面密码就能够接触到。

这里我就提供一个吧,自己去这个地址下载,同时别再回头问我说你给的工具有毒,你看看那个安全工具不会被报毒,服了......这也是我现在实在不敢提供直接下载好的工具,自己去连接下载吧。

https://www.webshell.cc/6384.html
image-20240221125018983

下面几个下载连接自己去下载,自己去测试,GitHub上面的项目都会有介绍,看不懂英文的自己使用翻译,同时很多软件都是需要java环境和python环境的,自行下载环境。

所有不确定的工具均放入虚拟机中运行,不要放物理机中,出现问题后果自负。

https://github.com/shmilylty/OneForAll
https://github.com/lijiejie/subDomainsBrute

还是一句话,子域名能不能爆破全,取决于字典大不大,GitHub 上一搜一大堆字典,下面就是一个字典连接。

https://github.com/TheKingOfDuck/fuzzDicts

1.4. 域名备案信息

这里能够看到 ICP 备案是XXXX-1,这里-1就是说明这个备案下不单单只有这一个域名,还有其他的域名。

https://icp.chinaz.com
image-20240221130324044

但是想要看该备案下还有那些域名发现要开VIP,那么就没辙了。

image-20240221130612297

1.5. ICP 备案号查询

这里可以直接去官网查询,都是可以查询到的,同时点击详情后,能够看到相关的网站域名。

https://beian.miit.gov.cn/#/Integrated/recordQuery
image-20240221130834718
image-20240221130921070

1.6. SSL 证书查询

这个能够查询到SSL证书的状态。

https://myssl.com/
image-20240221131344123

2. 收集真实 IP

在测试过程中需要获取真实的IP,如果获取到的是CDN地址,是没什么意义的,比如你获取到的真实的 IP,就可以直接测试那些端口开放了,同时针对这些端口所开放的服务,采取不同的手段来进行测试。

2.1. 超级 ping

一般在下面IP独立个数超过两个的话,基本上就有可能存在CDN加速。

https://ping.chinaz.com/baidu.com
image-20240221135329469

2.2. Ping

默认情况下你去 ping 一个地址的时候,返回的地址应该是差不多的,但是当变成很长一段的时候,大概率是经过跳转加速的,那么就可能存在CDN

image-20240221135803987

2.3. CDN 绕过

使用CDN是需要花钱的,所以一般厂商都会在主站上实施CDN,所以可以尝试找其他子域名,来绕过CDN。同时绕 CDN 有时候是需要运气的,不是百分百能够绕过。

https://x.threatbook.com/v5/domain/wu1aoban.top
https://x.threatbook.cn/ ###微步在线
http://too1bar.netcraft.com/site_report?ur1=www.wu1aoban.top ###在线域名信息查询
http://viewdns.info/  ###DNS、IP等查询
https://too1s.ipip.net/cdn.php  ###CDN查询IP
https://securitytrai1s.com/domain/wu1aoban.top/dns
image-20240221141541752

3. 收集旁站或 C 段 IP

有时候主站我们测试不了,我们就可以对旁站进行测试,由于某些大厂业务较多,可能会买很多的公网IP,而且这些厂商在购买公网IP的时候,不太可能会去说某一个网段买一个IP,另外一个网段再买一个IP的,基本上都是在一个网段中挑几个连续的或者直接买一个网段。

所以这时候就可以根据获取到的IP地址进行旁站或CIP的收集。

3.1. 旁站或 C 段

https://chapangzhan.com/
image-20240221142132150

御剑工具集也可以队旁站进行测试,这些工具都可以通过工具箱等方式获取,这里后台发送"御剑工具集"获取。

image-20240221143217014

3.2. 端口分析

端口:21 服务:FTP/TFTP/VSFTPD 总结:爆破/嗅探/溢出/后门
端口:22 服务:ssh远程连接      总结:爆破/openssh漏洞
端口:23 服务:Telnet远程连接   总结:爆破/嗅探/弱口令
端口:25 服务:SMTP邮件服务     总结:邮件伪造
端口:53 服务:DNS域名解析系统   总结:域传送/劫持/缓存投毒/欺骗
端口:67/68 服务:dhcp服务      总结:劫持/欺骗
端口:110 服务:pop3     总结:爆破/嗅探
端口:139 服务:Samba服务   总结:爆破/未授权访问/远程命令执行
端口:143 服务:Imap协议   总结:爆破161SNMP协议爆破/搜集目标内网信息
端口:389 服务:Ldap目录访问协议 总结:注入/未授权访问/弱口令
端口:445 服务:smb     总结:ms17-010/端口溢出
端口:512/513/514 服务:Linux Rexec服务 总结:爆破/Rlogin登陆
端口:873 服务:Rsync服务     总结:文件上传/未授权访问
端口:1080 服务:socket      总结:爆破
端口:1352 服务:Lotus domino邮件服务   总结:爆破/信息泄漏
端口:1433 服务:mssql      总结:爆破/注入/SA弱口令
端口:1521 服务:oracle       总结:爆破/注入/TNS爆破/反弹shell2049Nfs服务配置不当
端口:2181 服务:zookeeper服务      总结:未授权访问
端口:2375 服务:docker remote api    总结:未授权访问
端口:3306 服务:mysql     总结:爆破/注入
端口:3389 服务:Rdp远程桌面链接        总结:爆破/shift后门
端口:4848 服务:GlassFish控制台       总结:爆破/认证绕过
端口:5000 服务:sybase/DB2数据库   总结:爆破/注入/提权
端口:5432 服务:postgresql       总结:爆破/注入/缓冲区溢出
端口:5632 服务:pcanywhere服务     总结:抓密码/代码执行
端口:5900 服务:vnc      总结:爆破/认证绕过
端口:6379 服务:Redis数据库        总结:未授权访问/爆破
端口:7001/7002 服务:weblogic   总结:java反序列化/控制台弱口令
端口:80/443 服务:http/https   总结:web应用漏洞/心脏滴血
端口:8069 服务:zabbix服务      总结:远程命令执行/注入
端口:8161 服务:activemq    总结:弱口令/写文件
端口:8080/8089 服务:Jboss/Tomcat/Resin 总结:爆破/PUT文件上传/反序列化
端口:8083/8086 服务:influxDB   总结:未授权访问
端口:9000 服务:fastcgi     总结:远程命令执行
端口:9090 服务:Websphere    总结:控制台爆破/java反序列化/弱口令
端口:9200/9300 服务:elasticsearch   总结:远程代码执行
端口:11211 服务:memcached    总结:未授权访问
端口:27017/27018 服务:mongodb   总结:未授权访问/爆破

4. 收集端口及服务

关于本部分内容,主要就是通过IP地址获取到上面的端口,如何通过端口判断服务,通过服务的版本等等信息获取相关历史漏洞或者密码爆破等。

4.1. Nmap

Nmap(_网络映射器_)是Gordon Lyon最初编写的一种安全扫描器,用于发现计算机网络上的主机和服务,从而创建网络的“映射”。为了实现其目标,Nmap将特定数据包发送到目标主机,然后分析响应Nmap强大的网络工具,用于枚举和测试网络。

4.1.1. 主机发现

Nmap主机发现过程是指网络主机的枚举,以收集有关它们的信息,以在渗透测试中构建攻击计划。

在主机发现过程中,Nmap 使用 Ping 等元素和内置脚本来查找操作系统、端口以及使用 TCPUDP 协议运行的服务。如果指定,您可以启用 Nmap 脚本引擎,该引擎使用各种脚本来查找主机的漏洞。

Nmap 使用的主机发现过程利用原始 ICMP 数据包。

这里更多的功能我就不介绍了,可以直接去相应的手册中寻找即可。

nmap -PE -sn 10.1.1.199
image-20240221154101099

常见参数:

-SL: List scan列表扫描,仅将指定的目标的IP列举出来,不进行主机发现。
-sn: Ping scan只进行主机发现,不进行端口扫描。用的多。
-Pn∶将所有指定的主机视作开启的,跳过主机发现的过程。直接探测端口,通过端口探测结果判断主机是否存活
-PS/PA/PU/PY[port7ist]:使用TCPSYN/ACK或SCTP INIT/ECHO方式进行发现。
#nmap -PS 192.168.2.0/24 #不指定端口的话会自动扫描常用端口(1000个),速度会慢。
-PE/PP/PM:使用ICMP echo,timestamp,and netmask 请求包发现主机。
-Po[protocol1ist]:使用IP协议包探测对方主机是否开启。
-n/-R : -n表示不进行DNS解析;-R表示总是进行DNS解析。
--dns-servers cserv1[, serv2],...>:指定DNS服务器。
--system-dns:指定使用系统的DNS服务器
--traceroute:追踪每个路由节点

例如这里可以扫描一下在 192.168.3.1 到 100 下有那些主机存活。

nmap -sn 192.168.3.1-100
image-20240221154804946

4.1.2. 端口扫描

端口扫描是Nmap的最基础的核心功能,用于确定目标主机的端口开放情况,默认情况下Nmap会扫描1000个最有可能开放的TCP端口,Nmap通过探测将端口划分为 6 个状态:

open:端口是开放的。
closed:端口是关闭的。
filtered:端口被防火墙IDS/IPS屏蔽,无法确定其状态。
unfiltered:端口没有被屏蔽,但是否开放需要进一步确定。
open|filtered:端口是开放的或被屏蔽。
closed|filtered :端口是关闭的或被屏蔽。

扫描方式分为 3 个状态:

开放扫描:会产生大量的审计数据,容易被对方发现,但其可靠性高;例如:TCP Connect类。 效率高
隐蔽扫描:能有效的避免入侵检测系统和防火墙的检测,但扫描使数据包容易被丢弃从而产生错误的探测信
息;例如:TCP FIN类。 效率低
半开放扫描:隐蔽性和可靠性介于前两者之间。例如:TCP SYN类。

常见参数:

-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扫描方式
-p <port ranges> 只扫描指定端口eg:-p22; -p1-65535; -p U:53,111,137,T:21-25,80,139,8080,S:9
-F 扫描比默认扫描更少的端口
--top-posts <number> 扫描<number>数量的最常见的端口

最基础的端口扫描,就是直接跟IP,不带任何参数,说是不带,但是还是携带了默认参数,其他的使用方式自己去测试。

nmap IP地址
image-20240221155745088

4.1.3. 版本探测

有时候我们希望可以知道正在运行什么邮件和域名服务器以及它们的版本。有一个精确的版本号对了解服务器有什么漏洞有巨大的帮助,在Nmap中版本探测可以帮您获得该信息。

常见参数:

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

4.1.4. OS 探测

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

这里我自己找设备没扫描出来,我就直接搞一张别人的图片。

nmap -O IP地址
image-20240221161722950

5. 收集网站指纹

在渗透测试中,对目标服务器进行指纹识别是非常有必要的,因为只有识别出相应的web容器或者CMS,才能查看与其相关的漏洞,然后利用可用的漏洞进行相应的渗透测试。

5.1. 在线网站

https://www.yunsee.cn/   ##云悉
http://finger.tidesec.com/  ##潮汐
image-20240221160715714

5.2. 工具类

御剑 WEB 扫描,当出现相关的 CMS 后就可以去百度搜索相关的 CMS 漏洞了。后台发送"御剑工具集"获取

image-20240221162014841

Wappalyzer插件,是一款开发必备的网站技术嗅探工具,能够用来检测和分析当前网站的各种参数,比如平台架构、编程语言、网站环境、服务器配置、javascript框架等。Wappalyzer插件是一款功能强大、简单易操作的网站技术分析检测工具,能帮你对所访问网站上使用的技术一目了然。通过它,能够一键分析指定网站所采用的平台构架、统计工具、服务器配置、Web框架、编程语言等参数。

作为开发者,当我们看到别人的网站有许多值得借鉴的地方时,也会很想探索一番,到底对方都使用了哪些技术配置。如果你是大神的话,可能很容易就能看出来,但对于许多普通人来说,借助第三方的网站技术分析工具,也能达到这个目的。

image-20240221162605248

6. 收集敏感信息

由于发布网站时,服务器配置问题,导致目录能够在浏览器中打开,从而引起信息泄露,造成安全隐患。例如你在网站目录下放置1.txt,而这个1.txt中存放网站的密码,那么这样攻击者通过该手段这样就能够直接登录网站了。

https://zhuanlan.zhihu.com/p/110389472  ##参考链接

6.1. 目录信息收集

7kbstorm,具体使用可以去GitHub上看,其实不用说看界面也能看懂如何使用。

https://github.com/7kbstorm/7kbscan-WebPathBrute
image-20240221163415155

6.2. 代码管理工具信息泄露

这里主要是出现在搭建网站的时候会出现源码泄露的情况,很多情况下我们都是对网站进行黑盒测试,而如果获取到源码后,那么漏洞不就相当于自己送过来的么。

6.2.1. Git 源码泄露

Git是一个开源的分布式版本控制系统,在执行git init初始化目录的时候,会在当前目录下自动创建一个.git目录,用来记录代码的变更记录等。发布代码的时候,如果没有把.git这个目录删除,就直接发布到了服务器上,攻击者就可以通过它来恢复源代码。

https://github.com/lijiejie/GitHack

用法:

GitHack.py http://www.openssl.org/.git/

建议删除.git 目录或者修改中间件配置进行对.git 隐藏文件夹的访问。

6.2.2. SVN 源码泄露

SVN是一个开放源代码的版本控制系统。在使用 SVN 管理本地代码过程中,会自动生成一个名为.svn的隐藏文件夹,其中包含重要的源代码信息。网站管理员在发布代码时,没有使用‘导出’功能,而是直接复制代码文件夹到WEB服务器上,这就使.svn隐藏文件夹被暴露于外网环境,可以利用.svn/entries文件,获取到服务器源码。

https://github.com/callmefeifei/SvnHack

用法:看官网介绍,主要我也没环境,有工具也无法测试。(借图)

python SvnHack.py -u http://trafficbonus.com/.svn/entries
image-20240221164346688

建议删除 web 目录中所有.svn 隐藏文件夹,开发人员在使用 SVN 时,严格使用导出功能,禁止直接复制代码。

7. 综合性信息收集

这里的收集就相对来说收集的跟全面,同时也是更多的都是采用网络,想要很好的进行信息收集,那么一定需要会 fq,关于这技术自己想办法吧。

7.1. Google hack(高级搜索)

inurl: 用于查找含有该值的所有url网址网页。例:inurl:mail(可找一些免费邮箱)

related::找出和该网址类似的网站,比如想知道和amazon.com类似的大型网络书店有哪些时输入

amazon.com网址。例:related:amazon.com

intext: 只搜索网页部分中包含的文字(也就是忽略了标题,URL等的文字).

filetype: 搜索通过文件的后缀或者扩展名来搜索含有这类文件的网页

intitle: 标题中存在关键字的网页

allintitle: 搜索所有关键字构成标题的网页. 但是推荐不要使用

link: 可以得到一个所有包含了某个指定URL的页面列表. 当我们使用link:URL提交查询的时候,Google会返回跟此URL做了链接的网站。例 [link:www.baidu.com],提交这个查询,我们将得到所有跟www.baidu.com这个网站做了链接的网站。(link是个单独的语 法,只能单独使用,且后面不能跟查询关键词,跟能跟URL)

location: 当我们提交location进行Google新闻查询的时候,Google仅会返回你当前指定区的跟查询关键词相关的网页。例[ queen location:canada ],提交这个查询,Google会返回加拿大的跟查询关键词”queen”相匹配的网站。

site: 搜索含有该域名的网页,google会限制尽在某个网站或者说域下面进行搜索。使用site进行站点搜索时,一般常见用法有:
site:ooxx.com filetype:xls # 支持组合搜索
site:xxx.com admin # 一般公司的后台系统都带有admin啊,login啊,内部系统啊之类的关键字
site:xxx.xxx login
site:xxx.xxx system
site:xxx.xxx 管理
site:xxx.xxx 登录
site:xxx.xxx 内部

例如搜索SQL注入,那么SQL注入最简单的判断就是有没有 ID 信息,那么这里就可以根据这个 ID 信息进行搜索。

inurl:.php?id= 公司
image-20240221165442303

7.2. 黑暗搜索引擎

关于这些引擎的用法网站上都有详细的介绍,这里就不介绍了,直接就是给几个网站吧。

7.2.1. shodan

https://www.shodan.io/

参考语法:

hostname:搜索指定的主机或域名,例如 hostname:"google"
port:搜索指定的端口或服务,例如 port:"21"
country:搜索指定的国家,例如 country:"CN"
city:搜索指定的城市,例如 city:"Hefei"
org:搜索指定的组织或公司,例如 org:"google"
isp:搜索指定的ISP供应商,例如 isp:"China Telecom"
product:搜索指定的操作系统/软件/平台,例如 product:"Apache httpd"
version:搜索指定的软件版本,例如 version:"1.6.2"
geo:搜索指定的地理位置,参数为经纬度,例如 geo:"31.8639, 117.2808"
before/after:搜索指定收录时间前后的数据,格式为dd-mm-yy,例如 before:"11-11-15"
net:搜索指定的IP地址或子网,例如 net:"210.45.240.0/24"
image-20240221165719554

7.2.2. FOFA

https://fofa.info/
image-20240221165827334

语法都在界面中,可以自行去查找,不过需要注意免费的都查不了多少内容。

image-20240221165839147

7.2.3. 钟馗之眼

同样这里也是有语法说明的,这里就不在赘述。

https://www.zoomeye.org/
image-20240222082347067

7.3. ARL 灯塔资产侦察系统

这里参考下面的文章即可。

ARL 灯塔安装与使用

https://github.com/TophantTechnology/ARL/releases/tag/v2.6  ##下载地址
image-20240222082841286

8. APP 与小程序信息收集

关于这个两个方面,我在之前都已经有涉及写过,可以去合集中寻找即可,下面就是合集的地址。

https://mp.weixin.qq.com/mp/appmsgalbum?__biz=Mzg3MDk0OTc1Nw==&action=getalbum&album_id=2916644331212488707#wechat_redirect

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年2月22日12:28:08
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   渗透测试—信息收集http://cn-sec.com/archives/2514756.html

发表评论

匿名网友 填写信息