LyScript
LyScript copied to clipboard
您好,感谢您的工具,我这边测试32位没问题,64位能够连接上,但是没法获取寄存器并且执行命令?
测试脚本: from LyScript64 import MyDebug
if name == "main": dbg = MyDebug(address="127.0.0.1") connect_flag = dbg.connect() print("isok:{}".format(connect_flag))
rax = dbg.get_register("rax")
RBX = dbg.get_register("RBX")
rip = dbg.get_register("rip")
# 检测套接字是否还在
ref = dbg.is_connect()
print("是否在连接: ", ref)
ref = dbg.is_debugger()
print(ref)
ref = dbg.is_running()
print(ref)
提示信息中isdebug以及isrunning均为false: $ python test64.py isok:1 是否在连接: True False False 测试程序目前在入口断点处
感谢!
使用的x64dbg_2022_03_26~
入口处获取到的参数是0,会返回False
插件功能,经过了多次验证,您使用 Mar 21 2022 (TitanEngine) 试试
问题将在下次更新修复,感谢反馈!
您好,您那边测试环境是win10?我这边测试win7 本地远程64位都可以了,换了个linux远程连接目标win7也是获取不到寄存器值和执行单步命令:
python3 test64.py
rax = 0x0 eax = 0x0 ax =0x0 获取R系列寄存器: 0x0 是否在连接: True False False rax = 0x0 RBX = 0x0 rip = 0x0 rip = 0x0
换了个本机win10连接本机也是一样。寄存器获取失败,单步命令执行不了: rax = 0x0 eax = 0x0 ax =0x0 获取R系列寄存器: 0x0 是否在连接: True False False rax = 0x0 RBX = 0x0 rip = 0x0 rip = 0x0 您那边好复现吗?我的完整脚本内容: from LyScript64 import MyDebug
if name == "main": dbg = MyDebug(address="127.0.0.1") connect_flag = dbg.connect()
rax = dbg.get_register("rax")
eax = dbg.get_register("eax")
ax = dbg.get_register("ax")
print("rax = {} eax = {} ax ={}".format(hex(rax),hex(eax),hex(ax)))
r8 = dbg.get_register("r8")
print("获取R系列寄存器: {}".format(hex(r8)))
rax = dbg.get_register("rax")
RBX = dbg.get_register("RBX")
rip = dbg.get_register("rip")
# 检测套接字是否还在
ref = dbg.is_connect()
print("是否在连接: ", ref)
ref = dbg.is_debugger()
print(ref)
ref = dbg.is_running()
print(ref)
print("rax = {}".format(hex(rax)))
print("RBX = {}".format(hex(RBX)))
print("rip = {}".format(hex(rip)))
dbg.set_debug("StepIn")
rip = dbg.get_register("rip")
print("rip = {}".format(hex(rip)))
#dbg.run_command_exec("g")
dbg.set_debug("StepIn")
dbg.run_command_exec("InstrUndo")
dbg.run_command_exec("InstrUndo")
dbg.close()
不确定是什么问题,在上述无法用LyScript64获取寄存器状态下,测试LyScript32 去连接是可以执行StepIn和InstrUndo这种命令的,证明应该是连接成功了,当然只是换下库瞎测试下,32位的LyScript32获取不了64位寄存器状态
抓包测试了下,LyScript64在我的kali和win10上使用都是建联之后只发了一个数据包内容为Exit(对应dbg.close()),然后就退出了,脚本里的控制指令都没发出去。用pip方式安装的,很奇怪。。win7没有问题
目前只在windows10系统下测试通过
执行命令
您要测试的代码没任何问题。
目前只支持在windows10系统下使用,如果在linux安装pip包,请自行调整,插件pip包是开源的。
嗯嗯感谢,我这边就是反而测试的win7可以,win10不行,刚才用您的python3.8.5也不行,稍等我有空再看下python里的代码。感谢您的回复!