渗透日记之端口利用
黑客常用端口利用总结
# 常见端口渗透
端口号 | 端口说明 | 攻击技巧 |
---|---|---|
21/22/69 | ftp/tftp:文件传输协议 | 爆破、嗅探、溢出、后门 |
22 | ssh:远程连接 | 爆破、OpenSSH、28个退格 |
23 | telnet:远程连接 | 爆破、嗅探 |
25 | smtp:邮件服务 | 邮件伪造 |
53 | DNS:域名解析系统 | DNS区域传输、DNS劫持、DNS缓存投毒、DNS欺骗、深度利用(利用DNS隧道技术刺透防火墙) |
67/68 | dhcp:动态主机配置 | 劫持、欺骗 |
110 | pop3:邮件协议 | 爆破 |
139 | samba服务:linux系统应用Microsoft网络通讯协议的软件,用于Linux与windows系统直接的文件共享和打印共享 | 爆破、未授权访问、远程代码执行 |
143 | lmap:交互式邮件存取协议 | 爆破 |
161 | snmp:简单邮件传输协议 | 爆破 |
389 | ldap:轻量目录访问 | 注入攻击、未授权访问 |
445 | smb:win 共享文件 | ms17-010/端口溢出 |
512/513/514 | linux rexec服务 | 直接使用rlogin |
873 | Rsync | 文件上传/未授权访问 |
1080 | socket | 爆破(进行内网渗透) |
1352 | lotus domino邮件服务 | 爆破(弱口令)、信息泄露(源代码) |
1433 | mssqlserver | 爆破(使用系统用户登陆)、注入攻击 |
1521 | oracle | 爆破(TNS)、注入攻击 |
2049 | nfs:linux文件共享 | 配置不当 |
2181 | zookeeper | 未授权访问 |
3306 | mysql | 爆破、拒绝服务、注入 |
3389 | Rdp远程桌面连接 | 爆破、shift后门 |
4848 | glassflsh控制台 | 爆破(控制台弱口令)、认证绕过 |
5000 | sybase/DB2数据库 | 爆破、注入 |
5432 | postgresql | 缓冲区溢出、注入攻击、爆破(弱口令) |
5632 | pcanywhere | 拒绝服务、代码执行 |
5900 | vnc | 爆破(弱口令)、认证绕过 |
6379 | redis | 未授权访问、爆破(弱口令) |
7001/7002 | weblogic | java反序列化、控制台弱口令、控制台部署webshell |
80/443/8080 | web | 常见web攻击、控制台爆破、对应服务器版本漏洞 |
8069 | zabbix | 远程命令执行 |
9090 | websphere控制台 | 爆破(控制台弱口令)、java反序列 |
9200/9300 | elasticsearch | 远程代码执行 |
11211 | memcache/memcached | 未授权访问 |
27017/27018 | mongodb | 爆破、未授权访问 |
端口渗透剖析
21
FTP通常用作对远程服务器进行管理,典型应用就是对web系统进行管理。一旦FTP密码泄露就直接威胁web系统安全,甚至黑客通过提权可以直接控制服务器。这里剖析渗透FTP服务器的几种方法。
(1)基础爆破:ftp爆破工具很多,这里我推owasp的Bruter,hydra以及msf中的ftp爆破模块。
(2 ftp匿名访问:用户名:anonymous 密码:为空或者任意邮箱
(3)后门vsftpd :version 2到2.3.4存在后门漏洞,攻击者可以通过该漏洞获取root权限。
(4)嗅探:ftp使用明文传输技术(但是嗅探给予局域网并需要欺骗或监听网关),使用Cain进行渗透。
(5)ftp远程代码溢出。
(6)ftp跳转攻击。
22
SSH 是协议,通常使用 OpenSSH 软件实现协议应用。SSH 为 Secure Shell 的缩写,由 IETF 的网络工作小组(Network Working Group)所制定;SSH 为建立在应用层和传输层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其它网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。
(1)弱口令,可使用工具hydra,msf中的ssh爆破模块。
(2)防火墙SSH后门。(https://www.secpulse.com/archives/69093.html)
(3)28退格 OpenSSL
(4)openssh 用户枚举 CVE-2018-15473。(https://www.anquanke.com/post/id/157607)
23
telnet是一种旧的远程管理方式,使用telnet工具登录系统过程中,网络上传输的用户和密码都是以明文方式传送的,黑客可使用嗅探技术截获到此类密码。
(1)暴力破解技术是常用的技术,使用hydra,或者msf中telnet模块对其进行破解。
(2)在linux系统中一般采用SSH进行远程访问,传输的敏感数据都是经过加密的。而对于windows下的telnet来说是脆弱的,因为默认没有经过任何加密就在网络中进行传输。使用cain等嗅探工具可轻松截获远程登录密码。
25/465
smtp:邮件协议,在linux中默认开启这个服务,可以向对方发送钓鱼邮件
默认端口:25(smtp)、465(smtps)
(1)爆破:弱口令
(2)未授权访问
53
53端口是DNS域名服务器的通信端口,通常用于域名解析。也是网络中非常关键的服务器之一。这类服务器容易受到攻击。对于此端口的渗透,一般有三种方式。
(1)使用DNS远程溢出漏洞直接对其主机进行溢出攻击,成功后可直接获得系统权限。
(2)使用DNS欺骗攻击,可对DNS域名服务器进行欺骗,如果黑客再配合网页木马进行挂马攻击,无疑是一种杀伤力很强的攻击,黑客可不费吹灰之力就控制内网的大部分主机。这也是内网渗透惯用的技法之一。
(3)拒绝服务攻击,利用拒绝服务攻击可快速的导致目标服务器运行缓慢,甚至网络瘫痪。如果使用拒绝服务攻击其DNS服务器。将导致用该服务器进行域名解析的用户无法正常上网。
(4)DNS劫持。
80
80端口通常提供web服务。目前黑客对80端口的攻击典型是采用SQL注入的攻击方法,脚本渗透技术也是一项综合性极高的web渗透技术,同时脚本渗透技术对80端口也构成严重的威胁。
(1)对于windows2000的IIS5.0版本,黑客使用远程溢出直接对远程主机进行溢出攻击,成功后直接获得系统权限。
(2)对于windows2000中IIS5.0版本,黑客也尝试利用‘Microsoft IISCGI’文件名错误解码漏洞攻击。
(3)IIS写权限漏洞是由于IIS配置不当造成的安全问题,攻击者可向存在此类漏洞的服务器上传恶意代码,比如上传脚本木马扩大控制权限。
(4)普通的http封包是没有经过加密就在网络中传输的,这样就可通过嗅探类工具截取到敏感的数据。如使用Cain工具完成此类渗透。
(5)80端口的攻击,更多的是采用脚本渗透技术,利用web应用程序的漏洞进行渗透是目前很流行的攻击方式。
(6)对于渗透只开放80端口的服务器来说,难度很大。利用端口复用工具可解决此类技术难题。
(7)CC攻击效果不及DDOS效果明显,但是对于攻击一些小型web站点还是比较有用的。CC攻击可使目标站点运行缓慢,页面无法打开,有时还会爆出web程序的绝对路径。
135
135端口主要用于使用RPC协议并提供DCOM服务,通过RPC可以保证在一台计算机上运行的程序可以顺利地执行远程计算机上的代码;使用DCOM可以通过网络直接进行通信,能够跨包括HTTP协议在内的多种网络传输。同时这个端口也爆出过不少漏洞,最严重的就是缓冲区溢出漏洞,曾经疯狂一时的‘冲击波’病毒就是利用这个漏洞进行传播的。对于135端口的渗透,黑客的渗透方法为:
(1)查找存在RPC溢出的主机,进行远程溢出攻击,直接获得系统权限。如用‘DSScan’扫描存在此漏洞的主机。对存在漏洞的主机可使用‘ms05011.exe’进行溢出,溢出成功后获得系统权限。
(2)扫描存在弱口令的135主机,利用RPC远程过程调用开启telnet服务并登录telnet执行系统命令。系统弱口令的扫描一般使用hydra。对于telnet服务的开启可使用工具kali链接。
139/445
139端口是为‘NetBIOS SessionService’提供的,主要用于提供windows文件和打印机共享以及UNIX中的Samba服务。445端口也用于提供windows文件和打印机共享,在内网环境中使用的很广泛。这两个端口同样属于重点攻击对象,139/445端口曾出现过许多严重级别的漏洞。下面剖析渗透此类端口的基本思路。
(1)对于开放139/445端口的主机,一般尝试利用溢出漏洞对远程主机进行溢出攻击,成功后直接获得系统权限。利用msf的ms-017永恒之蓝。
(2)对于攻击只开放445端口的主机,黑客一般使用工具‘MS06040’或‘MS08067’.可使用专用的445端口扫描器进行扫描。NS08067溢出工具对windows2003系统的溢出十分有效,工具基本使用参数在cmd下会有提示。
(3)对于开放139/445端口的主机,黑客一般使用IPC$进行渗透。在没有使用特点的账户和密码进行空连接时,权限是最小的。获得系统特定账户和密码成为提升权限的关键了,比如获得administrator账户的口令。
(4)对于开放139/445端口的主机,可利用共享获取敏感信息,这也是内网渗透中收集信息的基本途径。
1433
1433是SQLServer默认的端口,SQL Server服务使用两个端口:tcp-1433、UDP-1434.其中1433用于供SQLServer对外提供服务,1434用于向请求者返回SQLServer使用了哪些TCP/IP端口。1433端口通常遭到黑客的攻击,而且攻击的方式层出不穷。最严重的莫过于远程溢出漏洞了,如由于SQL注射攻击的兴起,各类数据库时刻面临着安全威胁。利用SQL注射技术对数据库进行渗透是目前比较流行的攻击方式,此类技术属于脚本渗透技术。
(1)对于开放1433端口的SQL Server2000的数据库服务器,黑客尝试使用远程溢出漏洞对主机进行溢出测试,成功后直接获得系统权限。
(2)暴力破解技术是一项经典的技术。一般破解的对象都是SA用户。通过字典破解的方式很快破解出SA的密码。
(3)嗅探技术同样能嗅探到SQL Server的登录密码。
(4)由于脚本程序编写的不严密,例如,程序员对参数过滤不严等,这都会造成严重的注射漏洞。通过SQL注射可间接性的对数据库服务器进行渗透,通过调用一些存储过程执行系统命令。可以使用SQL综合利用工具完成。
1521
1521是大型数据库Oracle的默认监听端口,估计新手还对此端口比较陌生,平时大家接触的比较多的是Access,MSSQL以及MYSQL这三种数据库。一般大型站点才会部署这种比较昂贵的数据库系统。对于渗透这种比较复杂的数据库系统,黑客的思路如下:
(1)Oracle拥有非常多的默认用户名和密码,为了获得数据库系统的访问权限,破解数据库系统用户以及密码是黑客必须攻破的一道安全防线。
(2)SQL注射同样对Oracle十分有效,通过注射可获得数据库的敏感信息,包括管理员密码等。
(3)在注入点直接创建java,执行系统命令。
(4)https://www.leiphone.com/news/201711/JjzXFp46zEPMvJod.html
2049
NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。如今NFS具备了防止被利用导出文件夹的功能,但遗留系统中的NFS服务配置不当,则仍可能遭到恶意攻击者的利用。
未授权访问。(https://www.freebuf.com/articles/network/159468.html) (http://www.secist.com/archives/6192.htm)
3306
3306是MYSQL数据库默认的监听端口,通常部署在中型web系统中。在国内LAMP的配置是非常流行的,对于php+mysql构架的攻击也是属于比较热门的话题。mysql数据库允许用户使用自定义函数功能,这使得黑客可编写恶意的自定义函数对服务器进行渗透,最后取得服务器最高权限。对于3306端口的渗透,黑客的方法如下:
(1)由于管理者安全意识淡薄,通常管理密码设置过于简单,甚至为空口令。使用破解软件很容易破解此类密码,利用破解的密码登录远程mysql数据库,上传构造的恶意UDF自定义函数代码进行注册,通过调用注册的恶意函数执行系统命令。或者向web目录导出恶意的脚本程序,以控制整个web系统。
(2)功能强大的‘cain’同样支持对3306端口的嗅探,同时嗅探也是渗透思路的一种。
(3)SQL注入同样对mysql数据库威胁巨大,不仅可以获取数据库的敏感信息,还可使用load_file()函数读取系统的敏感配置文件或者从web数据库链接文件中获得root口令等,导出恶意代码到指定路径等。
3389
3389是windows远程桌面服务默认监听的端口,管理员通过远程桌面对服务器进行维护,这给管理工作带来的极大的方便。通常此端口也是黑客们较为感兴趣的端口之一,利用它可对远程服务器进行控制,而且不需要另外安装额外的软件,实现方法比较简单。当然这也是系统合法的服务,通常是不会被杀毒软件所查杀的。使用‘输入法漏洞’进行渗透。
(1)对于windows2000的旧系统版本,使用‘输入法漏洞’进行渗透。
(2)cain是一款渗透工具,同样支持对3389端口的嗅探。
(3)Shift粘滞键后门:5次shift后门
(4)社会工程学。
(5)爆破3389端口。推荐使用hydra爆破工具。
(6)ms12_020死亡蓝屏攻击。
(7)https://www.cnblogs.com/backlion/p/9429738.html
4899
4899端口是remoteadministrator远程控制软件默认监听的端口,也就是平时常说的radmini影子。radmini目前支持TCP/IP协议,应用十分广泛,在很多服务器上都会看到该款软件的影子。对于此软件的渗透,思路如下:
(1)radmini同样存在不少弱口令的主机,通过专用扫描器可探测到此类存在漏洞的主机。
(2)radmini远控的连接密码和端口都是写入到注册表系统中的,通过使用webshell注册表读取功能可读取radmini在注册表的各项键值内容,从而破解加密的密码散列。
5432
PostgreSQL是一种特性非常齐全的自由软件的对象–关系型数据库管理系统,可以说是目前世界上最先进,功能最强大的自由数据库管理系统。包括kali系统中msf也使用这个数据库;
(1)爆破:弱口令:postgres postgres
(2)缓冲区溢出:CVE-2014-2669。
(3)远程代码执行:CVE-2018-1058。
5631
5631端口是著名远程控制软件pcanywhere的默认监听端口,同时也是世界领先的远程控制软件。利用此软件,用户可以有效管理计算机并快速解决技术支持问题。由于软件的设计缺陷,使得黑客可随意下载保存连接密码的*.cif文件,通过专用破解软件进行破解。这些操作都必须在拥有一定权限下才可完成,至少通过脚本渗透获得一个webshell。这些操作被称为pcanywhere提权技术。
PcAnyWhere提权。https://blog.csdn.net/Fly_hps/article/details/80377199
5900
5900端口是优秀远程控制软件VNC的默认监听端口,此软件由著名的AT&T的欧洲研究实验室开发的。VNC是在基于unix和linux操作系统的免费的开放源码软件,远程控制能力强大,高效实用,其性能可以和windows和MAC中的任何一款控制软件媲美。对于该端口的渗透,思路如下:
(1)VNC软件存在密码验证绕过漏洞,此高危漏洞可以使得恶意攻击者不需要密码就可以登录到一个远程系统。
(2)cain同样支持对VNC的嗅探,同时支持端口修改。
(3)VNC的配置信息同样被写入注册表系统中,其中包括连接的密码和端口。利用webshell的注册表读取功能进行读取加密算法,然后破解。
(4)VNC拒绝服务攻击(CVE-2015-5239)
(5)VNC权限提升(CVE-2013-6886)
6379
Redis是一个开源的使用c语言写的,支持网络、可基于内存亦可持久化的日志型、key-value数据库。关于这个数据库这两年还是很火的,暴露出来的问题也很多。特别是前段时间暴露的未授权访问。
(1)爆破:弱口令
(2)未授权访问+配合ssh key提权。(http://www.alloyteam.com/2017/07/12910/)
7001/7002
7001/7002通常是weblogic中间件端口
(1)弱口令、爆破,弱密码一般为weblogic/Oracle@123 or weblogic
(2)管理后台部署 war 后门
(3)SSRF
(4)反序列化漏洞
(5)weblogic_uac
8080
8080端口通常是apache_Tomcat服务器默认监听端口,apache是世界使用排名第一的web服务器。国内很多大型系统都是使用apache服务器,对于这种大型服务器的渗透,主要有以下方法:
(1)Tomcat远程代码执行漏洞
(2)Tomcat任意文件上传。
(3)Tomcat远程代码执行&信息泄露。
(4)Jboss远程代码执行
(5)Jboss反序列化漏洞。
27017
MongoDB,NoSQL数据库;攻击方法与其他数据库类似
(1)爆破:弱口令
(2)未授权访问;
(3)http://www.tiejiang.org/19157.html
1 | Rsync:rsync 是一个常用的 Linux 应用程序,用于文件同步。 |
1 | Socks5:sosks代理服务协议默认的服务端口号,用于监听传入的连接请求。 当一个客户端应用程序需要使用Sock5代理连接远程服务器时,它将会通过1080端口向代理服务器发送连接请求。 |
1 | IBM Lotus Domino 是一款服务器产品,可提供企业级电子邮件、协作功能和自定义应用程序平台 |
1 | zookeeper开放源码的分布式应用程序协同服务 |
1 | glassfish是一款web应用服务器,和tomcat一样,也是一款优秀的Servlet容器。 |
1 | pcanywhere:远程桌面连接 |
1 | vnc:虚拟网络控制台;远程控制工具 |
1 | zabbix:监控网络 |
1 | websphere:中间件 |
1 | elasticsearch:搜索和数据分析引擎 |
1 | MemCache:自由、源码开放、高性能、分布式的分布式内存对象缓存系统 |