当前位置:网站首页>WEB 渗透之端口协议
WEB 渗透之端口协议
2022-08-01 21:19:00 【weixin_53150482】
端口协议
端口的作用
一台拥有IP地址的主机可以提供许多服务,比如Web服务、FTP服务、SMTP服务等,这些服务完全可以通过1个IP地址来实现。那么,主机是怎样区分不同的网络服务呢?显然不能只靠IP地址,因为IP 地址与网络服务的关系是一对多的关系。实际上是通过“IP地址+端口号”来区分不同的服务的。
web 80
ftp 21
http//:ip80
ftp
本地 通信端口 访问 服务器 80 通信是这样的
端口的类型
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,这部分是客户端进程运行时动态选择的范围,又叫临时端口号
TCP协议三次握手
三次握手(Three-way Handshake),是指建立一个 TCP 连接时,需要客户端和服务器总共发送3个包。
第一次握手([SYN], Seq = x)
客户端发送一个SYN标记的包,Seq初始序列号x,发送完成后客户端进入SYN_SEND状态。
第二次握手([SYN,ACK], Seq = y, ACK = x + 1)
服务器返回确认包(ACK)应答,同时还要发送一个SYN包回去。ACK = x + 1,表示确认收到(客户端发来的Seq值 + 1),Seq = y, 表示让客户端确认是否能收到。发送完成后服务端进入SYN_RCVD状态。
第三次握手([ACK], ACK = y + 1)
客户端再次发送确认包(ACK),ACK = y + 1, 表示确认收到服务器的包(服务端发来的Seq值 + 1)。客户端发送完毕后,进入ESTABLISHED状态,服务端接收到这个包,也进入ESTABLISHED状态, TCP握手结束。
查看端口
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将打印当前的配置信息一次。
TCP状态转移要点
TCP协议规定,对于已经建立的连接,网络双方要进行四次握手才能成功断开连接,如果缺少了其中某个步骤,将会使连接处于假死状态,连接本身占用的资源不会被释放。网络服务器程序要同时管理大量连接,所以很有必要保证无用连接完全断开,否则大量僵死的连接会浪费许多服务器资源。在众多TCP状态中,最值得注意的状态有两个:CLOSE_WAIT和TIME_WAIT。
1、LISTENING状态
FTP服务启动后首先处于侦听(LISTENING)状态。
2、ESTABLISHED状态
ESTABLISHED的意思是建立连接。表示两台机器正在通信。
3、CLOSE_WAIT
对方主动关闭连接或者网络异常导致连接中断,这时我方的状态会变成CLOSE_WAIT 此时我方要调用close()来使得连接正确关闭
4、TIME_WAIT
**我方主动调用close()断开连接,收到对方确认后状态变为TIME_WAIT。**TCP协议规定TIME_WAIT状态会一直持续2MSL(即两倍的分段最大生存期),以此来确保旧的连接状态不会对新连接产生影响。处于TIME_WAIT状态的连接占用的资源不会被内核释放,所以作为服务器,在可能的情况下,尽量不要主动断开连接,以减少TIME_WAIT状态造成的资源浪费。
常见的端口
在渗透中端口扫描的收集主机那些服务很重要,这里收集到一些常见的的服务端口
web类(web漏洞/敏感目录)
第三方通用组件漏洞struts thinkphp jboss ganglia zabbix
- 80 web
- 80-89 web
- 8000-9090 web
数据库类(扫描弱口令)
- 1433 MSSQL
- 1521 Oracle
- 3306 MySQL
- 5432 PostgreSQL
特殊服务类(未授权/命令执行类/漏洞)
- 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默认端口未授权访问
常用端口类(扫描弱口令/端口爆破)
- 21 ftp
- 22 SSH
- 23 Telnet
- 2601,2604 zebra路由,默认密码zebra
- 3389 远程桌面
端口合计详情
doop默认端口未授权访问
常用端口类(扫描弱口令/端口爆破)
- 21 ftp
- 22 SSH
- 23 Telnet
- 2601,2604 zebra路由,默认密码zebra
- 3389 远程桌面
端口合计详情
边栏推荐
- C Expert Programming Chapter 1 C: Through the Fog of Time and Space 1.5 ANSI C Today
- 记录第一次给开源项目提 PR
- 2022-08-01 第五小组 顾祥全 学习笔记 day25-枚举与泛型
- 2022牛客多校联赛第五场 题解
- CS-NP白蛋白包覆壳聚糖纳米颗粒/人血清白蛋白-磷酸钙纳米颗粒无机复合材料
- 左旋氧氟沙星/载纳米雄黄磁性/As2O3磁性Fe3O4/三氧化二砷白蛋白纳米球
- 相亲模型与有限状态机
- Hiking, cured my mental internal friction
- C语言_枚举类型介绍
- 列表页常见的 hook 封装
猜你喜欢
随机推荐
C语言_联合体共用体引入
shell脚本
织梦模板加入php代码
在Cesium中实现与CAD的DWG图叠加显示分析
C专家编程 第1章 C:穿越时空的迷雾 1.1 C语言的史前阶段
Appendix A printf, varargs and stdarg A.3 stdarg.h ANSI version of varargs.h
附录A printf、varargs与stdarg A.3 stdarg.h ANSI版的varargs.h
Get started with Grafana in 15 minutes
JVM内存结构详解
位运算简介
包含吲哚菁绿的多聚体白蛋白纳米球/载马钱子碱纳米粒的牛血清白蛋白微球的制备
C语言_枚举类型介绍
C Pitfalls and Defects Chapter 7 Portability Defects 7.6 Memory Location 0
图片识别商品接口 API:天猫淘宝
C Expert Programming Chapter 1 C: Through the Fog of Time and Space 1.1 The Prehistoric Phase of the C Language
这些 hook 更优雅的管理你的状态
测试的意义并不是能找到全部的缺陷
C专家编程 第1章 C:穿越时空的迷雾 1.5 今日之ANSI C
Hiking, cured my mental internal friction
360借条安全专家:陌生微信好友不要轻易加贷款推广多是诈骗