08-信息收集之端口收集(总结版)
信息 | 技术 | 举例 | 注意 |
---|---|---|---|
服务器信息 | IP反查域名 | (同一个IP(具有公网出口)上有很多网站----旁站)(★★) | |
服务器信息 | 域名查询IP | (★★★★★) 为了端口扫描 | |
服务器信息 | C段扫描 | 在同一个IP段中,很有可能存在同一个公司其他的IP地址(扩大资产面) | |
服务器信息 | CDN 内容分发服务(为了用户感受,会在不同的节点分发静态页面)(找不到真实点的ip),有了BDP才有的CDN | 绕过(!★★★★★) 面试中经常被问,绕过几率基本为零 | 1. 多地ping(IP有可能不一样) 2. nslookup 如果有多个IP(不要管ipv4还是ipv6)并且有 cname(别名) 3. 查询子域名IP: 因为CDN是按量收费的,主站挂CDN,子站不管CDN,在旁站或C段才行 4. 国外ping,国外访问,CDN是按量收费的,有的网站不需要国外的看,所以国外不挂CDN ,但是 现在2023年了所有的网站都会有国外DNS 5. 邮件服务 SMTP 服务 是不可以挂 CDN 的 ,邮件的ip是真实的ip,但是邮件分发服务的IP和网站在同一个网段,现在企业邮箱发送都是腾讯的ip 6. 查询历史的dns记录,比如说现在有很多网站挂了CDN,在之前这些网站可能没有挂CDN,如果可以找到挂CDN之前的dns记录,有可能会找到CDN的真实IP A记录:域名变成IP,IP变成域名 AAAA记录:域名变成IPV6,IPV6变成域名 域名服务器记录,用来指定该域名由哪个DNS服务器来进行解析。 CNAME记录:别名记录,允许您将多个名字映射到同一台计算机 |
服务器信息 | CDN 内容分发服务 | 放弃,寻找IP,为了找端口服务,除了端口服务该干啥干啥,CDN静态服务器(BJP),扫描CDN可能扫的都是假的 | |
端口信息 | 端口对应的服务必须要记住,常见的端口服务 139、445必须要知道,内网渗透、横向移动常用 ftp 20、21端口匿名访问 除了端口什么都不好使,是因为nmap是开源的,安全厂商研究的透透的 传输层TCP不可以加密 进程一般T4 主要看 port和status,服务不太准 Pn、ST 扫描之前都会先ping一下 |
IP、端口信息收集
IP信息收集
IP反查域名
https://tools.ipip.net/ipdomain.php
如果渗透目标为虚拟主机,那么通过IP反查到的域名信息很有价值,因为一台物理服务器上面可能运行多个虚拟主机。这些虚拟主机有不同的域名,但通常共用一个IP地址。如果你知道有哪些网站共用这台服务器,就有可能通过此台服务器上其他网站的漏洞获取服务器控制权,进而迂回获取渗透目标的权限,这种技术也称为“旁注”。
域名查询IP
知道一个站点的域名需要得到它的IP以便之后获取端口信息或扫描等后续工作。
C段存活主机探测
查找与目标服务器IP处于同一个C段的服务器IP
nmap -sP www.XXX.com/24
nmap -sP 192.168.1.*
https://github.com/se55i0n/Cwebscanner
python Cwebscan.py www.hetianlab.com
CDN简介
https://zhuanlan.zhihu.com/p/52362950
https://baike.baidu.com/item/%E5%86%85%E5%AE%B9%E5%88%86%E5%8F%91%E7%BD%91%E7%BB%9C/4034265
CDN即内容分发网络。CDN是构建在网络之上的内容分发网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率
CDN判断
1. 多地ping
http://www.webkaka.com/Ping.aspx
用各种多地 ping 的服务,查看对应 IP 地址是否唯一
2. 国外访问
因为有些网站设置CDN可能没有把国外的访问包含进去,所以可以这么绕过
CDN绕过
1. 查询子域名的IP
https://ip.tool.chinaz.com/ipbatch
CDN 流量收费高,所以很多站长可能只会对主站或者流量大的子站点做了 CDN,而很多小站子站点又跟主站在同一台服务器或者同一个C段内,此时就可以通过查询子域名对应的 IP 来辅助查找网站的真实IP
2. MX记录邮件服务
MX记录是一种常见的查找IP的方式。如果网站在与web相同的服务器和IP上托管自己的邮件服务器,那么原始服务器IP将在MX记录中。
3. 查询历史DNS记录
https://viewdns.info/iphistory/
查看 IP 与 域名绑定的历史记录,可能会存在使用 CDN 前的记录;
域名注册完成后首先需要做域名解析,域名解析就是把域名指向网站所在服务器的IP,让人们通过注册的域名可以访问到网站。
IP地址是网络上标识服务器的数字地址,为了方便记忆,使用域名来代替IP地址。
域名解析就是域名到IP地址的转换过程,域名的解析工作由DNS服务器完成。
DNS服务器会把域名解析到一个IP地址,然后在此IP地址的主机上将一个子目录与域名绑定。
域名解析时会添加解析记录,这些记录有:A记录、AAAA记录、CNAME记录、MX记录、NS记录、TXT记录。
DNS记录类型
https://developer.aliyun.com/article/331012
A记录
用来指定主机名(或域名)对应的IP地址记录
通俗来说A记录就是服务器的IP,域名绑定A记录就是告诉DNS,当你输入域名的时候给你引导向设置在DNS的A记录所对应的服务器。
NS记录
域名服务器记录,用来指定该域名由哪个DNS服务器来进行解析。
MX记录
邮件交换记录,它指向一个邮件服务器,用于电子邮件系统发邮件时根据收信人的地址后缀来定位邮件服务器。
CNAME记录
别名记录,允许您将多个名字映射到同一台计算机
TXT记录
一般指某个主机名或域名的说明
泛域名与泛解析
泛域名是指在一个域名根下,以 *.Domain.com 的形式表示这个域名根所有未建立的子域名。 泛解析是把
*.Domain.com 的A记录解析到某个IP 地址上,通过访问任意的前缀 .domain.com 都能访问到你解析的站点上。
域名绑定
域名绑定是指将域名指向服务器IP的操作
端口信息收集
端口简介
在Internet上,各主机间通过TCP/IP协议发送和接受数据包,各个数据包根据其目的主机的IP地址来进行互联网络中的路由选择,从而顺利的将数据包顺利的传送给目标主机
但当目的主机运行多个程序时,目的主机该把接受到的数据传给多个程序进程中的哪一个呢?端口机制的引入就是为了解决这个问题。端口在网络技术中,端口有两层意思:一个是物理端口,即物理存在的端口,如:集线器、路由器、交换机、ADSL Modem等用于连接其他设备的端口;另一个就是逻辑端口,用于区分服务的端口,一般用于TCP/IP中的端口,其范围是0~65535,,0为保留端口,一共允许有65535个端口比如用于网页浏览服务的端口是80端口,用于FTP服务的是21端口。 这里我们所指的不是物理意义上的端口,而是特指TCP/IP协议中的端口,是逻辑意义上的端口
协议端口
根据提供服务类型的不同,端口可分为以下两种:
-
TCP端口:TCP是一种面向连接的可靠的传输层通信协议
-
UDP端口:UDP是一种无连接的不可靠的传输层协议
TCP协议和UDP协议是独立的,因此各自的端口号也互相独立。
-
TCP:给目标主机发送信息之后,通过返回的应答确认信息是否到达
-
UDP:给目标主机放信息之后,不会去确认信息是否到达
而由于物理端口和逻辑端口数量较多,为了对端口进行区分,将每个端口进行了编号,即就是端口号。那么看到这里我们会好奇,有那么多的端口,他们到底是怎么分类的?
端口类型
周知端口:众所周知的端口号,范围:0-1023,如80端口是WWW服务
动态端口:一般不固定分配某种服务,范围:49152-65535
注册端口:范围:1024-49151,用于分配给用户进程或程序
渗透端口
https://www.cnblogs.com/bmjoker/p/8833316.html
常见端口介绍
FTP-21
FTP:文件传输协议,使用TCP端口20、21,20用于传输数据,21用于传输控制信息
(1)ftp基础爆破:owasp的Bruter,hydra以及msf中的ftp爆破模块。
(2) ftp匿名访问:用户名:anonymous 密码:为空或者任意邮箱
(3)vsftpd后门 :vsftpd 2到2.3.4版本存在后门漏洞,通过该漏洞获取root权限。
(4)嗅探:ftp使用明文传输,使用Cain进行渗透。(但是嗅探需要在局域网并需要欺骗或监听网关)
(5)ftp远程代码溢出。
(6)ftp跳转攻击。
SSH-22
SSH:(secure shell)是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。
(1)弱口令,可使用工具hydra,msf中的ssh爆破模块。
(2)SSH后门
(3)openssh 用户枚举 CVE-2018-15473
WWW-80
为超文本传输协议(HTTP)开放的端口,主要用于万维网传输信息的协议
(1)中间件漏洞,如IIS、apache、nginx等
(2)80端口一般通过web应用程序的常见漏洞进行攻击
NetBIOS SessionService–139/445
139用于提供windows文件和打印机共享及UNIX中的Samba服务。
445用于提供windows文件和打印机共享。
(1)对于开放139/445端口,尝试利用MS17010溢出漏洞进行攻击;
(2)对于只开放445端口,尝试利用MS06040、MS08067溢出漏洞攻击;
(3)利用IPC$连接进行渗透
MySQL-3306
3306是MYSQL数据库默认的监听端口
(1)mysql弱口令破解
(2)弱口令登录mysql,上传构造的恶意UDF自定义函数代码,通过调用注册的恶意函数执行系统命令
(3)SQL注入获取数据库敏感信息,load_file()函数读取系统文件,导出恶意代码到指定路径
RDP-3389
3389是windows远程桌面服务默认监听的端口
(1)RDP暴力破解攻击
(2)MS12_020死亡蓝屏攻击
(3)RDP远程桌面漏洞(CVE-2019-0708)
(4)MSF开启RDP、注册表开启RDP
Redis-6379
开源的可基于内存的可持久化的日志型数据库。
(1)爆破弱口令
(2)redis未授权访问结合ssh key提权
(3)主从复制rce
Weblogic-7001
WebLogic是美国Oracle公司出品的一个application server,确切的说是一个基于JAVAEE架构的中间件,WebLogic是
用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器
(1)弱口令、爆破,弱密码一般为weblogic/Oracle@123 or weblogic
(2)管理后台部署 war包后门
(3)weblogic SSRF
(4)反序列化漏洞
Tomcat-8080
Tomcat 服务器是一个开源的轻量级Web应用服务器,在中小型系统和并发量小的场合下被普遍使用,是开发和调试
Servlet、JSP 程序的首选
(1)Tomcat远程代码执行漏洞(CVE-2019-0232)
(2)Tomcat任意文件上传(CVE-2017-12615)
(3)tomcat 管理页面弱口令getshell
端口扫描
NMAP简介
Network Mapper,是一款开放源代码的网络探测和安全审核的工具
nmap参考指南(中文版)
功能介绍
- 检测网络存活主机(主机发现)
- 检测主机开放端口(端口发现或枚举)
- 检测相应端口软件(服务发现)版本
- 检测操作系统,硬件地址,以及软件版本
- 检测脆弱性的漏洞(nmap的脚本)
端口状态
-
Open 端口开启,数据有到达主机,有程序在端口上监控
-
Closed 端口关闭,数据有到达主机,没有程序在端口上监控
-
Filtered 数据没有到达主机,返回的结果为空,数据被防火墙或IDS过滤
-
UnFiltered 数据有到达主机,但是不能识别端口的当前状态
-
Open|Filtered 端口没有返回值,主要发生在UDP、IP、FIN、NULL和Xmas扫描中
-
Closed|Filtered 只发生在IP ID idle扫描
基础用法
nmap -A -T4 192.168.1.1
A:全面扫描\综合扫描
T4:扫描速度,共有6级,T0-T5
不加端口说明扫描默认端口,1-1024 + nmap-service
单一主机扫描:
nmap 192.168.1.2
子网扫描:
nmap 192.168.1.1/24
多主机扫描:
nmap 192.168.1.1 192.168.1.10
主机范围扫描:
nmap 192.168.1.1-100
IP地址列表扫描:
nmap –iL target.txt
扫描除指定IP外的所有子网主机:
nmap 192.168.1.1/24 --exclude 192.168.1.1
扫描除文件中IP外的子网主机:
nmap 192.168.1.1/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 FullTCP -iL liveHosts.txt
• -sS:SYN扫描,又称为半开放扫描,它不打开一个完全的TCP连接,执行得很快,效率高(一个完整的tcp连接需要3次握手,而-sS选项不需要3次握手)
优点:Nmap发送SYN包到远程主机,但是它不会产生任何会话,目标主机几乎不会把连接记入系统日志。(防止对方判断为扫描攻击),扫描速度快,效率高,在工作中使用频率最高
缺点:它需要root/administrator权限执行
• -Pn:扫描之前不需要用ping命令,有些防火墙禁止ping命令。可以使用此选项进行扫描
• -iL:导入需要扫描的列表
扫描常用端口及服务信息
nmap -sS -T4 -Pn -oG TopTCP -iL LiveHosts.txt
系统扫描
nmap -O -T4 -Pn -oG OSDetect -iL LiveHosts.txt
版本检测
nmap -sV -T4 -Pn -oG ServiceDetect -iL LiveHosts.txt
NMAP漏洞扫描
nmap.exe -p445 -v --script smb-ghost 192.168.1.0/24