信息收集

在平常的渗透测试的过程中,最重要也是最首要的一步就是信息收集,在这个阶段我们要尽可能的收集目标组织的信息,所谓“知己知彼、百战不殆”,我们越是了解目标,渗透起来就越容易。

收集域名信息

  • whois 查询
    • whois是一个标准的互联网协议,可用于收集网络注册信息,域名的注册、IP地址等信息。可以用于查询域名是否已被注册以及注册域名的详细信息的数据库(域名所有人、域名注册商等)。在whois查询中,得到注册人的姓名和邮箱可以用于后期通过搜索引擎、社交网站爆破字典等,一般的小站点域名的所有人往往就是管理员。
    • kali系统下whois默认安装:whois example.domain
      upload successful
    • 爱站工具网:https://whois.aizhan.com/
    • 站长之家:https://whois.chinaz.com
    • VirusTotal:https://www.virustotal.com/
  • 备案信息查询

收集敏感信息

  • Google搜索敏感信息
    upload successful
  • GitHub搜索敏感信息:寻找相关敏感信息,如数据库连接信息、邮箱密码、uc-key、阿里的osskey,有时还可以找到泄露的源代码等
  • 乌云等漏洞平台搜索历史漏洞信息
  • 云盘搜索:https://www.chaonengsou.com/

子域名收集

常用端口信息

  • 常用工具
    • Nmap
    • 御剑高速TCP端口扫描
    • Masscan
    • ZMap
    • Goby
端口 服务 入侵方式
21 ftp/tftp/vsftpd文件传输协议 爆破/嗅探/溢出/后门/下载
22 ssh远程连接 爆破/openssh漏洞
23 Telnet远程连接 爆破/嗅探/弱口令
25 SMTP邮件服务 邮件伪造
53 DNS域名解析系统 域传送/劫持/缓存投毒/欺骗
67/68 dhcp服务 劫持/欺骗
110 pop3 爆破/嗅探
139 Samba服务 爆破/未授权访问/远程命令执行
143 Imap协议 爆破
161 SNMP协议 爆破/搜集目标内网信息
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爆破/反弹shell
2049 Nfs服务 配置不当
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 未授权访问/爆破
  • web服务类
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
tomcat--80/8080/8009
manager弱口令
put上传webshell
HTTP慢速攻击
ajr文件包含漏洞-CVE-2020-1938
Jboss--8080
后台弱口令
console后台部署war包
JAVA反序列化
远程代码执行
webSphere--9080
后台弱口令
任意文件泄露
JAVA反序列化
weblogic--7001/7002
后台弱口令
console后台部署war包
SSRF
测试页面上传webshell
JAVA反序列化
CVE-2018-2628
CVE-2018-2893
CVE-2017-10271
CVE-2019-2725
CVE-2019-2729
Glassfish--8080/4848
暴力破解
任意文件读取
认证绕过
Jetty--8080
远程共享缓冲区溢出
Apache--80/8080
HTTP慢速攻击
解析漏洞
目录遍历
ApacheSolr--8983
远程命令执行
CVE-2017-12629
CVE-2019-0193
IIS--80
put上传webshell
IIS解析漏洞
IIS提权
IIS远程远程代码执行-CVE-2017-7269
Resin--8080
目录遍历
远程文件读取
Axis2--8080
后台弱口令
Lutos--1352
后台弱口令
信息泄露
跨站脚本攻击
Nginx--80/443
HTTP慢速攻击
解析漏洞
  • 数据库类
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
Mysql--3306
弱口令
身份认证漏洞-cve-2012-2122
拒绝服务攻击
phpmyadmin万能密码or弱口令
UDF/MOF提权
Mssql--1433
弱口令
存储过程提权
Oralce--1521
弱口令
TNS漏洞
Redis--6379
弱口令
未经授权访问
PostgreSQL--5432
弱口令
缓冲区溢出-cve-2014-2669
MongoDB--27001
弱口令
未经授权访问
DB2--5000
安全限制绕过进行未经授权操作-cve-2015-1922
SysBase--5000/4100
弱口令
命令注入
Memcache--11211
未经授权访问
配置漏洞
ElasticSearch--9200/9300
未经授权访问
远程代码执行
文件办理
写入webshell
  • 大数据类
1
2
3
4
5
Hadoop--50010
远程命令执行
Zookeeper--2181
未经授权访问

  • 文件共享
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Ftp--21
弱口令
匿名访问
上传后门
远程溢出
跳转攻击
NFS--2049
未经授权访问
Samba--137
弱口令
未经授权访问
远程代码执行-CVE-2015-0240
LDAP--389
弱口令
注入
未经授权访问
  • 远程访问
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
SSH--22
弱口令
28退格漏洞
OpenSSL漏洞
用户名枚举
Telent--23
弱口令
RDP--3389
弱口令
Shitf粘滞键后门
缓冲区溢出
MS12-020
CVE-2019-0708
VNC--5901
弱口令
认证口令绕过
拒绝服务攻击-CVE-2015-5239
权限提升-CVE-2013-6886
Pcanywhere--5632
拒绝服务攻击
权限提升
代码执行
X11--6000
未经授权访问-CVE-1999-0526
  • 邮件服务
