20145319 《网络渗透》MS08_067安全漏洞

一 实验内容

  • 了解掌握metasploit平台的一些基本操作,能学会利用已知信息完成简单的渗透操作
  • 了解漏洞MS08_067的相关知识
    • 安全公告:KB958644
    • 时间:2008年底
    • 原理:攻击者利用受害者主机默认开放的SMB服务端口445,发送特殊RPC请求,通过MSRPC接口调用serve服务函数NetPathCanonicalize函数对进行远程访问的路径规范化,而此函数中存在栈缓冲区内存漏洞,可被利用实施远程代码执行
    • 详细原理说明:在规范化路径操作中,就是将路径字符串中'/'置换成''以及出去相对路径(例如:'\.'),而服务程序在这部分的地址空间检查存在逻辑漏洞,攻击者可以在函数除去“\..”字符串时,将路径字符串中的内容复制到路径串之前的地址空间中,覆盖掉返回地址执行shellcode(原理类似我们之前所做的缓冲区溢出攻击)
    • 受影响的操作系统:windows 2000/xp/server 2003/server 2008/vista/7 Beta
    • 影响:能远程主动发起对漏洞主机端口的扫描,并且能直接获得漏洞主机的系统权限,属于最高严重级别的漏洞
  • 本次实验渗透对象: Windows 2003 SP3

二 实验步骤

  • 进入控制台之后,首先,我们可以使用search命令搜寻一下有关于漏洞MS08_067的相关信息
  • 得到相应模块名之后,我们使用该模块,使用show payloads命令确定我们需要的攻击载荷
  • 阅读每一个payload的功能描述,选择自己需要的payload,这里我选择generic/shell_reverse_tcp来获取漏洞主机的shell(选择我们之前用的windows/meterpreter/reverse_tcp也是可以的,只是步骤和最后效果可能有些许不同)
  • set payload generic/shell_reverse_tcp选择payload,并查看相关信息
  • 按照上述信息,我们需要设置好监听ip,监听端口以及攻击Ip(这里需要利用RPC请求发起攻击,所以RPORT设置为445不需要修改)
  • 我们可以通过修改target的值,来选择我们具体想要攻击的计算机系统(通常可以采用自动选取,即target设置为0)
  • 设置完成后,使用exploit命令发起渗透攻击,结果如下

三 问题

  • 很多同学看了上述步骤也许早就开始动手实践起来,感觉自己像电影里的黑客高手一样,流畅而优雅的对目标主机进行攻击,输入exploit命令成功的界面似乎下一秒就要跳出来,但是你却遇到了一些意料之外的事情
  • 可能是它
  • 或者是它
  • 什么,这和说好的不一样!!不要心急,我们可以从错误信息来慢慢分析
  • 首先第一种情况,错误报告为connectionRefused我们的连接被拒绝了,第一时间我们可以对目标机进行ping命令尝试,发现可以ping通,这时候我们就要慢慢从渗透工作的开始重新来过
  • 第一步,我们要先搜集关于目标机的信息,我们可以使用Nmap来探测有关于目标机的端口以及其他信息
  • 我们找到了真正原因,目标的445端口是关闭的
  • 这时候我们可以通过目标机的计算机管理中,启动server服务,将445端口打开
  • 或者打开注册表管理,依次点击注册表选项HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\NetBT\Parameters,进入NetBT这个服务,将SMBDeviceEnabled值修改
  • 之后有了上面的经验我们来分析第二个错误,同样我们依照上述思路对目标机进行收集,此外这里就不得不提nmap的强大功能,这次我们将使用到nmap的script模块,脚本功能,我们使用的vuln脚本将会扫描目标机存在的漏洞
  • 我们注意到HOST SCRIPT RESULT块的信息,发现其中并没有我们想要的结果MS08_067
  • 这时候我们可以在目标主机中输入systeminfo命令
  • 看到第123条,KB958644,正是漏洞MS08_067的安全公告编号(看来刘老师拷给我们的靶机实在是固若金汤,居然早已经下好了补丁),我们已经找到原因了,目标主机居然是安全的!!这时我们只有选择将这个补丁卸载(貌似会导致其他服务也无法启动),可是我们已经学到了如何利用MS08_067漏洞进行渗透的思路和手法,不如青山不改绿水长流,去渗透其他具有漏洞的主机吧

四 其他

  • 这次ms08_067漏洞渗透的原理其实是与我们之前的缓冲区溢出攻击类似的,因此也受到数据执行保护,和地址随机化的影响,但是我们现在的计算机操作系统多半都有DEP机制(数据执行保护),所以实验不成功的伙伴们可以考虑关闭掉这个机制
  • xp系统下,找到系统文件boot.ini修改最后一行将/noexecute=optin/execute

