gpt4 book ai didi

c - 在客户端-服务器程序中如何传递十六进制值

转载 作者:行者123 更新时间:2023-11-30 20:49:15 25 4
gpt4 key购买 nike

在客户端服务器程序中,我必须尝试缓冲区溢出攻击以进行实验室练习。我需要将带有输入字符串的 shell 代码传递给服务器程序。在 shell 代码中,有一些值如 \x00但服务器一旦读取 \x00 就终止该字符串.

我的shell代码是这样的:

\x55\x48\x89\xe5\x48\x83\xec\x20\xc7\x45\xe0\x59\x6f\x75\x20\xc7\x45\xe4\x6c\x6f
\x73\x65\x66\xc7\x45\xe8\x21\xba\x98\x0e\x40\x00\xb8\x09\x0e\x40\x00\x48\x89\xd6

我的服务器一看到 \x00 就终止该字符串.

请提出一种克服此问题的方法。

最佳答案

正如您所提到的,当它包含空字符时,您无法将包含空字符的 shellcode 传递给您的应用程序。实际上你应该改变你的shellcode。如果我没记错的话,你可以告诉 Metasploit 在生成 shellcode 时不要生成特定字符(在你的情况下:空字符)。

关于c - 在客户端-服务器程序中如何传递十六进制值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21651045/

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