[問題] 這段shellcode為何會code dump?
應該可以po這裡吧囧
===================
#include <stdio.h>
int main(){
//exit() in asm
__asm__
(
"xorl %ebx, %ebx;"
"movl %ebx, %eax;"
"inc %eax;"
"int $0x80;"
)
printf("main\n");
return 0;
}
==================
上面這個程式是我用來產生機器碼的
直接執行是work的
printf("main\n")這行沒有被執行
其中組語部份的機器碼如下:
char shellcode[]="\x31\xdb\x89\xd8\x40\xcd\x80";
然後我用另一個方式,來執行這段機器碼
程式如下:
==================
#include <stdio.h>
char shellcode[]="\x31\xdb\x89\xd8\x40\xcd\x80";
int main(int argc, char** argv){
__asm__
(
"call shellcode;"
);
printf("main\n");
return 0;
}
=================
就會core dump
請問一下是為什麼?
謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.130.51.128
※ 編輯: cobrasgo 來自: 220.130.51.128 (12/30 17:04)
※ 編輯: cobrasgo 來自: 220.130.51.128 (12/30 17:05)
推
12/30 17:47, , 1F
12/30 17:47, 1F
→
12/30 17:48, , 2F
12/30 17:48, 2F
→
12/30 17:49, , 3F
12/30 17:49, 3F
→
12/30 17:51, , 4F
12/30 17:51, 4F
→
12/30 17:52, , 5F
12/30 17:52, 5F
→
12/30 17:52, , 6F
12/30 17:52, 6F
→
12/30 17:52, , 7F
12/30 17:52, 7F
→
12/30 17:53, , 8F
12/30 17:53, 8F
→
12/30 17:53, , 9F
12/30 17:53, 9F
→
12/30 17:57, , 10F
12/30 17:57, 10F
ASM 近期熱門文章
PTT數位生活區 即時熱門文章