gpt4 book ai didi

c - 在不知道名称的情况下如何访问 C 结构的成员?

转载 作者:行者123 更新时间:2023-12-04 11:24:58 24 4
gpt4 key购买 nike

我正在处理一个未记录的 API,我正试图对其进行一些逆向工程 - 别担心这不是恶意的,只是试图以创造性的方式完成用例。

我有一个指向 C 结构的指针。有没有办法让我通过检查内存来确定这个结构有多少成员?他们的值(value)观?

我怀疑实际的成员名称不可用,但也许是?

最佳答案

你不能。您所能做的就是检查内存,并尝试进行猜测。

例如,指针值有时很容易定位,因为它们通常位于同一个“一般区域”。如果您有结构的地址,请查找“接近”的数字值(平台指针大小,通常为 32 或 64 位)。

在您的平台上,可能还值得调查一些“常见” float 的位模式是什么,并寻找那些。在这里,应用程序和/或领域的知识当然有帮助,也许那里有一些“应该”的值,然后这些是自然要搜索的东西。

如果您可以访问接受和/或返回结构的 API 中的任何函数,您可能想尝试调用它们并检查差异,这可以为正在发生的事情提供线索。

关于这一点,您当然也可以首先逐步执行分配/创建结构的代码,以查看它在何处执行的操作。

关于c - 在不知道名称的情况下如何访问 C 结构的成员?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/829966/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com