1
2
3
4
5
6
7
8
9
10
SMTP--25/465
弱口令
未经授权访问
邮件伪造
POP3--110/995
弱口令
未经授权访问
IMAP--143/993
弱口令
任意文件读取
  • 其他服务
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
DNS--53
DNS区域传输
DNS劫持
DNS欺骗
DNS缓存投毒
DNS隧道
DHCP--67/68
DHCP劫持
DHCP欺骗
SNMP--161
弱口令
Rlogin--512/513/514
rlogin登录
Rsync--873
未经授权访问
本地权限提升
Zabbix--8069
远程命令执行
RMI--1090/1099
JAVA反序列化
Docker--2375
未经授权访问

指纹识别

在web渗透过程中,Web指纹识别是信息收集环节中一个比较重要的步骤,通过一些开源的工具、平台或者手工检测CMS系统是公开的CMS程序还是二次开发至关重要,能准确的获取CMS类型、Web服务组件类型及版本信息可以帮助安全工程师快速有效的去验证已知漏洞。对目标渗透测试过程中,目标的cms是十分重要的信息,有了目标的cms,就可以利用相关bug进行测试,进行代码审计等。

识别方式
网站特有文件:如/templets/default/style/dedecms.css—dedecms
网站独有文件的md5:如favicon.ico,但是该文件可以被修改导致不准确。
网站文件命名规则
返回头的关键字
网页关键字:如/data/sessions/index.html——dedecms
Url特征
Meta特征
Script特征
robots.txt
网站路径特征
网站静态资源
爬虫网站目录信息

查找真实IP

对应给定的目标,例如一个网站,首先获得的是目标域名,下一步就是找到域名背后的服务器ip,由于当前网站大多使用CDN(内容分发网络)对网站访问流量进行分流和一定程度的攻击防护,所以找出CDN背后的服务器真实ip就是一种“刚需”了。

  • 验证是否有CDN
  • 绕过 CDN 查找网站真实 IP
    • 查询历史DNS记录
    • 查询子域名:毕竟 CDN 还是不便宜的,所以很多站长可能只会对主站或者流量大的子站点做了 CDN,而很多小站子站点又跟主站在同一台服务器或者同一个C段内,此时就可以通过查询子域名对应的 IP 来辅助查找网站的真实IP。常用查找子域名方法有:微步在线(https://x.threatbook.cn/ )、 Dnsdb查询法。(https://dnsdb.io/zh-cn/ )、 Google 搜索(Google site:baidu.com -www就能查看除www外的子域名)、各种子域名扫描器。
    • 搜索引擎:常见的有以前的钟馗之眼,shodan,fofa搜索。以fofa为例,只需输入:title:“网站的title关键字”或者body:“网站的body特征”就可以找出fofa收录的有这些关键字的ip域名,很多时候能获取网站的真实ip。
    • 利用SSL证书寻找真实原始IP:对于目标网站的SSL证书,要查找其使用的IPv4主机,只需将”SHA1 fingerprint”(签名证书的sha1值)粘贴到Censys IPv4主机搜索中,即可找到证书,使用此方法可以轻松找到配置错误的Web服务器。
    • 利用HTTP标头寻找真实原始IP:借助SecurityTrails这样的平台,任何人都可以在茫茫的大数据搜索到自己的目标,甚至可以通过比较HTTP标头来查找到原始服务器。
    • 利用网站返回的内容寻找真实原始IP:如果原始服务器IP也返回了网站的内容,那么可以在网上搜索大量的相关数据。浏览网站源代码,寻找独特的代码片段。在JavaScript中使用具有访问或标识符参数的第三方服务(例如Google Analytics,reCAPTCHA)是攻击者经常使用的方法。
    • 使用国外主机解析域名。
    • 国内很多 CDN 厂商因为各种原因只做了国内的线路,而针对国外的线路可能几乎没有,此时我们使用国外的主机直接访问可能就能获取到真实IP。
    • 网站漏洞查找:
      • 1、目标敏感文件泄露,例如:phpinfo之类的探针、GitHub信息泄露等。
      • 2、XSS盲打,命令执行反弹shell,SSRF等。
      • 3、无论是用社工还是其他手段,拿到了目标网站管理员在CDN的账号,从而在从CDN的配置中找到网站的真实IP。
    • 网站邮件订阅查找:RSS邮件订阅,很多网站都自带 sendmail,会发邮件给我们,此时查看邮件源码里面就会包含服务器的真实 IP 了。
    • 用 Zmap 扫全网:需要找 xiaix.me 网站的真实 IP,我们首先从 apnic 获取 IP 段,然后使用 Zmap 的 banner-grab 扫描出来 80 端口开放的主机进行 banner 抓取,最后在 http-req 中的 Host 写 xiaix.me。
    • F5 LTM解码法:当服务器使用F5 LTM做负载均衡时,通过对set-cookie关键字的解码真实ip也可被获取,例如:Set-Cookie: BIGipServerpool_8.29_8030=487098378.24095.0000,先把第一小节的十进制数即487098378取出来,然后将其转为十六进制数1d08880a,接着从后至前,以此取四位数出来,也就是0a.88.08.1d,最后依次把他们转为十进制数10.136.8.29,也就是最后的真实ip。

目录扫描

网站目录和敏感文件扫描是网站测试中最基本的手段之一。如果通过该方法发现了网站后台,可以尝试暴库、SQL注入等方式进行安全测试;如果发现敏感目录或敏感文件,能帮我们获取如php环境变量、robots.txt、网站指纹等信息;如果扫描出了一些上传的文件,我们甚至可能通过上传功能(一句话恶意代码)获取网站的权限。

社会工程学

  • 社工库
  • 邮件钓鱼
  • 客服
  • 构造字典
  • …..