最近读了一本书--<<渗透测试实践指南>>,测试了书中的一些例子后,开始拿ms08-067这个经典的严重漏洞练手,实践当中遇到诸多问题,好在一一解决了,获益匪浅。

在谷歌搜索的过程中发现,我遇到的这些问题很多人都遇到了,但是基本找不到直接可用的答案,下面我针对我遇到的绝大部分问题进行有序表述。

  1. 考虑到越早的系统版本漏洞越多,特别安装了windows xp sp1虚拟机,经过nessus扫描,确实存在ms08-067这个漏洞。
  2. 使用kali linux的metasploit框架开始渗透测试,发现使用msfconsole命令打开metasploit时提示数据库相关的错误,百度后得到原因:在kali中使用metasploit,需要先开启PostgreSQL数据库服务和metasploit服务.不过metasploit服务在kali2.0中已经不需要再配置了。使用service postgresql start即可,不过考虑到每次重启后都要再次输入这个命令,所以直接开机启动这个服务好了:updata-rc.d postgresql enable
  3. 正式利用ms08-067漏洞对目标计算机进行渗透,并使用攻击载荷--payload:windows/vncinject/reverse_tcp,配置好后截图如下:
  4. 然后使用exploit后却并没有成功(第一次看似成功了,却并没有得到vnc窗口,其实更多的时候我得到的是exploit completed然后就没有下文了),得到的结果截图如图所示:

  5. 端口的服务,所以如果你尝试check会发现目标端口已然不可进行渗透。

  6. 考虑到可能是VNC的问题,发现虚拟机默认没有启用VNC,一阵狂喜,结果打开VNC后问题依旧(上面的结果都是打开了VNC后测试的)

  7. 于是在本地计算机(win7)上安装VNC viewer客户端(具体配置过程百度即可),发现可以连接上kali linux的VNC,但是屏幕是灰的,鼠标变'X'还有个失败的提示,百度各种搜索后发现仍然解决不了问题,这个时候直接google了,在某个论坛上得到了如下的解释:

  8. 但是安装这个界面库是需要连接到kali官方服务器的!!尝试了更新阿里云等kali源,发现依然无法下载,于是选择走代理了:

  9. 更新完毕重启后发现VNC连接成功了!再次漏洞利用后发现问题依旧!!!!坚决不认输!继续google,在国外某论坛上看到某贴建议:是否是目标机器不支持的原因,并且推荐

    看看源码.

    从上诉源码中可以看出,windows xp同一个版本不同语言间漏洞利用的入口点都不一样!!通过后续的验证,这就是不成功的原因所在!!

    安装windows xp sp2,如上进行漏洞利用,会依然遇到上诉的问题,我最终解决的办法是:set target 10,切记不要选择自动探测,自动探测不准!!我不会告诉你这是我又栽的一个大跟头。。。

    如下我正确设置后得到的结果:

    但是我们同时又会发现一个问题:虽然得到了VNC连接,但是只能看,不能控制目标电脑的鼠标和键盘,这里我也困惑了一段时间,最后发现原来答案在上面的show options之中(我用红色横线进行了标注),vnc默认是view-only模式,couteshell(这就是youtube上那些蓝色的控制台)默认关闭,自行set即可控制鼠标和得到蓝色控制台。

    But,but,but,上面的方法对于我手中的简体版windows xp sp1仍然是不管用的!!!对于xp sp1,漏洞利用程序中只有一个选择:

    这里的入口应该是针对英文版本的,我手中的中文简体版入口应该不一样,这正好可以作为我以后自行探索的一个版本!!想到这里也是蛮开心的^_^

    这两天一直被上诉的问题困扰,这次在自行摸索下终于全部解决了,感觉收获不少啊!不积跬步无以至千里,一步一步来,我的目标会越来越清晰!!

