《metasploit渗透测试魔鬼训练营》靶机演练之第五章实战案例KingView 6.53版本CVE-2011-0406漏洞

在一个笔记本上开两个虚拟机有点卡,而且太麻烦,就把metasploit的目标靶机放在别的机器上了,ip自己配置了一下,

目标主机:192.168.137.254

入侵机:192.168.137.253

目标机上存在漏洞:KingView 6.53版本CVE-2011-0406漏洞,系统 win2003 SP0

下面进入正题:

在信息搜集中得知,目标主机开放了777端口,百度发现,这个端口运行着KingView的服务,并且存在着漏洞。

直接在msf在search这个漏洞的利用模块。。。没有啊

于是,上网搜了一个exp,放到 /exploits/windows/scada中,查看了一下源代码,发现里边target没有win2003 SP0。

没办法,先试试 winXP SP3看看能否同用吧。

配置过程:

看看能反弹连接吗:

好吧。。。果断不行。。

回到目标主机上去调试吧,通过刚才的一次攻击,发现HistorySvr.exe停止了运行,说明漏洞被触发了,但是没有执行shellcode,那么,应该就是跳转指向的地址不是shellcode的地址,最终调用了系统默认的异常处理函数。

打开OllyDBG,在option菜单中选择 “Just-in-time debugging”,在选“Make ollydbg just-in-time debugger”,之后退出。重新启动HistorySvr服务,并再次进行攻击,Ollydbg截断了异常处理,程序终止在了异常的指令处。

原因是call调用的eax+0x0C地址没有被分配使用,触发了异常。

回到该模块的源代码,找到target,发现针对目标win XP SP3 EN返回地址Ret正是EAX寄存器的值0x00A1FB84,显然,溢出发生之后,数据包的Ret覆盖了EAX,但是并没有成功指向shellcode的地址,接下来,只需要修改Ret的值就可以了。

需要定位shellcode的位置,在该渗透模块添加了一个新的target,Ret随意写,在构造exploit函数的溢出数据包时,加上特殊的定位字符,但要保持总长度不变。

CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享关闭Ollydbg,重启服务,再次进行攻击:

回到目标靶机上,ollydbg再次拦截到异常,直接在Memory中定位字符“ABAC”,在0x00B404C0搜索到了字符,相应的找到了shellcode的地址0x00B404C4

接下来,就修改Ret和exploit函数就可以了:

重新加载,再次攻击,成功。

猜你喜欢

转载自blog.csdn.net/2301_77162959/article/details/130900620
今日推荐