IP端口信息收集
4.1 IP信息收集
4.1.1 IP反查域名
http://stool.chinaz.com/same
http://tools.ipip.net/ipdomain.php
如果渗透目标为虚拟主机,那么通过IP反查到的域名信息很有价值,因为一台物理服务器上面可能运行多个虚拟主机。这些虚拟主机有不同的域名,但通常共用一个IP地址。如果你知道有哪些网站共用这台服务器,就有可能通过此台服务器上其他网站的漏洞获取服务器控制权,进而迂回获取渗透目标的权限,这种技术也称为“旁注"
4.1.2 域名查询IP
- 域名查询IP:http://ip.tool.chinaz.com/
4.1.3 CDN
CDN即内容分发网络。CDN是构建在网络之上的内容分发网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。
- 判断CDN
多地ping
http://ping.chinaz.com/
https://wepcc.com/
http://ping.aizhan.com/
http://17ce.com
- 绕过CDN
国外访问:https://asm.ca.com/en/ping.php
http://www.webkaka.com/PIng.aspx
- 查看phpinfo文件
- MX记录邮件服务器
- 查询历史DNS记录
https://dnsdb.io/zh-cn/
https://securitytrails.com/
https://x.threatbook.cn/
4.1.4 C段存活主机探测
- Nmap工具:nmap -sP www.xxx.com/24 || nmap -sP 192.168.1.*
- https://github.com/se55i0n/Cwebscanner
4.2 端口信息收集
4.2.1端口简介
在Internet上,各主机间通过TCP/IP协议发送和接受数据包,各个数据包根据其目的主机的IP地址来进行互联网络中的路由选择,从而顺利的将数据包顺利的传送给目标主机
4.2.2 协议端口
根据提供服务类型的不同,端口可分为以下两种:
TCP端口:TCP是一种面向连接的可靠的传输层通信协议
UDP端口:UDP是一种无连接的不可靠的传输层协议
TCP协议和UDP协议是独立的,因此各自的端口号也互相独立。
4.2.3 端口类型
周知端口:众所周知的端口号,范围:0-1023,如80端口是www服务;
动态端口:一般不固定分配某种服务,范围:49152-65535;
注册端口:范围:1024-49151,用于分配给用户进程或程序。
4.2.4 端口作用
把服务器比作房子,而端口可比作门;
窃贼想要在没经过房子主人允许进入房子,就需要破门而入;
窃贼在破门之前,得先了解到房子开了几扇门,门后是什么东西,也就是踩点;踩点得到的信息越多对于窃贼顺利的窃取有价值的东西至关重要。
4.2.5 常见端口与入侵方式
4.2.6 端口扫描
- Nmap介绍
Network Mapper,是一款开源代码的网络探测和安全审核的工具。
nmap参考指南(中文版):https://nmap.org/man/zh/
- Nmap功能介绍
(1)检测网络存活主机(主机发现)
(2)检测主机开放端口(端口发现或枚举)
(3)检测相应端口软件(服务发现)版本
(4)检测操作系统,硬件地址,以及软件版本
(5)检测脆弱性的漏洞(nmap的脚本)
- 端口状态
Open 端口开启,数据有到达主机,有程序在端口上监控
Closed 端口关闭,数据有到达主机,没有程序在端口上监控
Filtered 数据没有到达主机,返回的结果为空,数据被防火墙或IDS过滤
UnFiltered 数据有到达主机,但是不能识别端口的当前状态
Open|Filtered 端口无返回值,主要发生在UDP、IP、FIN、NULL和Xmas扫描中
Closed|Filtered只发生在IP ID idle扫描
- nmap基础用法
Nmap -A -T4 192.168.1.1
A :全面扫描/综合扫描;T4:扫描速度,共有6级,T0-T5;不加端口说明扫描默认端口,1-1024+nmap-service
单一主机扫描: namp 192.168.1.2
子网扫描: namp 192.168.1.1/24
多主机扫描: nmap 192.168.1.1 192.168.1.10
主机范围扫描: namp 192.168.1.1-100
IP地址列表扫描: nmap -iL target.txt
扫描除指定IP外的所有子网主机:nmap 192.168.1.0/24 --exclude 192.168.1.1
扫描除文件中IP外的子网主机:nmap 192.168.1.0/24 --excludefile xxx.txt
扫描特定主机上的80,21,23端口:nmap -p 80,21,23 192.168.1.1
扫描全端口:nmap -sS-v -T4 -Pn -p 0-65535 -oN FulITCP-iL liveHosts.txt
- 探测存活主机
#nmap -sn -v -T4 -oG discvery.gnmap 192.168.149.0/24
#cat discvery.gnmap | grep "Status: Up"
- 扫描全部端口
#nmap -sS -v -T4 -Pn -p 0-65535 -oN FullTCP -iL liveHosts.txt
- 系统扫描
- #nmap -O -T4 -Pn -oG OSDetect -iL liveHosts.txt
- 版本检测
#nmap -sV -T4 -Pn -oG ServiceDetect -iL liveHosts.txt
- nmap漏洞扫描
#nmap -p 445 -v --script smb-vuln-ms17-010.nse 192.168.149.170
4.3 其他信息收集
4.3.1 历史漏洞信息
http://wy.zone.cil
https://wooyun.kieran.top/#!/ 乌云知识库
https://www.exploit-db.com/ 历史漏洞和EXP搜索
https://wiki.O-sec.org/#/md
https://www.seebug.org/
4.4.1 社会工程学
- 徐玉玉案
经多方取证调查,被告人杜天禹在2016年4月初,通过植入木马等黑客技术手段非法入侵了山东省2016年普通高等学校招生考试信息平台网站,并从该平台直接窃取了64万余条2016年山东省高考考生个人信息等相关信息,并对外出售牟利。
出售渠道涵盖QQ、支付宝等工具,通过这些途径,杜天禹向陈文辉出售了10万余条考生相关信息,共获利14100余元。尔后陈文辉等人通过获取到的考生信息实施电信诈骗,经调查取证发现共拨打诈骗电话1万余次,直接骗取他人钱款高达20余万元,这其中就包括徐玉玉被骗取的九千余元的大学学费,并因此郁结于心,抢救无效身亡。
- 钓鱼邮件
- 钓鱼页面
4.4 网站信息收集
4.4.1 网站指纹识别
- 网站的基本组成
服务器(操作系统)、中间件(web容器)、脚本语言、数据库
为什么要了解这些?如:发现了一个文件读取漏洞,要读/etc/passwd,如果是windows 系统就不会存在这个漏洞。
- 操作系统识别
ping判断: windows的TTL值一般为128,Linux则为64,
TTL大于100的一般为windows,几十的一般为linux;
nmap -O参数:nmap -O -Pn -T4 -A 192.168.1.0/24
windows大小写不敏感,linux则区分大小写。
- 网站服务\容器类型识别
F12查看响应头server字段
whatweb工具:
wappalyzer插件:
- 脚本类型识别
(1)为什么会要进行网站脚本探测?
网站会进行伪装,要么没有后缀,要么就是伪静态;
举例:http://192.168.149.170/grade/ (网站没有后缀)
http://xxx.com/index.html?id=1 (伪静态)
有些站点会修改解析后缀,比如:修改PHP站点文件把asp后缀当作php解析;
(2)探测方法:
①访问网站时会直接显示
根据cookie值(比如 PHP 使用的会话ID是 PHPSESSID,JSP 使用的会话 ID 是 JSESSION。)
②按F12查看元素
③查看网站的 robots.txt site.xml
这些文件很可能会有暴露网站的语言,直接就访问robots.txt 等就可以。
可以使用御剑后台扫描工具进行爆破
④查看网页源码
搜索asp或aspx或php或jsp 很多伪静态的站,都可以用这种方法。他会调用一些动 态脚本,在源码会看到。
⑤用google搜索
site:目标站域名 inurl:脚本语言类型
site:xxx filetype:php
⑥使用wappalyzer插件
- 数据库类型识别
常用的数据库:mysql sqlserver access oracle......
使用nmap或sqlmap等工具进行扫描
SqlMap:
>python sqlmap.py -u "http://127.0.0.1/sqli/Less-1/?id=1"
- CMS识别
(1)什么是CMS
CMS(Content Management System):内容管理系统,用于网站内容文章管理。
常见的CMS有:WordPress、Dedecms(织梦)、Discuz、PhpWeb、PhpWind、 Dvbbs、PhpCMS、 ECShop、SiteWeaver、AspCMS、帝国、Z-Blog等
(2)识别方法
在线识别工具:http://whatweb.bugscaner.com/look/
查看网站的banner信息:如https://www.52pojie.cn/
线上信息收集工具Onlinetools:https://github.com/iceyhexman/onlinetools
https://pentest.gdpcisa.orgl
使用方法:https://www.wangan.com/p/7fy78ydbfb33fc7f
4.4.2 敏感文件及目录探测
在渗透测试中,探测Web目录结构和隐藏的敏感文件是一个必不可少的环节,从中可以获取网站的后台管理页面、文件上传页面、甚至可以扫描出网站的源代码。
通常所说的敏感文件、敏感目录大概有以下几种:
后台、robots.txt、数据库log、sitemap.xml、mysql.sql、licence.txt、WEB-INF泄露、备份文件泄露、配置文件泄露等。
- 收集方向
后台目录:弱口令,万能密码,爆破
(常用后台admin\admin.后缀\admin/login.后缀 \manage \webmanager\等)
安装包:获取数据库信息,甚至是网站源码
上传目录:截断、上传图片马等
mysql管理接口:弱口令、爆破,万能密码,然后脱裤,甚至是拿到shell
安装页面 :可以二次安装进而绕过
phpinfo:会把你配置的各种信息暴露出来
编辑器:fck、ke、等
iis短文件利用:条件比较苛刻 windows、apache等
robots.txt文件:记录目标网站哪些文件夹不让访问,侧面说明这些文件夹很重要的。 如:https://www.baidu.com/robots.txt
- 常用工具
字典爆破:DirBuster、御剑后台、Webdirscan等
蜘蛛爬行:Burp、OWASP ZAP、AWVS等
在线工具站:http://www.webscan.cc/
- 联网设备搜索
钟馗之眼www.zoomeye.com
傻蛋:https://www.shodan.io/
构造检索关键词时:
系统/后台类:可以搜索“xxx系统/平台/管理;
企业类:可以搜索“xxx企业/公司/平台”;
比如我们要挖电信的系统,可以搜索“电信系统/平台/管理”。
- 谷歌搜索引擎
site:xxx.xxx system
site:xxx.xxx 内部
site:xxx.xxx 系统
site:目标 admin
site:目标 login
site:目标 管理员登陆
site:目标 后台
site:目标 中心
site:目标 登录
site:目标 登陆
site:目标 管理中心
等等很多,可以自行拓展
4.4.3 C段和旁站
旁站指的是同一服务器上的其他网站,很多时候,有些网站可能不是那么容易入侵。那么,可以查看该网站所在的服务器上是否还有其他网站。如果有其他网站的话,可以先拿下其他网站的webshell,然后再提权拿到服务器的权限,最后就自然可以拿下该网站了。
对于红蓝对抗和护网,C段扫描比较有意义。对于单独网站的渗透测试,C段扫描意义不大。C段指的是同一内网段内的其他服务器,每个IP有ABCD四个段,举个例子,192.168.0.1,A段就是192,B段是168,C段是0,D段是1,而C段嗅探的意思就是拿下它同一C段中的其中一台服务器,也就是说是D段1-255中的一台服务器,然后利用工具嗅探拿下该服务器。
旁站和C段在线查询地址:
http://www.webscan.cc/
https://phpinfo.me/bing.php
https://scan.top15.cn/web/webside
http://www.5kik.com/
工具:K8旁站、御剑1.5
4.4.4网站waf识别
(1)什么是WAF?
WAF,即: Web Application FireWall (Web应用防火墙),是通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供保护的一款产品。
(2)WAF的功能:
- 防止常见的各类网络攻击,如:SQL注入、XSS跨站、CSRF、网页后门等;
- 防止各类自动化攻击,如:暴力破解、撞库、批量注册、自动发贴等;
- 阻止其它常见威胁,如:爬虫、0DAY攻击、代码分析、嗅探、数据篡改、越权访问、敏感信息泄漏、应用层DDOS、远程恶意包含、盗链、越权、扫描等。
(3)waf识别
- 手工方式:提交恶意数据,简单粗暴
- 使用Kaili工具:
①wafw00f工具
安装wafw00f:# apt-get install wafw00f
# wafw00f -h 查看帮助信息
# wafw00f -l 查看支持的防火墙类型
# wafw00f -a http://www.ghtcghtc.com
②nmap工具:
http-waf-detect:nmap -p80,443 --script=http-waf-detect ip
http-waf-fingerprint:nmap -p80,443 --script=http-waf-fingerprint ip
- 在线识别
https://scan.top15.cn/web
课程小结
对于渗透来说80%的时间基本上都是在信息收集上,资产收集的精准性直接决定能否成功挖掘到漏洞。本章讲解了信息收集的思路和相关技术方法如主动的工具、被动的Google Hack语法等。