端口简介
在lnternet上,各主机间通过TCP/IP协议发送和接受数据包,各个数据包根据其目的主机的IP地址来进行互联网络中的路由选择,从而顺利的将数据包顺利的传送给目标主机。
协议端口
根据提供服务类型的不同,端口可分为以下两种:
- TCP端口:TCP是一种面向连接的可靠的传输层通信协议(给目标主机发送信息之后,通过返回的应答确认信息是否到达)
- UDP端口:UDP是一种无连接的不可靠的传输层协议(给目标主机发送信息之后,不会去确认信息是否到达)
TCP协议和UDP协议是独立的,因此各自的端口号也互相独立。由于物理端口和逻辑端口数量较多,为了对端口进行区分,将每个端口进行了编号,即就是端口号。
端口类型
- 周知端口∶众所周知的端口号,范围:0-1023,如80端口是WWW服务
- 动态端口:一般不固定分配某种服务,范围:49152-65535
- 注册端口:范围: 1024-49151,用于分配给用户进程或程序
端口作用
把服务器比作房子,而端口可比作门;窃贼想要在没经过房子主人允许进入房子,就需要破门而入;窃贼在破门之前,得先了解到房子开了几扇门,门后是什么东西,也就是踩点;踩点得到的信息越多对于窃贼顺利的窃取有价值的东西至关重要。
常用服务端口及入侵方式
- 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跳转攻击。【可参考:https://blog.csdn.net/mgxcool/article/details/48249473】 - SSH-22
SSH: (secure shell)是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。
(1)弱口令,可使用工具hydra,msf中的ssh爆破模块
(2)SSH后门
(3) openssh用户枚举CVE-2018-15473 - Telnet-23
TeInet协议是TCP/IP协议族中的一-员, 是Internet远程登录服务的标准协议和主要方
式。
(1)暴力破解,使用hydra,或者msf中telnet模块对其进行破解
(2)在linux系统中-般采用SSH进行远程访问, 传输的敏感数据都是经过加密的
而对于windows下的telnet来说是脆弱的,因为默认没有经过任何加密就在网络中进行传输。使用cain等嗅探工具可轻松截获远程登录密码。 - www-80
为超文本传输协议(HTTP)开放的端口,主要用于万维网传输信息的协议。
(1)中间件漏洞,如IIS、apache、nginx等
(2)80端口一般通过web应用程序的常见漏洞进行攻击 - NetBlOS SessionService-139/445
139用于提供windows文件和打印机共享及UNIX中的Samba服务。445用于提供windows文件和打印机共享
(1)对于开放139/445端口,尝试利用MS17010溢出漏洞进行攻击
(2)对于只开放445端口,尝试利用MSO6040、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
9.Weblogic-7001
(1)弱口令、爆破,弱密码一般为weblogic/Oracle@123 or weblogic
(2)管理后台部署 war包后门
(3) weblogic SSRF
(4)反序列化漏洞 - Tomcat-8080
( 1) Tomcat远程代码执行漏洞(CVE-2019-0232)
(2) Tomcat任意文件上传(CVE-2017-12615)
(3) tomcat管理页面弱口令getshell