预攻击阶段
渗透测试信息搜集总结
>
确定要攻击的网站后,用whois工具查询网站信息注册时间.管理员联系方式(电话、邮箱.)
2:使用nslookup、dig工具进行域名解析已得到IP地址。
>3:查询得到的IP地址的所在地.
>4:通过google搜集一些敏感信息,如网站目录,网站的特定类型文件.
>
5:对网站进行端口、操作系统、服务版本的扫描,用nmap -sV -o。便可以实现,更详细的可以用nmap
- a.
6:在得到了目标的服务器系统,开放端口及服务版本后,使用Openvas/Nessus进行漏洞挖掘
>7:将搜集到的所有信息进行筛选,得出有用的,认真做好记录.
• 服务器信息(端口、服务、真实IP)
网站信息(网站架构(操作系统、中间件、数据库、编程语言)、指纹信,WAF、敏感目录、敏感文件、源码泄露、旁站查询、C段查询)
•域名信息(whois、备案信息、子域名)
• 人员信息(姓名、职务、生日、联系电话、邮件地址)
域名信息收集—备案信息
web接口查询
http://www.beianbeian.com/
http://www.beian.gov.cn/portal/registerSys
http://icp.chinaz.com/
子域名
谷歌搜索site hetianiab com
ssl证书查询 crt.sh
Js文件发现子域名 I Threezh1 / JSFinder github shmilylty/OneForAll
- IP反查域名
http://stool.chinaz.com/same
https://tools.ipip.net/ipdomain.php
如果渗透目标为虛拟主机,那么通过1P反查到的域名信息很有价值,因为一台物理服
务器上面可能运行多个虚拟主机。这些虚拟主机有不同的域名,但通常共用一个/P地
址。如果你知道有哪些网站共用这台服务器,就有可能通过此台服务器上其他网站的
漏洞获取服务器控制权,进而迁回获取渗透目标的权限,这种技术也称为“旁注〞
CDN即内容分发网络。CDN是构建在网络之上的内容分发网络,依靠部署在各地的
边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获
取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。
IP信息收集-判断CDN
>多地ping
http://ping.chinaz.com/
http://www.webkaka.com/Ping.aspx
因为可能没对国外来源的设置cdn
IP信息收集-绕过CDN
>查询子域名的IP
phpinfo文件
Mx记录邮件服务 显示邮件原文 received from
查询历史DNS记录
https://dnsdb.io/zh-cn/
https://securitytrails.com/
https://x.threatbook.cn/
查看 1P 与域名鄉定的历史记录,可能会存在使用 CDN 前的记录
因为域名注册完成后首先需要做域名解析。
域名解析就是把域名指向网站所在服务器的1P,让人们通过注册的域名可以访问到网站。IP地址是网络上标识服务器的数字地
,为了方便记记,使用域名来代替IP地址
域名解析就是域名到P地址的转换过程,
域名的解析工作由DNS服务器完成。DNS服务器会把域名解析到-
个P地址,
然后在此IP地址的主机上将-
个子目录与域名鄉定。域名解析时会添加解析记录,这些记录有:A记录、AAAA记录、CNAME记录、Mx记录、NS记录、txt录
SRV记录、URL转发,
IP信息收集-C段存活主机探测
> Nmap
nmap -sP www.XXX.com/24 || nmap -sP 192.168.1.*
https://github.com/se55i0n/Cwebscanner
20传输 21控制
(1) ftp基础爆破:owasp的Bruterhydra以及msf中的ftp爆破模块。
(2)ftp透名访问:用户名:anonymous 密码:为空或者任意邮箱
(3) vsftpd后门:vsftpd 2到2.3.4版本存在后门漏洞,通过该漏洞获取root权限。
(4)嗅探:ftp使用明文传输,使用Cain进行渗透。
(但是嗅探需要在局域网并需
要欺骗或监听网关)
(5)ftp远程代码溢出。
(6) ftp跳转攻击。
SSH: (secure shell)是目前较可靠,专为远程登录会话和其他网络服务提供安全性
(1) 弱口令,可使用工具hydra,mst中的ssh爆破模块。
(2)SSH后门
(3) openssh 用户枚举 CVE-2018-15473。
Telnet办议是TCP/P协议族中的一员,是Internet远程登录服务的标准协议和主要方
式。
(1) 暴力破解,使用hydra,或者msf中telnet模块对其进行破解。
(2)在linux系统中一般采用SSH进行远程访问,传输的敏感数据都是经过加密的。
而对于windows下的telnet来说是脆弱的,因为默认没有经过任何加密就在网络中
进行传输。使用cain等嗅探工具可轻松截获远程登录密码。
smtp:邮件协议,在linux中默认开启这个服务,可发送钓鱼邮件
默认端口:25 (smtp)
465 (smtps)
(1)爆破:弱口令,使用hydra
(2) SMTP 无认证伪造发件人
为超文本传输协议(HTTP) 开放的端口,主要用于万维网传输信息的协议
(1) 中间件漏洞,如IS、apache、nginx等
(2) 80端口一般通过web应用程序的常见漏洞进行攻击
139用于提供windows文件和打印机共享及UNIX中的Samba服务。
445用于提供windows文件和打印机共享
(1)对于开放139/445端口,尝试利用M$17010溢出漏洞进行攻击;
(2)对于只开放445端口,尝试利用MSO6040、MS08067溢出漏洞攻击;
(3)利用IPC$连接进行渗透
3306是MYSQL数据库默认的监听端口
(1)mysql弱口令破解
(2)弱口令登录mysql,上传构造的恶意UDF自定义西数代码,通过调用注册的恶
意函数执行系统命令
(3)SQL注入获取数据库敏感信息,load file0西数读取系统文件,导出恶意代码
到指定路径
3389是windows远程桌面服务默认监听的端口
(1) RDP暴力破解攻击
(2) MS12 020死亡蓝屏攻击
(3)RDP远程桌面漏洞 (CVE-2019-0708)
(4) MSF开启RDP、注册表开启RDP
6379开源的可基于内存的可持久化的日志型数据库。
(1)爆破弱口令
(2)redis末授权访问结合ssh key提权
(3) 主从复制rce
7001(1)弱口令、爆破,弱密码一般为weblogic/Oracle@ 123 or weblogic
(2)管理后台部署 war包后门
(3) weblogic SSRF
(4) 反序列化漏洞
(1) Tomcat远程代码执行漏洞 (CVE-2019-0232)
(2) Tomcat任意文件上传 (CVE-2017-12615)
(3) tomcat 管理页面弱口令getshell
Network Mapper,是一款开放源代码的网络探测和安全审核的工具
nmap参考指南(中文版)
https://nmap.org/man/zh/
端口扫描
1. 检测网络存活主机(主机发现)
2.检测主机开放端口(端口发现或权率)
3,检测相应端口软件(服务发现)版本
4.检测操作系統,硬件地址,以及軟件版本
5. 检测脆弱性的漏洞 (nmap的脚本)
Open
端口开启,数据有到达主机,有程序在端口上监控
Closed
端口关闭,数据有到达主机,没有程序在端口上监控
Filtered
数据没有到达主机,返回的结果为空,数据被防火墙或IDS过滤
UnFiltered
数据有到达主机,但是不能识别端口的当前状态
Open Filtered
端口没有返回值,主要发生在UDP、IP、FIN、 NULL和Xmas扫
描中
Closed Filtered
只发生在/P ID idle扫描
nmap -A -T4 192.168.1.1
Onmap -TO 127 0,01
Inmap -TI 127 0.0 1
单一主机扫描: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外的所有子网主机:
map 192.168.1.1/24
-exclude 192.168.1.1
扫描除指定IP外的所有子网主机:
map. 192.168.1.1/24 --exclude 192.168.1.1
扫描除文件中IP外的子网主机:
map 192.168.1.1/24 --excludefilexxx.txt
扫描特定主机上的80,21,23端口:
nmap -p 80,21,23 192.168.1.1
---nmap漏洞扫描
nmap.exe -p445 -V
-script smb-ghost 192.168.1.0/24
探测存活主机
nmap -sn -V -T4 -0G Discovery.gnmap 172.26.1.0/24
grep
"Status: Up" Discovery.gnmap | cut -f2 -d "' > liveHosts.txt
rootckarB- nmap -SS 192.168.1.19
Not shown: 994 closed ports
PORT
STATE SERVICE
22/tCp
open
80/tcp
open
111/tcp
open
2049/tcp open
pettine
3306/tcp open
- mysql
5900/tcp open
vnc
MAC Address: SO:S:49:4F:6C:FE (Giga-byte Technology co.)
map done: 1 IP address (1 host up) scanned in 1.69 seconds>探测存活主机
nmap-sn-v-T4 -oG(Discovery.gnmap)172.26.1.0/24
grep "Status: Up" Discovery.gnmap Fcut -f 2 -d '> liveHosts.txt
Footekal3- nmap -35 192.168.1.19
Host
is up (0.00081s
¡atency).
Not shown: 994 closed ports
PORT
STATE SERVICE
22/tCp
open
80/tcp
open
111/tcp
open
2049/tcp open
Titline
3306/tcp open
mysql
5900/tcp open
vnc
MAC Address: SO:E5:49:4F:6C:FE (Giga-byte Technology co.)
Nmap done: 1 IP address (1 host up) scanned in 1.69 seconds
-探测存活主机
nmap-sn'-v-T4-oG(Discovery.gnmap)172.26.1.0/24
grep
"Status: Up" Discovery.gnmap | cut -f2 -d"'> liveHosts.txt
-sn: ping扫描,和sP相同的效果
-v:显示洋细信息
-ON/-oX/-0G:特报告写入文件,分别是正常、XML、grepable 三种格式
>扫描全部端口
nmap -sS -V -T4 -Pn -p 0-65535 -oN FullTCP -iL liveHosts.txt
Pn就是不使用ping
-sS:SYN扫描,又称为半开放扫描,它不打开
个完全的TCP连接,执行得很快,效率高(一个完整的tCp连接需要3次握手,而-sS选项不需要3次握手)
优点:Nmap发送SYN包到远程主机,但是它不会产生任何会话,目标主机几乎不会把连接记入系统日志。
(防止对方判断为扫描攻击),扫描速度快,效率高,
在工作中使用频率最高
缺点:它需要root/administrator权限执行
•-Pn:扫描之前不需要用ping命令,有些防火墙禁止ping命令。可以使用此选项进行扫描
-iL:导入需要扫描的列表
>历史漏洞信息
http://wy.zone.ci/
https://woovun.kieran.top/#!/
https://www.exploit-db.com/
https://wiki.0-sec.ora/#/md
https://www.seebug.org/
-----网站信息收集
01.网站指纹识别
02.敏感文件及目录探测
03.网站waf识别
的最基本组成:服务器(操作系统)、
中间件(web容器)、脚本语言、数据库
-么要了解这些?举个例子:发现了-
一个文件读取漏洞,我们需要读/etc/passwd,如果是windows系统根本不会存在这个文件
ping判断:windows的TTL值一般为128, Linux则为64。TTL大于100的一般为
windows, 几十的一般为linux。
nmap-0参数
windows大小写不敏感,linux则区分大小写
改Url就行
nmap o on t4 a ip/24
网站服务\容器类型
F12查看响应头Server字段
whatweb
https://www.whatweb.net/
whatweb
https://www.whatweb.net/
wappalyzer插件 浏览器插件
php, jsp, asplaspx, python
php, jsp, asplaspx, python
- 数据库类型
常见CMS: gedeems(织梦)、Discuzptpcms等,
•在线识别工具
http://whatweb.bugscaner.com/look/
Onlinetools
https://github.com/iceyhexman/onlinetools
https://pentest.gdpcisa.org/
>敏感文件、目录探测
github
git
svn
.DS Store
.ng
.bzr
CVS
WEB-INF
备份文件、
Github泄露
开发人员将代码上传到网站,在上传的时候,没有删除重要的一些信息。如邮箱信
息,SVN信息,内部账号和密码,数据库连接信息,服务器配置信息等。尤其是邮
箱信息和内部账号和密码。这类信息可以通过在github上搜索公司的一些特定信息,
查看是否有程序员将这些信息上传到了github上。
Git泄露漏洞
"git" intitle:"index of "
https://github.com/lijiejie/GitHack
跟git一样,都是用来版本迭代的一个功能。具体一点就是使用sVn checkout功能来更新代码。
如果没有将.svn版本控制的目录进行删除,恶意用户就可以使用这个目录下的文件,来恢复源码
防护:在部署的时候,将该文件进行删除
svn" intitle: "index of
https://github.com/admintony/svnExploit
WEB-INF/web.xml泄露
WEB-INF是Java的WEB应用的安全目录。如果想在页面中直接访问其中的文件,必
须通过web.xmi文件对要访问的文件进行相应映射才能访问
网站备份文件泄露指管理员误将网站备份文件或是敏感信息文件存放在莫个
录下。
https://github.com/7kbstorm/7kbscan-WebPathBrute
----敏感文件、目录探测
目录探测
dirsearch:https://github.com/maurosoria/dirsearch
御剑后台扫描工具
dirmap:https://github.com/H4ckForJob/dirmap
针对漏洞的信息泄露
https://github.com/LandGrey/SpringBootVulExploit
https://github.com/rabbitmask/SB-Actuator
-03网站waf识别
安全狗
(1)防止常见的各类网络攻击,如:SQL注入、XSS跨站、CSRF、网页后门等;
(2) 防止各类自动化攻击,如:暴力破解、撞库、批量注册、自动发贴等;
(3)阻止其它常见威胁,如:爬虫、口DAY攻击、代码分析、嗅探、数据篡改、越
权访问、敏感信息泄漏、应用层DDOS、远程恶意包含、盗链、越权、扫描等
wafw00f -l
https://github.com/EnableSecurity/wafwOOf
nmap -p80,443 --script http-waf-detect ip
map -p80,443 --script http-waf-fingerprint ip