目录
一、侦查
收集目标的信息,了解弱点和漏洞,便于后续攻击。
主要方式:主动探测、被动探测、开源情报、社会工程
1)主动探测
使用网络扫描工具探测目标网络的资产、漏洞等信息,以便进行后续攻击或深入侦察。
步骤
1.利用Masscan、Zmap、Nmap等扫描工具扫描发现存活主机、开放端口
2.识别目标主机的协议服务、操作系统等
3.根据需求爬取主机的相关资源
2)被动探测
截获网络通信或部署蜜罐,获取目标的数据包和信息,从中分析和提取有用的情报。
被动探测工具
-
Whois工具
- 注册商:域名是通过哪个注册商注册的? - 注册人的联系信息:姓名、组织、地址、电话等(如果使用了隐私服务隐藏,则注册人的联系信息将不可见)。 - 创建、更新和到期日期:域名首次注册的时间是什么时候? 最后一次更新是什么时候? 什么时候需要更新? - 名称服务器:将请求哪个服务器来解析域名?
基本语法
whois domin.cn
e.g whois baidu.com
- nslookup命令
nslookup -query=TYPE DOMAIN
TYPE:
A IPv4地址记录
AAAA IPv6地址记录
e.g nslookup query=A baidu.com
3)开源情报
通过公开渠道收集、整理、分析和利用各种公开可获得的信息来获取情报的过程。这些公开渠道包括互联网、社交媒体、新闻、公共数据库、论坛、博客和其他在线资源。
开源情报工具
4)社会工程学
社会工程学针对的主要目标是人,利用人性的弱点达到攻击的目的。
推荐书籍
- 欺骗的艺术
- 反入侵的艺术
二、扫描
1)主机扫描
通过对目标网络(一般为一个或多个IP网段)中主机IP地址的扫描,以确定目标网络中有哪些主机处于运行状态。
1.ARP扫描
1.1 arping
arping:向局域网内的其它主机发送ARP请求的指令,测试某个IP是否已被使用。
查看某个IP的MAC地址,并指定count数量:
arping -c 1 192.168.225.1
1.2 arp-sacn
在arping的基础上,加入网段扫描支持
扫描连接到该接口的网络上所有可能的IP地址:
arp-scan --interface=eth0 --localnet
2. ICMP Sweep
- fping ip1 ip2 ip3 // 测试某些特定的主机是否存活
- fping -s -g ip1 ip2 // 测试某个范围内的主机存活状态(ip1为开始地址,ip2为结束地址)
2) 端口扫描
1. 常见端口
协议 | 端口号 | 服务 |
---|---|---|
TCP | 20 | FTP数据端口 |
TCP | 21 | FTP控制端口 |
TCP | 22 | SSH |
TCP | 23 | Telnet |
TCP/UDP | 25 | SMTP |
TCP | 80 | HTTP |
TCP | 135 | Microsoft RPC |
TCP | 139 | Microsoft NetBIOS |
TCP | 443 | HTTPS |
TCP | 445 | Microsoft-DS 目录服务 |
TCP | 1433 | SQL Server数据库 |
TCP | 1521 | Oracle数据库 |
TCP | 3306 | MySQL数据库 |
TCP | 3389 | Windows远程桌面连接 |
UDP | 53 | DNS |
UDP | 68 | DHCP |
UDP | 69 | TFTP |
UDP | 161/162 | SNMP |
2. 端口状态
端口状态 | 含义 |
---|---|
open | 端口开放 |
closed | 端口关闭 |
filtered | 端口被防火墙、IDS、IPS等屏蔽,无法确定状态 |
unfiltered | 端口没有被屏蔽,但开放状态需进一步确定 |
3. 攻击方向
端口 | 服务 | 攻击方向 |
---|---|---|
tcp 20,21 | FTP | 允许匿名的上传下载,爆破,嗅探,win提权,远程执行(proftpd 1.3.5),各类后门(proftpd,vsftp 2.3.4) |
tcp 22 | SSH | 可根据已搜集到的信息尝试爆破,v1版本可中间人,ssh隧道及内网代理转发,文件传输等等 |
tcp 23 | Telnet | 爆破,嗅探,一般常用于路由,交换登录,可尝试弱口令 |
tcp 25 | SMTP | 邮件伪造,vrfy/expn查询邮件用户信息,可使用smtp-user-enum工具来自动跑 |
tcp/udp 53 | DNS | 允许区域传送,dns劫持,缓存投毒,欺骗以及各种基于dns隧道的远控 |
tcp/udp 69 | TFTP | 尝试下载目标及其他的各类重要配置文件 |
tcp 80-89,443,8440-8450,8080-8089 | 各种常用的web服务端口 | 可尝试经典的topn,vpn,owa,webmail,目标oa,各类java控制台,各类服务器web管理面板,各类web中间件漏洞利用,各类web框架漏洞利用等等 |
tcp 110 | POP3 | 可尝试爆破、嗅探 |
tcp 111, 2049 | NFS | 权限配置不当 |
tcp 137,139,445 | Samba | 可尝试爆破以及smb自身的各种远程执行类漏洞利用,如ms08-067,ms17-010,嗅探等 |
tcp 143 | IMAP | 可尝试爆破 |
udp 161 | SNMP | 爆破默认团队字符串,搜集目标内网信息 |
tcp 389 | LDAP | ldap注入,允许匿名访问,弱口令 |
tcp 512,513,514 | Linux rexec | 可爆破,rlogin登录 |
tcp 873 | Rsync | 匿名访问,文件上传 |
tcp 1194 | OpenVPN | 想办法钓VPN账号,进入内网 |
tcp 1352 | Lotus | 弱口令,信息泄露,爆破 |
tcp 1433 | SQL Sever | 注入,提权,sa弱口令,爆破 |
tcp 1521 | Oracle | tns爆破,注入,反弹shell |
tcp 1500 | ISPmanager | 弱口令 |
tcp 1723 | PPTP | 爆破,想办法钓VPN账号,进入内网 |
tcp 2082,2083 | cPanel | 弱口令 |
tcp 2181 | ZooKeeper | 未授权访问 |
tcp 2601,2604 | Zebra | 默认密码zebra |
tcp 3128 | Squid | 弱口令 |
tcp 3312,3311 | kangle | 弱口令 |
tcp 3306 | MySQL | 注入,提权,爆破 |
tcp 3389 | Windows rdp | shift后门[需要03以下的系统],爆破,ms12-020 |
tcp 3690 | SVN | svn泄露,未授权访问 |
tcp 4848 | GlassFish | 弱口令 |
tcp 5000 | Sybase/DB2 | 爆破,注入 |
tcp 5432 | PostgreSQL | 爆破,注入,弱口令 |
tcp 5900,5901,5902 | VNC | 弱口令,爆破 |
tcp 5984 | CouchDB | 未授权导致的任意指令执行 |
tcp 6379 | Redis | 可尝试未授权访问,弱口令爆破 |
tcp 7001,7002 | WebLogic | java反序化,弱口令 |
tcp 7778 | Kloxo | 主机面板登录 |
tcp 8000 | Ajenti | 弱口令 |
tcp 8009 | tomcat Ajp | Tocat-Ajp协议漏洞 |
tcp 8443 | Plesk | 弱口令 |
tcp 8069 | Zabbix | 远程执行,SQL注入 |
tcp 8080-8069 | Jenkins,JBoss | 反序化,控制台弱口令 |
tcp 9080-9081,9090 | WebSphere | Java反序化/弱口令 |
tcp 9200,9300 | ElasticSearch | 远程执行 |
tcp 11211 | Memcached | 未授权访问 |
tcp 27017,27018 | MongoDB | 爆破,未授权访问 |
tcp 50070,50030 | Hadoop | 默认端口未授权访问 |