您的位置:首页 > 其它

Sulley vmcontrol.py 使用注意

2015-04-13 13:13 204 查看
vmcontrol.py调用的是vmrun.exe命令,提供参数选项。

ftp_session.py

from sulley import *
from requests import ftp

#run on 192.168.85.151
def receive_ftp_banner(sock):
sock.recv(1024)
aim_ip = "192.168.85.141"
sess    = sessions.session(session_filename="audits/war2ftpd.session")

target  = sessions.target(aim_ip,21)
target.netmon    = pedrpc.client("localhost",26001)
target.procmon   = pedrpc.client(aim_ip,26002)
target.vmcontrol = pedrpc.client("localhost",26003)
target.procmon_options = {"proc_name":"war-ftpd.exe"}

target.vmcontrol.restart_target()
print "Virtual Machine up and running."
sess.add_target(target)
sess.pre_send= receive_ftp_banner
sess.connect(s_get("user"))
sess.connect (s_get("user"),s_get("pass"))
sess.fuzz()


网络监控器可以部署在本地测试机上,也可以部署在被测试主机上。但是进程代理必须布置在被测试主机上。

vmcontrol.py usage

D:\tools\sulley>vmcontrol.py -r "D:\VMware\vmrun.exe" -x "D:\VMos\XP\xp pro sp2.
vmx" -s "sulley"


其中Sulley是在测试环境搭建好的时候提供的快照name。

vomcontrol.py 需要修改github上的源码

def revert_to_snapshot (self, snap_name=None):
if not snap_name:
snap_name = self.snap_name

self.log("reverting to snapshot: %s" % snap_name, 2)

command = self.vmrun + " revertToSnapshot " + '"'+self.vmx +'"'+ " " + '"' + snap_name + '"'
return self.vmcommand(command)


原因是默认不识别空格路径,所以要在
command
上添加双引号。在此文件中很多,如果用到都需要修改。可以在
print command
查看一下报错原因。

使用vmcontrol.py需要安装依赖文件pywin32

在环境变量中设置pythonpath 引入lib文件夹。

存在的问题:当测试过程中使用的是快照机制,如果crash文件部署在被测试虚拟机上,一旦恢复运行,crash文件也会跟着回滚到快照点,以至于crash中的record永远都是0,如何解决这一问题。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  sulley fuzzing