4--端口协议
端口的作用
一台拥有IP地址的主机可以提供许多服务,比如Web服务、FTP服务、SMTP服务等,这些服务完全可以通过1个IP地址来实现。那么,主机要区分不同的网络服务,显然不能只靠IP地址,因为IP 地址与网络服务的关系是一对多的关系。实际上是通过“IP地址+端口号”来区分不同的服务的。
例如:本地的通信端口,访问服务器端口为80,通信是这样的
http://ip 80 ftp
web 80
ftp 21
端口的类型
TCP端口和UDP端口。
由于TCP和UDP两个协议是独立的,因此各自的端口号也相互独立,比如TCP有235端口,UDP也可以有235端口,两者并不冲突。
(1)TCP端口
TCP端口,即传输控制协议端口,需要在客户端和服务器之间建立连接,这样可以提供可靠的数据传输。常见的包括FTP服务的21端口,Telnet服务的23端口,SMTP服务的25端口,以及HTTP服务的80端口等。
(2)UDP端口
UDP端口,即用户数据包协议端口,无需在客户端和服务器之间建立连接,安全性得不到保障。常见的有DNS服务的53端口,SNMP(简单网络管理协议)服务的161端口,QQ使用的8000和400。
常见的端口
范围0-65535
a.服务端使用的端口号
预留端口号
取值范围0-1023,这些端口我们编程的时候不能使用,是那些vip应用程序使用的,只有超级用户特权的应用才允许被分配一个预留端口号
登记端口号
取值范围1024-49151,就是我们平时编写服务器使用的端口号范围
b.客户端使用的端口号
取值范围49152-65535,这部分是客户端进程运行时动态选择的范围,又叫临时端口号
端口使用
查看端口 netstat –ano
查看端口是否被占用 netstat -ano|findstr "80"
显示协议统计和当前 TCP/IP 网络连接
NETSTAT [-a] [-b] [-e] [-f] [-n] [-o] [-p proto] [-r] [-s] [-t] [interval]
-a 显示所有连接和侦听端口。
-b 显示在创建每个连接或侦听端口时涉及的可执行程序。 在某些情况下,已知可执行程序承载多个独立的组件,这些情况下,显示创建连接或侦听端口时涉及的组件序列。此情况下,可执行程序的名称位于底部[]中,它调用的组件位于顶部,直至达到 TCP/IP。注意,此选项可能很耗时,并且在没有足够权限时可能失败。
-e 显示以太网统计。此选项可以与 -s 选项结合使用。
-f 显示外部地址的完全限定域名(FQDN)。
-n 以数字形式显示地址和端口号。
-o 显示拥有的与每个连接关联的进程 ID。
-p proto 显示 proto 指定的协议的连接。proto 可以是下列任 何一个: TCP、UDP、TCPv6 或 UDPv6。如果与 -s 选 项一起用来显示每个协议的统计,proto 可以是下列任 何一个: IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP 或 UDPv6。
-r 显示路由表。
-s 显示每个协议的统计。默认情况下,显示 IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP 和 UDPv6 的统计;-p 选项可用于指定默认的子网。
-t 显示当前连接卸载状态。
interval 重新显示选定的统计,各个显示间暂停的间隔秒数。 按 CTRL+C 停止重新显示统计。如果省略,则 netstat 将打印当前的配置信息一次。
常见端口
在渗透中端口扫描的收集主机那些服务很重要,这里收集到一些常见的的服务端口
1.web类(web漏洞/敏感目录)
第三方通用组件漏洞struts thinkphp jboss ganglia zabbix
80 web
80-89 web
8000-9090 web
2.数据库类(扫描弱口令)
1433 MSSQL
1521 Oracle
3306 MySQL
5432 PostgreSQL
3.特殊服务类(未授权/命令执行类/漏洞)
443 SSL 心脏滴血
873 Rsync 未授权
5984 CouchDB http://xxx:5984/_utils/
6379 redis 未授权
7001,7002 WebLogic默认弱口令,反序列
9200,9300 elasticsearch 参考WooYun: 多玩某服务器ElasticSearch命令执行漏洞
11211 memcache 未授权访问
27017,27018 Mongodb 未授权访问
50000 SAP命令执行
50070,50030 hadoop默认端口未授权访问
4,常用端口类(扫描弱口令/端口爆破)
21 ftp
22 SSH
23 Telnet
2601,2604 zebra路由,默认密码zebra
3389 远程桌面
其他端口
161 SNMP
389 LDAP
445 SMB
512,513,514 Rexec
1025,111 NFS
1433 MSSQL
1521 Oracle:(iSqlPlus Port:5560,7778)
2082/2083 cpanel主机管理系统登陆 (国外用较多)
2222 DA虚拟主机管理系统登陆 (国外用较多)
3312/3311 kangle主机管理系统登陆
4440 rundeck 参考WooYun: 借用新浪某服务成功漫游新浪内网
5432 PostgreSQL
5900 vnc
5984 CouchDB http://xxx:5984/_utils/
6082 varnish 参考WooYun: Varnish HTTP accelerator CLI 未授权访问易导致网站被直接篡改或者作为代理进入内网
7778 Kloxo主机控制面板登录
8000-9090 一些常见的web端口,有些运维喜欢把管理后台开在这些非80的端口上
8080 tomcat/WDCP主机管理系统,默认弱口令
8080,8089,9090 JBOSS
8083 Vestacp主机管理系统(国外用较多)
8649 ganglia
8888 amh/LuManager 主机管理系统默认端口
10000 Virtualmin/Webmin 服务器虚拟主机管理系统
28017 mongodb统计页面