assembly - 字节 58 之后的字节 90 是否会影响它,以至于它不能被解释为命令 popq %rax?
问题描述
我ROP attack
最近在做作业。
现在我找到了一个 garget ,它有一个代表addval_219
的字节。我的想法是当小工具使用 popq 指令时,它会从堆栈中弹出我的数据。58
popq %rax
使用时objdump
。我有反汇编代码addval_219
00000000004019a7 <addval_219>:
4019a7: 8d 87 51 73 58 90 lea -0x6fa78caf(%rdi),%eax
4019ad: c3 retq
当我设置addval_219
0x4019ab
. 执行代码时,我有一些问题。
90
现在将翻译成什么指令字节?- 一个
90
接一个字节58
会影响它,以至于它不能被解释为命令popq %rax
吗? - 如果 byte
90
换成另外一个 byte,我还能直接跳转到 byte 所在的地址58
吗?
解决方案
推荐阅读
- java - 我可以在 java 的父子选项卡中并行运行测试吗?(硒测试NG)
- python - Python3 在同一行打印 - 7 段设备格式的数字
- powershell - 导出所有 Azure AD 组,包括嵌套组、其成员和所有者 (PowerShell)
- dart - 你可以多次运行 Isolate.spawn 吗?
- excel - 当工作簿在 vba 中不可见时,如何达到单元格值
- python - 生成随机唯一的 3D 二进制矩阵
- android - getContentResolver 上不存在 Android _data'
- angular - 将 Angular 5 升级到 9 时出现“不兼容的对等依赖”错误
- javascript - 如何从选定的 Kendo Grid 行中填充表单
- python - 使用来自 spotify API 的 pandas 构建去规范化数据框的最佳方法