20145319 《网络渗透》MS08_067安全漏洞的更多相关文章

  1. 20145319 《网络渗透》MS11-050漏洞渗透

    20145319 <网络渗透>MS11-050漏洞渗透 一 实验内容 初步掌握平台matesploit的使用 有了初步完成渗透操作的思路 了解MS11_050相关知识: - 安全公告:KB ...

  2. 20145211《网络渗透》MS12-004漏洞渗透

    20145211<网络渗透>MS12-004漏洞渗透 一 实验原理 初步掌握平台matesploit的使用 有了初步完成渗透操作的思路 在这里我选择对的不是老师推荐的MS11_050,而是 ...

  3. 20145319 《网络渗透》MS12_020安全漏洞

    20145319 <网络渗透>MS12_020安全漏洞 一 实验内容 初步掌握平台matesploit辅助模块aux的使用 辅助模块包括扫描等众多辅助功能 本次展示DOS攻击的实现 有了初 ...

  4. 20145211 《网络渗透》MS08_067安全漏洞

    20145211 <网络渗透>MS08_067安全漏洞 一.实验原理 ms08_067是服务器服务中一个秘密报告的漏洞,于2008年被发现.攻击者利用靶机默认开放的SMB服务的445端口, ...

  5. 20145319 《网络渗透》MSF基础应用

    20145319 <网络渗透>MSF基础应用 一 实验链接 渗透实验一:MS08_067渗透实验 渗透实验二:MS11_050渗透实验 渗透实验三:Adobe阅读器渗透实验 渗透实验四:M ...

  6. 20145319 《网络渗透》web基础

    20145319 <网络渗透>web基础 实验要求 掌握网页编程的基本知识 html语法 javascript php 前端,后台,数据库之间如何建立连接 掌握数据库的使用 mysql的启 ...

  7. 20145319 《网络渗透》免考—API拦截技术

    20145319 <网络渗透>免考-API拦截技术 概述 本次实验在window环境下进行,主要通过编写hook代码和注入程序,将我们的hook代码通过dll文件的形式注入到目标中,拦截其 ...

  8. 20145319 《网络渗透》web安全基础实践

    20145319 <网络渗透>web安全基础实践 问题回答 Sql注入攻击原理,如何防御 攻击原理:由于对于用户输入并没做出相应限制,因此可以通过构造特定的sql语句,达到自身的一些非法目 ...

  9. 20145319 《网络渗透》DNS欺骗

    20145319 <网络渗透>DNS欺骗 实验内容 dns欺骗实质上就是一种通过修改dns文件来改变目标想访问的域名和对应ip的攻击,使得目标在访问自己常用域名时不知不觉落入我们的圈套(可 ...

随机推荐

  1. python中模块包的离线下载教程

    1.简介 当我们进行Python项目的迁移时(例如迁移到另外一台服务器上),如果该服务器要求离线安装, 往往需要我们将项目中的所需模块包进行离线操作. 2.教程 2.1 首先安装pip2pi模块,它可 ...

  2. LimeSDR环境安装与测试

    虚拟机:ubuntu虚拟机建议4g内存,64g硬盘,usb3.0已开启 //否则编译过程耗尽内存 1 换阿里云源(加速)# deb cdrom:[Ubuntu 16.04 LTS _Xenial Xe ...

  3. Win10系列:C#应用控件基础8

    ToggleSwitch控件 在应用程序中ToggleSwitch控件可以模拟一个允许用户在启用和禁用两种状态之间进行切换的物理开关,ToggleSwitch控件的功能与我们在日常生活中所使用的电源开 ...

  4. ThinkPHP5的数据操作和Thinkphp3.2.3对比小结

    前言: 由于Thinkphp5和Thinkphp3.2.3的版本差距过大, 在记忆方面容易混淆. 故特意记录一下在数据操作上的对比的不同. Tp3.2.3 增:add(),addAll() 查:fin ...

  5. Python _Mix*9

    1. 函数 函数是对功能的封装 语法: def 函数名(形参列表): 函数体(代码块) 代码块中有可能包含return 调用: 函数名(实参列表) def mix(a,b): #def 函数名(a和b ...

  6. OC关于项目里面的代码统计次数

    备注:这里只是个人的观点,有的地方也是copy,多多指教,个人笔记,有侵犯你们版权的地方还望海涵!!! 1.打开终端 2.cd 进入项目根目录 3.输入命令 find . "(" ...

  7. JavaScript实现本地图片上传前进行裁剪预览

    本项目支持IE8+,测试环境IE8,IE9,IE10,IE11,Chrome,FireFox测试通过 另:本项目并不支持Vue,React等,也不建议,引入JQuery和Vue.React本身提倡的开 ...

  8. 记解决一次“HTTP Error 400. The request URL is invalid”的错误

    今天将图片服务切到使用了cdn的机器上面去,然后就部分图片报如下图错误“HTTP Error 400. The request URL is invalid” 看到这种错误信息,一般的开发者心中可能会 ...

  9. python day19--面向对象,接口,封装

    #1.接口类,对象类.规范类中方法的统一. # 第一版:三个类,每个类中有相同的方法 # class Alipay: # def __init__(self,money): # self.money= ...

  10. SQLserver触发器实现A表insert到B表

    CREATE TABLE tab1(tab1_id varchar(11));CREATE TABLE tab2(tab2_id varchar(11)); 现在我们有两张表,要实现在A表里面inse ...