首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >更多空值免费外壳代码

更多空值免费外壳代码
EN

Stack Overflow用户
提问于 2011-07-28 12:39:14
回答 1查看 429关注 0票数 4

我需要为以下指令找到无空值的替代品,这样我才能将以下代码放入外壳代码中。

我需要转换为无空值的第一条指令是:

代码语言:javascript
复制
mov ebx, str    ; the string containing /dev/zero

字符串str是在我的.data部分中定义的。第二个是:

代码语言:javascript
复制
mov    eax,0x5a

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2011-07-28 13:49:32

你提到了通过xor来清除的常量加载,加上incshl来获得你想要的任何一组位。

我能想到的加载未知常量(未知的str)的最不脆弱的方法是加载常量xor,并使用像0xAAAAAAAA这样的值,然后在后续指令中返回xor。例如,加载0x1234

代码语言:javascript
复制
   0:   89 1d 9e b8 aa aa       mov    %ebx,0xaaaab89e
   6:   31 1d aa aa aa aa       xor    %ebx,0xaaaaaaaa

你甚至可以选择0xAAAAAAAA作为一些有趣的ascii!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6854156

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档