目录
1.什么是信息收集?
信息收集是指通过各种方式获取所需要的信息,以便我们在后续的渗透过程更好的进行。比如目标站点IP、中间件、脚本语言、端口、邮箱等等。信息收集包含资产收集但并不限于资产收集。
2.信息收集的意义
信息收集是渗透测试成功的保障,更多的暴露面,更大的可能性。
3.信息收集的分类
3.1 主动信息收集
通过直接访问网站、在网站上进行操作、对网站进行扫描等,这种是有网络流量经过目标服务器的信息收集方式。
3.2 被动信息收集
基于公开的渠道,比如搜索引擎等,在不与目标系统直接交互的情况下获取信息,并且尽量避免留下痕迹。
4.收集哪些信息
服务器信息(端口、服务、真实IP)
网站信息(网站架构(操作系统、中间件、数据库、编程语言)、指纹信息、WAF、敏感目录、敏感文件、源码泄露、旁站查询、C段查询)
域名信息(whois、备案信息、子域名)
人员信息(姓名、职务、生日、联系电话、邮件地址)
4.1 域名信息收集
4.1.1 什么是域名?
域名(Domain Name),简称域名、网域,是由一串用点分隔的名字组成的Internet上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位(有时也指地理位置)
DNS(域名系统,Domain Name System)是互联网的一项服务。它作为将域名和IP地址互相映射的一个分布式数据库,能够使人更方便地访问互联网。
4.1.2 域名的分类
4.1.3 Whois
whois是用来查询域名的IP以及所有者等信息的传输协议。就是一个用来查询域名是否被注册,以及注册域名的详细信息的数据库(如域名所有人、域名注册商)
Whois查询的重要性
查询方法
Web接口查询
https://whois.aliyun.com/
https://www.whois365.com/cn/
http://whois.chinaz.com/
例如进入https://whois.aliyun.com/ 输入baidu.com,可以得到如下图所示:
Whois命令行查询
whios baidu.com (KALI终端可以执行该命令)
4.1.4 备案信息
查询方法
Web接口查询
http://www.beianbeian.com/
http://www.beian.gov.cn/portal/registerSys
http://icp.chinaz.com/
例如:合天网安实验室-专业提供网络安全\信息安全在线实验服务的网络靶场 ()
备案号如下图所示:
4.1.5 子域名信息收集
子域名指二级域名,二级域名是顶级域名(一级域名)的下一级。
比如mail.heetian.com和bbs.heetian.com是heeitian.com的子域,而heetian.com则是顶级域名.com的子域。
子域名发现:
搜索引擎 site:hetianlab.com (谷歌语法搜索)
第三方网站查询 https://dnsdumpster.com http://tool.chinaz.com/subdomain
网络空间安全搜索引擎 https://fofa.info
例如搜索baidu.com,如下图所示:
SSL证书查询 https://crt.sh/
例如搜索baidu.com,如下图所示:
4.2 IP信息收集
4.2.1 IP反查域名
http:stool.chinaz.com/same
https://tools.ipip.net/ipdomain.php
4.2.2 域名查询IP
http://ip.tool/chinaz.com/
4.2.3 CDN
CDN即内容分发网络。CDN是构建在网络之上的内容分发网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。
判断CDN
多地ping http://ping.chinaz.com/
http://www.webkaka.com/Ping.aspx
绕过CDN
1.国外访问 https://asm.ca.com/en/ping.php
2.查询子域名的IP
3.phpinfo文件
4.Mx记录邮件服务
5.查询历史DNS记录
https://dnsdb.io/zh-cn/
4.2.4 C段存活主机探测
C段即同一网段
Nmap
nmap -sP www.XXX.com/24 || nmap -sP 192.168.1.*
https://github.com/se55i0n/Cwebscanner
4.3 端口信息收集
在Internet上,各主机通过TCP/IP协议发送和接受数据包,各个数据包根据其目的主机的IP地址来进行互联网络中的路由选择,从而顺利的将数据包顺利的传送给目标主机。
协议端口
根据提供服务类型的不同,端口可分为以下两种:
TCP端口:TCP是一种面向连接的可靠的传输层通信协议
UDP端口:UDP是一种无连接的不可靠的传输层协议
TCP和UDP协议是独立的,因此各自的端口号也互相独立。
端口类型
周知端口:范围0-1023,如80端口是www服务
动态端口:一般不固定分配某种服务,范围49152-65535
注册端口:范围1024-49151,用于分配给用户进程或程序
4.3.1 FTP
FTP-21
FTP:文件传输协议,使用TCP端口20,21,20用于传输数据,21用于传输控制信息。
(1)ftp基础爆破:owasp的Bruter,hydra以及msf中的ftp爆破模块。
(2)ftp匿名访问:用户名:anonymous 密码:为空或者任意邮箱
(3)vsftpd后门:vsftpd2到2.3.4版本存在后门漏洞,通过该漏洞获取root权限。
(4)嗅探:ftp使用明文传输,使用Cain进行渗透。(但是嗅探需要在局域网并需要欺骗或监听网关)
(5)ftp远程代码溢出
(6)ftp跳转攻击
4.3.2 SSH
SSH-22
SSH(secure shell)是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。
(1)弱口令,可使用工具hydra,msf中ssh爆破模块
(2)SSH后门
(3)openssh用户枚举CVE-2018-15473
4.3.3 Telnet
Telnet-23
Telnet协议是TCP/IP协议族中的一员,是Internet远程登录服务的标准协议和主要方式。
(1)暴力破解,使用hydra或者msf中telnet模块对其进行破解。
(2)在linux系统中一般采用SSH进行远程访问,传输的敏感数据都是经过加密的。
而对于Windows下的telnet来说是脆弱的,因为默认没有经过任何加密就在网络中进行传输。使用Cain等嗅探工具可轻松截获远程登录密码。
4.3.4 SMTP
SMTP-25/465
smtp(邮件协议),在linux中默认开启这个服务,可发送钓鱼邮件,
默认端口:25(smtp),465(smtps)
(1)爆破:弱口令,使用hydra
(2)SMTP无认证伪造发件人
4.3.5 WWW
WWW-80
www为超文本传输协议(HTTP)开放的端口,主要用于万维网传输信息的协议
(1)中间件漏洞,如IIS、apache、nginx等
(2)80端口一般通过web应用程序的常见漏洞进行攻击
4.3.6 MYSQL
MySQL-3306
3306是MYSQL数据库默认的监听端口
(1)mysql弱口令破解。
(2)弱口令登录mysql,上传构造的恶意UDF自定义函数代码,通过调用注册的恶意函数执行系统命令。
(3)SQL注入获取数据库敏感信息,load_file()函数读取系统文件,导出恶意代码到指定路径。
4.3.7 Tomcat
Tomcat-8080
(1)Tomcat远程代码执行漏洞(CVE-2019-0232)
(2)Tomcat任意文件上传(CVE-2017-12615)
(3)Tomcat管理页面弱口令getshell
Nmap参考指南(中文版)
https://nmap.org/man/zh/
4.4 其他信息收集
历史漏洞信息
http://wy.zone.ci/
https://wooyun.kieran.top/#!/ (知识库)
https://www.exploit-db.com/
https://wiki.0-sec.org/#/md
https://www.seebug.org/
社会工程学
钓鱼邮件,钓鱼网页等
路漫漫其修远兮,小邹加油呀~