【发布时间】:2015-08-20 22:28:02
【问题描述】:
知道为什么这会导致段错误吗? mov byte [esi +9], bl
我使用调试器逐行查看,在执行该行后出现段错误。
我猜这意味着它试图访问内存中不应该访问的东西。
这是完整的代码:
global _start
section .text
_start:
jmp short call_shellcode
shellcode:
pop esi
xor ebx, ebx
mov byte [esi +9], bl
mov dword [esi +10], esi
mov dword [esi +14], ebx
lea ebx, [esi]
lea ecx, [esi +10]
lea edx, [esi +14]
xor eax, eax
mov al, 0xb
int 0x80
call_shellcode:
call shellcode
message db "/bin/bashABBBBCCCC"
【问题讨论】:
标签: linux assembly x86 nasm shellcode