腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
x86_64
中
的
外壳
代码
避免了
像
绝对
地址
这样
的
大
常量
中
的
空
字节
?
、
、
我是学习
x86_64
汇编
的
新手,尝试将
地址
0x400da6
中
的
内容移动到注册eax,我使用但那会导致在二进制末尾出现00,如何避免呢?
浏览 10
提问于2021-06-01
得票数 1
1
回答
x86_64
上
的
缓冲区溢出-返回到libc攻击(linux)
、
、
、
、
在研究和测试了32位linux机器上
的
各种攻击(
外壳
代码
注入,返回到libc,GOT覆盖)之后,我专注于64位世界。在实现基本
外壳
代码
注入攻击方面,我没有任何问题。但是现在我试图返回到libc对
x86_64
的
攻击,以绕过NX堆栈保护。现在,在64世界
中
,易受攻击程序
的
文本段被保护为
空
字节
,所以您不能将执行重定向到受害者内部
的
指令。
地址
中
的
浏览 0
提问于2014-04-07
得票数 3
1
回答
-mcmodel=kernel标志在x86平台
中
的
应用
、
、
、
、
我正试图交叉编译一个设备驱动程序,该驱动程序是为x86架构构建
的
,用于arm平台。它
的
编译没有任何错误,但我认为整个功能是不可用
的
。所以我检查了makefile并找到了这个特殊
的
部分。ifeq ($(ARCH),
x86_64
)这似乎是唯一依赖于架构
的
部分。在google上呆了一段时间后,我发现-mcmodel=kernel用于内核
代码
模型,而-mno区域是为了避免在内存
浏览 1
提问于2018-03-20
得票数 2
回答已采纳
1
回答
写入由db [程序集]分配
的
字符串时出现分段错误
、
、
、
、
这一行是必需
的
,
这样
我就可以在字符串"/bin/sh“
的
末尾放置一个
空
字节
。当我把它转到"mov
字节
al,esi + 7“时,这并没有导致分段错误。我假设我对存储字符串
的
内存
中
的
位置没有写权限。
中
的
dep 节.text全局_start _start: jmp简短
浏览 2
提问于2014-08-04
得票数 1
2
回答
为什么我们需要从shell
代码
中
删除
空
字节
?
、
、
我正在学习制作
外壳
代码
的
基础知识。我对此有个疑问。 在我
的
教科书中,作者将他
的
shell
代码
存储在一个环境变量
中
,并在程序中使用strcpy()注入它
的
地址
。当他生成shell
代码
时,他会删除
空
字节
。他说,这是因为strcpy()将在
空
字节
处停止。但是,我认为,因为strcpy()只是获得环境变量
的
地址
(存储他
浏览 0
提问于2018-04-30
得票数 4
2
回答
跳转到JIT (
x86_64
)
、
、
、
、
我正在用C语言为
x86_64
linux编写一个JIT编译器。unsigned char *code_1 = { 0xAB, 0xCD, ... }; void *exec_block_64
的</
浏览 6
提问于2015-04-22
得票数 4
回答已采纳
2
回答
诺普雪橇,你能解释给我听吗?
、
、
、
我一直在读这本书: 我们将创建这些NOP指令
的
大数组(或sled),并将其置于while
代码
之前;然后,如果EIP寄存器指向NOP sled中找到
的
任何
地址
,它将在执行每个NOP指令时递增,每次执行一个,直到最终到达
外壳
代码
为止。这意味着,只要返回
地址
被NOP sled中找到
的
任何
地址
覆盖,EIP寄存器就会滑下滑车到
外壳
代码
,
外壳
浏览 6
提问于2015-06-16
得票数 0
回答已采纳
1
回答
为什么SSE/AVX缺少立即加载值?
、
、
、
、
据我所知,SSE/AVX
中
没有直接加载指令。解决方法之一是将一个值加载到普通寄存器和movd,但是编译器似乎认为这比从内存加载一个标量值要花费更多。这使得每次使用通用
常量
(如1、0x80000000、0x7fffffff、0x3f800000、0x3f000000等)进行操作时,都有必要进行内存访问。那么,将这些值编码在机器
代码
中将占用4个
字节
,但是32位
绝对
地址
或rip-relative
地址
也是如此,我相信即时加载比任何类型
的
内存负载都要便
浏览 2
提问于2022-05-06
得票数 7
1
回答
删除堆栈帧设置/初始化
、
、
、
POP RBPgobjcopy -O binary --only-section=.text crashme.o crashme.output 和生成
的
程序集ab 00 00 00000
浏览 10
提问于2019-12-04
得票数 0
回答已采纳
2
回答
为什么64位程序文件大于32位?
、
、
、
64位编译
的
文件大约是。比32位可执行文件
大
20%。我认为64位操作系统和32位操作系统是一样
的
。谢天谢地,这个比例不是50%。20%真的有必要吗?64位程序也会消耗更多
的
RAM吗?字符'A‘在32位模式下需要4个
字节
,在内存
中
需要8个
字节
。一个可执行文件是否包含大量
的
常量
,这些
常量
对齐/填充,因此它以64位
的
形式更大?64位exe和32位exe之间
的
区别是指令
浏览 1
提问于2012-01-20
得票数 5
回答已采纳
1
回答
在执行过程
中
更改
外壳
代码
中
的
地址
、
、
、
、
我
的
目标是创建调用WinExec并启动notepad.exe
的
外壳
代码
。基本
代码
(虽然实际上被其他gcc生成
的
程序集包围):push 0x65746F6E push eax call0x76E137C0是WinExec在我
的
机器上禁用时所处
的
地址
(32位Windows10VM)。一旦我找到指令,我就取它显示
的
字节
浏览 2
提问于2020-07-14
得票数 2
回答已采纳
2
回答
EIP
地址
后ESP为什么填空
字节
?
$shellcode; 该
代码
基本上会使缓冲区溢出,因此EIP会被
地址
0x000ff710覆盖。我期望堆栈包含编写
的
shell-code \x90,以及\xcc。 我在免疫调试器
中
打开
代码
,看到EIP和ESP都指向0x000ff710。因为我脚本
的
下一部分是shell
代码
,所以我自然希望在堆栈上看到shell
代码
。相反,我看到了一堆
空
字节
,即序列00 00 00 01 00 00
浏览 0
提问于2015-05-19
得票数 0
0
回答
很难注入带有缓冲区溢出
的
外壳
代码
、
对于我正在执行
的
任务,我必须将执行execve(/bin/bash)
的
外壳
代码
注入到以下C程序
中
:#include <string.h> void return_input我找到了在执行execve(/bin/ sh )
的
外壳
代码
,并将用于sh
的
\x2f\x2f\x73\x68替换为用于bash
的
\x2f\x62
浏览 0
提问于2017-12-14
得票数 1
回答已采纳
1
回答
移动
x86_64
linux程序
的
虚拟内存空间以便于ROP
的
探索
、
、
、
面向返回
的
编程是一种逃避DEP或NX堆栈保护
的
技术。我正在
x86_64
Linux
中
玩ROP编码。7fdc62ff9000-7fdc63196000 r-xp 00000000 08:03 5317651 /lib64/libc-2.19.so 12
字节
内存
地址
破坏了
浏览 6
提问于2014-12-12
得票数 1
回答已采纳
1
回答
避免在
外壳
代码
中使用调用读取RIP
的
0 0xFF
字节
?
、
、
、
我试图写一个解码器存根,我遇到了一个限制0xFF作为一个坏
的
字符。我使用jmp-call-pop方法将编码
的
外壳
代码
的
地址
输入到寄存器
中
。下面是相关
的
片段:call似乎总是在其
字节
中使用0xFF。是否有另一条指令在执行时会将rip推到堆栈上并跳转到另一段
代码
?我尝试过手动将
地址
推到堆栈上,但是这会导致一
浏览 2
提问于2019-04-21
得票数 2
回答已采纳
1
回答
有人能解释一下联邦调查局火狐0天
的
部分原因吗?
、
、
这是完整
的
Javascript (和相关
的
iframes),联邦调查局显然注入了所有的“自由托管”网页在他们最近采取
的
过程。http://pastebin.mozilla.org/2776374安全研究人员说,
外壳
代码
不会下载更多
的
有效载荷,而是一个自包含
的
二进制文件,它发送带
浏览 0
提问于2013-08-05
得票数 19
1
回答
为什么我从“黑客:剥削
的
艺术”
中
得到了exploit_notesearch程序
中
的
分段错误?
、
、
、
、
前面的notetaker和notesearch程序,以及这个exploit_notesearch程序,在终端
中
编译如下:我不再记得源
代码
说我必须以这种方式编译(对于它们来说,首选
的
堆栈边界是2,但我
的
机器要求它在4到12之间)。此外,正如您所看到
的
,堆栈现在是可执行
的
。所有3个程序(notetaker、notesearch和exploit_notesearch)
的
权限都进行了修改,如本书所示: <
浏览 20
提问于2020-06-09
得票数 0
2
回答
外壳
代码
中有空
字节
吗?
、
我认为在
外壳
代码
中
不允许使用
空
字节
。在理解一些
外壳
代码
时,我似乎遇到了一些包含null
的
代码
,并且工作得很好,为什么会
这样
呢?
浏览 0
提问于2012-03-20
得票数 3
回答已采纳
2
回答
编写
外壳
代码
:为什么我
的
外壳
代码
不能工作?
、
、
我目前正在编写利用使用puts函数
的
目标程序
的
外壳
代码
。我有一个用C/内联程序集编写
的
测试程序,它可以使用一些参数调用execve,然后使用gdb从这个程序
中
获取
外壳
代码
。基于此,我
的
nop sled、有效负载和新
的
返回
地址
(等于缓冲区
的
地址
)加在一起(即我
的
外壳
代码
)也应该是144个
字节</
浏览 1
提问于2013-10-23
得票数 9
1
回答
指令
的
编码是否与.so文件
的
运行时内存不同?
、
、
、
、
我有一个使用ARM-V7A指令集
的
Android .so文件。0x1000: b #0x102c 例如,如果我想在运行时更改某个
地址
的
指令。我是将其更改为0x14e0 ( .s
浏览 4
提问于2022-01-20
得票数 0
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
入门C语言中的数组,字符串常量与指针
C/C+编程笔记:C数组、字符串常量和指针!三分钟弄懂它
你学过数组,那你知道柔性数组吗?
C语言编程经验
浅谈String的intern
热门
标签
更多标签
云服务器
ICP备案
对象存储
腾讯会议
云直播
活动推荐
运营活动
广告
关闭
领券