问题标签 [pykd]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
607 浏览

python - 将 Pykd 与 SOS 一起使用

我想在 PyKd 中执行以下操作:执行另一个扩展的命令并处理其输出。

首先,似乎我必须在 PyKd 中加载 SOS,而不是在 WinDbg 中。我做了这个

接下来我想像这样对分机进行调用:

( API中没有记录第三个参数。)

但是,它给了我错误

我在!pycmd命令提示符下执行所有这些操作。

如何从 PyKd 调用 SOS 命令并处理输出?

版本:

WinDbg 9.2.9200.16384 x64
调试 64 位应用程序
Pykd 0.2.0.26 64 位
Python 2.7.3

0 投票
2 回答
1435 浏览

assembly - 反汇编程序如何从内存中提取操作码?

我试图弄清楚反汇编程序是如何工作的。具体来说,内存中的内容如何映射到相应的汇编语言操作码。

下面是内存中的内容,第一列地址:

以及对应的反汇编结果,第一列内存地址,第二列指令操作码,其余列汇编指令:

现在我可以看到操作码e814d7ffff字面意思是(e8 14 d7 ff ff

但是如何解释内存地址中的内容0x773eed5c呢?操作码push eax和连续nop的 s 如何映射到内存内容0c15ff50 90773a17 90909090 8b55ff8b

更新:

我上面给出的反汇编结果是不正确的。正确的结果,如下所示,很好地适合内存中的内容:

有关我的错误的详细信息:我正在使用pykd围绕 WinDbg 开发工具。关于其disasm模块的文档没有详细介绍,所以我对disasm.jumprel函数使用了错误的参数,导致反汇编结果不完整。

0 投票
2 回答
2875 浏览

python - 使用 Windbg PyKD Python 扩展打印/中断仅调用指令

使用 WinDBG 的 python 扩展,我只想在控制台中打印调用指令。[一种一步调试]

我的代码:

我尝试了上面的代码并得到了以下结果。

输出 :

这里的问题似乎是,在调试器进入进程后,调试线程被启动并且调试线程在一段时间后被终止,因为它是当前线程[我们可以看到最后一次调用是对 ntdll!RtlExitUserThread]。因此,即使被调试应用程序运行,我在命令行中也看不到任何东西。

我见过一个使用 winappdbg 并执行类似操作的脚本。这是脚本:

https://github.com/MarioVilas/winappdbg/blob/master/tools/ptrace.py

我想建立类似的东西。

0 投票
1 回答
1135 浏览

python - 在 PyKD 中获取可执行文件的模块

PyKD 中,我可以像这样获取可执行文件的进程名称:

我可以得到模块信息

如何从进程名称转换为模块名称?

它不像提取文件名那么简单,因为带有特殊字符的文件名,如Notepad++.exe转换notepad__为模块名。

背景:我想自动化转储分析,首先我检查它是否是我的程序,其次我想检查我需要模块信息的崩溃程序的版本。我想让它更通用一点,并考虑用户重命名可执行文件的情况。

版本(如果重要):PyKD 0.3.0.25、32 位、WinDbg 6.2.9200、Python 2.7.8

0 投票
1 回答
149 浏览

python - 如何在 PyKD 中获取模块的原始文件名?

我在PyKD中有一个模块:

有了这些信息,我怎样才能找到有关该模块的更多信息,类似于lm vm <module>WinDbg 的命令?

特别是,我想获得“原始文件名”。

0 投票
1 回答
1065 浏览

windbg - x64 上的 mona.py 出现意外错误

我的操作系统是 Windows 10。我根据网站上的文档用 WinDbg 配置了 Mona 。

我可以将 Mona 与 WinDbg x86 一起使用。但在 WinDbg x64 中它说:

谁能告诉我如何解决它?

0 投票
1 回答
96 浏览

windows - WinDbg 中的 Python 单击模块

我已经使用click模块有一段时间了,我认为它很棒。但是我在 WinDbg python 插件中使用它时遇到了一些问题。

我正在使用以下脚本,它在 Linux 中运行良好:

可以在下面看到成功调用脚本(这是在 Linux 命令行中):

可以在下面看到一个不成功的脚本调用(这是在 WinDbg 插件中):

任何想法为什么会发生这种情况以及为什么 WinDbg 插件不接受参数以便通过单击正确解析它们。

0 投票
1 回答
319 浏览

windbg - pykd 中的 searchMemory 函数

我正在尝试了解如何searchMemory()在 pykd 扩展中为 windbg 使用该功能。

文档说明了以下内容:

有人知道参数是什么以及我应该如何使用这个函数?

0 投票
5 回答
1648 浏览

python - WinDBG 找不到 PyKd 的 python 解释器

我正在尝试使用 PyKd 将 python 扩展加载到 WinDBG。

.load pykd成功。

当我跑步时!py,我得到了这个:

找不到python解释器

我尝试过的事情:

  • 不同版本的python

  • 使用 PyKd 的 dll 和 pyd 文件

  • .重新加载 /f

  • 不同的符号路径

  • 调试WinDBG和PyKd,也是通过源码,没有成功

是的,我的环境使用 Python 路径正确设置。

在网络上找不到任何提及该问题的内容。它在我拥有的不同系统和配置上总是运行顺利,但在我的新系统上,我收到了这个奇怪的消息。

细节:

Windows 10 家庭版,版本 1607,x64

WinDBG x86,构建 10.0.15063.0

Python 2.7.13,但我也尝试了许多其他版本。

符号路径:cache*c:\symbols;srv* https://msdl.microsoft.com/download/symbols

戴尔 XPS 15

0 投票
1 回答
395 浏览

windbg - Windbg pykd 内存断点

我正在尝试通过在 windbg 上使用 pykd 来制作具有内存断点功能的自动化脚本

简而言之,这是我的脚本

当 GUARD_PAGE_VIOLATION 发生时,

“嗨,MemBp!” 被打印并且WinDbg中断了目标进程

与“在任何异常处理之前报告第一次机会异常。可能会预期并处理此异常。”

我希望知道为什么即使我给了NoChange它也会崩溃

以及如何修复脚本以使其正常运行