堆溢出之Werewolf
堆溢出small bin的unlink利用
堆溢出small bin的unlink利用
简单的fastbin堆溢出漏洞利用。
pwnable.kr fsb,本题目重点在栈上被调函数的ebp指向了调用函数的ebp。
%n的含义是%n符号前的输出的字符数量,引用传值,也就是参数是指针,而不是值。我们利用的代码
这里将4写入了相对栈顶的第二个偏移量参数作地址的位置,而不是写在第二个参数位置。
我简单做了个小实验,输入 1
printf("aaaa%2$n");
得到的结果为 1
aaaa%18$n
1
2
3
4
5(gdb) x/x $esp+18*4
0xffb5d5d8: 0xffb5f768
(gdb) x/x 0xffb5f768
0xffb5f768: 0x00000004
pwnable.kr 中简单的堆溢出利用。 堆溢出的原理:用精心构造的数据去溢出下一个堆块的块首,改写堆块的前向指针和后向指针,然后再分配、释放、合并等操作发生时伺机获取一次向内存任意地址写入任意数据的机会。
pwnable.kr算是pwn入门级别的题目,做一遍记录下大概的知识点。
本篇介绍mysql以及sql知识点的补充和拾遗。