ms08-067漏洞--初识渗透测试--想必很多初学者都会遇到我文中提及的各种问题的更多相关文章

  1. 教你通过Node.js漏洞完成渗透测试

    本篇文章较为详细的讲述了通过node.js的已知漏洞来完成渗透测试的过程,介绍了node.js存在的漏洞可以在多种工具下的不同利用方式.因为我认为会对论坛部分web安全新手有所帮助,所以整理到论坛中. ...

  2. 《Metasploit渗透测试魔鬼训练营》第一章读书笔记

    第1章 魔鬼训练营--初识Metasploit 20135301 1.1 什么是渗透测试 1.1.1 渗透测试的起源与定义 如果大家对军事感兴趣,会知道各国军队每年都会组织一些军事演习来锻炼军队的攻防 ...

  3. Firefox渗透测试黑客插件集

    前天看S哥用Firefox的hackbar进行手动注入进行渗透,觉得直接运用浏览器的插件进行渗透测试有很多优点,既可以直接在前端进行注入等操作,也可以省却了寻找各种工具的麻烦.前端还是最直接的!于是这 ...

  4. Kali Linux渗透测试实战 1.3 渗透测试的一般化流程

    1.3 渗透测试的一般化流程 凡事预则立,不预则废,做任何事情都要有一个预先的计划.渗透测试作为测试学科的一个分支,早已形成了完整的方法论.在正式开始本书的实践教学章节之前,我也想谈一谈使用Kali ...

  5. 自动化渗透测试工具(Cobalt Strike)3.1 最新破解版

    自动化渗透测试工具(Cobalt Strike)3.1 最新破解版[附使用教程] Cobalt Strike是一款专业的自动化渗透测试工具,它是图形化.可视化的,图形界面非常友好,一键傻瓜化使用MSF ...

  6. chapter1 渗透测试与metasploit

    网络对抗技术课程学习 chapter1 渗透测试与metasploit 一.读书笔记 二.渗透测试 通过模拟恶意攻击者的技术与方法进行攻击,挫败目标系统安全控制措施,取得访问控制权,并发现具备业务影响 ...

  7. PETS渗透测试标准总结

    国外的标准框架,感觉大部分渗透公司的测试指南都是从这俩借鉴的,正好复习下. 国外渗透测试标准:http://www.pentest-standard.org 渗透测试分为:前期交互,情报搜集,威胁建模 ...

  8. 渗透测试方法论(qf总结)

    渗透测试(penetration testing , pentest)是实施安全评估(即审计)的具体手段.方法论是在指定.实施信息安全审计方案时,需要遵循的规则.惯例和过程.人们在评估网路.应用.系统 ...

  9. 渗透测试(PenTest)基础指南

    什么是渗透测试? 渗透测试(Penetration Test,简称为 PenTest),是指通过尝试利用漏洞攻击来评估IT基础设施的安全性.这些漏洞可能存在于操作系统.服务和应用程序的缺陷.不当配置或 ...

随机推荐

  1. [LeetCode] Contains Duplicate II 包含重复值之二

    Given an array of integers and an integer k, return true if and only if there are two distinct indic ...

  2. 将HTML5封装成android应用APK文件的几种方法

    越来越多的开发者热衷于使用html5+JavaScript开发移动Web App.不过,HTML5 Web APP的出现能否在未来取代移动应用,就目前来说,还是个未知数.一方面,用户在使用习惯上,不喜 ...

  3. web兼容学习分析笔记--块级、内联、内联块级元素

    一.块级.内联.内联块级元素 (1)块级元素:block **独占一行 **可设置width,height,margin,padding **内部可包含块级或内联元素 (3)内联(行内)元素:inli ...

  4. Java序列化与反序列化

    Java序列化与反序列化是什么?为什么需要序列化与反序列化?如何实现Java序列化与反序列化?本文围绕这些问题进行了探讨. 1.Java序列化与反序列化 Java序列化是指把Java对象转换为字节序列 ...

  5. 一次kubernetes资源文件创建失败的排查

    今天在jenkins中创建kubernetes的rc时,检查目标yaml文件时报出如下错误: + /opt/jenkins/kube/kubectl -s http://10.xx.xx.xx:808 ...

  6. ITIL十大流程

    1.服务水平管理(Service Level Management):服务水平管理的目标是通过协调IT用户和提供者双方的观点,实现特定的.一致的.可测量的服务水平,以为客户节省成本.提高用户生产率. ...

  7. 【20160722-20160728】NOI2016滚粗记&&酱油记&&游记

    先挖坑 #include <cstdio> using namespace std; int main(){ puts("转载请注明出处:http://www.cnblogs.c ...

  8. bzoj4443[SCOI2015]小凸玩矩阵

    题意:一个n*m的矩阵(n<=m<=250),要求选出n个数(每行,每列最多选一个),求第k大数的最小值. 首先第k大的意思是从大到小的第k个数(我读错了,WA了一次还以为算法不对...) ...

  9. C#的接口

    什么是接口?其实,接口简单理解就是一种约定,使得实现接口的类或结构在形式上保持一致.个人觉得,使用接口可以使程序更加清晰和条理化,这就是接口的好处,但并不是所有的编程语言都支持接口,C#是支持接口的. ...

  10. css悬浮

    <!DOCTYPE html><html><head>  <meta charset="UTF-8">    <title&g ...