端口信息收集

一、服务端口介绍

在渗透测试中对服务端口的收集非常重要,通过扫描服务开放的端口可判断对应开启的服务,通过所提供的这些服务的已知漏洞就可进行攻击。知名端口(0-1023)固定分配给某些服务的,动态端口(1023-65535)不固定分配给某些服务。
端口大全
https://nsrc.org/workshops/2009/summer/presentations/day3/common-ports.pdf
常见端口:

21:ftp文件传输协议(匿名访问、弱密码等)

22:ssh专门为远程登录会话和其他网络服务提供的安全性协议,基本出现在liunx服务器、网络设备上(弱口令、防火墙ssh后门等)

23:telnet远程管理服务(弱口令探测、溢出等)

25:smtp邮件接收服务(溢出)

53:dns提供域名解析(dns域传送信息泄露、dns劫持、dns缓存投毒、dns欺骗、dns隧道技术刺穿防火墙等等)

80:http协议(sql注入、文件上传、文件包含、xss、xxe、csrf、ssrf等等)

110:pop3邮件发送服务器(溢出)

443:https服务的web浏览端口、能提供加密和通过安全端口传输的另一种http(心脏出血)

445:smb用在计算机间共享文件、打印机、串口等(永恒之蓝漏洞)

1433:oracle

3306:mysql数据库(弱口令)

3389:远程桌面

5432:postgresql

6379:redis

8080:连接代理

"端口"是英文port的意译,可以认为是设备与外界通讯交流的出口。端口可分为虚拟端口和物理端口。
我们此文所指的端口特指TCP/IP协议中的端口,是逻辑意义上的端口。
一些特定端口默认会开启一些特定服务。
端口信息收集可以帮助我们找到更多目标网站的功能点,更全面地对目标网站进行测试。

二、 端口分类

第一类

公认端口(Well Known Ports):从0到1023,它们紧密绑定(binding)于一些服务。通常这些端口的通讯明确表明了某种服务的协议,例如:80端口实际上总是HTTP通讯。
第二类

注册端口(Registered Ports):从1024到49151。它们松散地绑定于一些服务。也就是说有许多服务绑定于这些端口,这些端口同样用于许多其它目的。例如:许多系统处理动态端口从1024左右开始。
第三类

动态和/或私有端口(Dynamic and/or Private Ports):从49152到65535。理论上,不应为服务分配这些端口。实际上,机器通常从1024起分配动态端口。但也有例外:SUN的RPC端口从32768开始。

按功能分类

端口信息收集_第1张图片
端口信息收集_第2张图片端口信息收集_第3张图片端口信息收集_第4张图片
端口信息收集_第5张图片
端口信息收集_第6张图片端口信息收集_第7张图片

三、收集方式

1.使用nmap

Nmap是一款开源免费的网络发现(Network Discovery)和安全审计(Security Auditing)工具。软件名字Nmap是Network Mapper的简称。Nmap最初是由Fyodor在1997年开始创建的。随后在开源社区众多的志愿者参与下,该工具逐渐成为最为流行安全必备工具之一。

Nmap的优点:

灵活。支持数十种不同的扫描方式,支持多种目标对象的扫描。

强大:Nmap可以用于扫描互联网上大规模的计算机。

可移植:支持主流操作系统:Windows/Linux/Unix/MacOS等等;源码开放,方便移植。

简单:提供默认的操作能覆盖大部分功能,基本端口扫描nmap targetip,全面的扫描nmap –A targetip。

自由:Nmap作为开源软件,在GPL License的范围内可以自由的使用。

文档丰富:Nmap官网提供了详细的文档描述。Nmap作者及其他安全专家编写了多部Nmap参考书籍。

社区支持:Nmap背后有强大的社区团队支持。
Nmap包含四项基本功能:

主机发现 (Host Discovery)

端口扫描 (Port Scanning)

版本侦测 (Version Detection)

操作系统侦测 (Operating System Detection)

内置大量脚本
端口信息收集_第8张图片

支持防火墙等设备绕过

nmap常用命令

-A 综合扫描,包括系统探测,版本探测,脚本探测

-e 指定网络接口,扫描使使用哪个网卡

-iL 扫描指定文件中的ip

-iR 全网扫描

-O 扫描探测主机操作系统

-oN 将扫描的信息标准输出写到指定文件中

-p 指定端口扫描

-PO 有些主机关闭了ping检测所以使用这条命令可以跳过ping的探测加快扫描

-PS 探测目标主机开放的端口,可以指定一个以逗号分隔的端口 (SYN)

-PU 探测目标主机开放的端口,可以指定一个以逗号分隔的端口 (UDP)

-sA 向目标主机的端口发送ACK包,如果收到RST包,说明该端口没有被防火墙屏。该方式 只能用于确定防火墙是否屏蔽某个端口

-sF tcp的扫描一种,发送一个FIN标志的数据包

-sL 仅列出指定网段上的每台主机,不发送任何报文到目录 主机

-sn 探测网段主机的在线情况返回主机ip和MAC地址

-sO 探测主机支持哪些IP协议

-sP 对对应主机端的主机发送ICMP报文,查询哪些主机是存活的

-sS 使用SYN半开放扫描(隐蔽扫描)

-sT 扫描开放了TCP端口的设备 三次握手方式的TCP扫描

-sU 扫描开放了UDP端口的设备

-sV 用于扫描目标主机服务版本号和端口运行的软件的版本 (版本检测)

-sW 窗口扫描,得出一些端口信息

-v 表示显示冗余信息,在扫描过程中显示扫描的细节,从而让用户了解当前的扫描状态

我个人比较常用

-sV:版本检测(sV) 版本检测是用来扫描目标主机和端口上运行的软件的版本,

可以看到开放了ftp,ssh,apache http,mysql,weblogic等服务以及他们的版本。

nmap常用语句

端口信息收集_第9张图片

具体见:Nmap使用技巧总结.pdf

2.使用工具Routescan

Router Scan 是一款路由器安全测试工具,它是由俄国的一位安全测试人员所开发的,他叫Stas‘M。

几个重要模块:
1、ip模块, 输入你想要进行测试的IP地址或地址段

2、端口模块,输入想要扫描的端口

3、扫描模块

扫描模块中共有六个功能选项,分别是:1、Router Scan(main);2、Detect proxy servers ;3、Use HNAP 1.0 ;4、SQLite Manager RCE; 5、Hudson Java Servlet;6、phpMyAdminRCE.

Router Scan(main),默认选择运行的模块,
Detect proxy servers,检测代理服务器,
Use HNAP 1.0,使用HNAP协议里的漏洞对路由器进行安全检测。
SQLite Manager RCE,利用SQLite Manager 远程连接设备中的数据库,进行配置信息的检索,以达到爆破的目的。
Hudson Java Servlet  java服务模块
phpMyAdminRCE,phpadminMy RCE漏洞扫描模块

4、结果模块

显示扫描ip,端口,耗时,状态,服务等情况

还有一些不错的端口扫描工具,例如

3.小米范

4.Scanport

5.在线扫描网站 http://coolaf.com/tool/port

6.简单测试工具

端口信息收集_第10张图片

你可能感兴趣的:(攻防,网络安全,web安全)