gpt4 book ai didi

linux - 32 位程序 exec() 一个 64 位程序

转载 作者:太空狗 更新时间:2023-10-29 11:22:07 24 4
gpt4 key购买 nike

在我的 Debian amd64 系统上,我尝试在示例程序上运行 32 位漏洞利用负载测试。我知道这些负载有效,因为我已经在 32 位虚拟机中测试过它们。

所有必要的库都已安装以运行 32 位或 64 位程序。

但是当shellcode执行int 80h调用exec("/bin/sh", ...)时,系统调用失败,返回错误码的 -2(ENOENT)。

修改 shellcode 以执行另一个 32 位程序会导致 shellcode 按预期工作。

那么,有没有办法从 32 位程序exec()一个 64 位程序?

最佳答案

在使用 execl 库函数时有效。

从 shell 代码调用库函数可能很困难,但您可以尝试在普通程序中跟踪它的执行情况,看看如何编写执行相同操作的 shell 代码。

关于linux - 32 位程序 exec() 一个 64 位程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25715896/

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