无      2017-10-28
向石师傅学习!所以先学习一下他关于`tcpdump`的[第一篇分析](http://whereisk0shl.top/post/2016-10-23-1),看看这个漏洞是什么样的。 ## 0x01 安装tcpdump 首先是下载存在漏洞的指定版本的[tcpdump](https://www.exploit-db.com/apps/973a2513d0076e34aa9da7e15ed98e1b
无      2017-10-12
这里分析的是最一般的随机数过程,即`srand`=>`rand`的过程,主要是想看能否根据获得的随机数逆向出种子。 ## unsafe_state
无      2017-09-28
由于在XCTF总决赛上遇到了`house of force`这种没见过的姿势,于是想把关于堆的都看看,于是就找到了这个[how2heap](https://github.com/shellphish/how2heap),下面来学学。 ## 0x01 基础篇 ### 1. first_fit `first_fit`是`linux`的一种分配机制,在需要分配空间的时候,会先选大小最合适的最小
无      2017-10-16
`Return to dl-resolve`可以绕过`NX`及`ASLR`,但在`PIE`或`RELRO`情况下会很难利用。 没法泄漏 参考资料: http://4ngelboy.blogspot.tw/2015/07/return-to-dl-resolve.html http://d0m021ng.github.io/2016/11/03/PWN/ret2-dl-resolve-pa
无      2017-10-23
`SROP`全称为`Sigreturn Oriented Programming`,表明利用`sigreturn`这个函数实现`ROP`的技术。(之前听说的时候一直以为是`system rop`XD) 没有办法控制寄存器 参考链接: http://4ngelboy.blogspot.tw/2015/07/srop.html http://www.freebuf.com/articles/n
无      2017-10-24
`BROP`即`Blind ROP`,是在没有给二进制文件时将二进制文件`dump`下来的技术,下面一起来看看。
无      2017-10-11
由于最近一直在看堆的源码,所以一直想出一道关于堆的利用的题目,但是把源码翻来覆去也没想到好的思路,于是只能将从`how2heap`中学到的姿势混杂了一下,其中`house_of_orange`的利用方式真是亮瞎吾狗眼,于是就放了进来。第一次出`pwn`题还不太熟练,不足之处还望大牛们多多包涵XD ## 0x00 源码及编译 ``` gcc -s -pie -fPIE source.c -o b
无      2017-08-31
对于堆溢出,最重要的就是了解内存空间是如何申请和释放的,而最简单的方式就是阅读源码。源码可以直接查看`ptmalloc`的[源代码](https://code.woboq.org/userspace/glibc/malloc/malloc.c.html),同时根据华庭的[pdf](http://paper.seebug.org/papers/Archive/refs/heap/glibc%E5%
无      2017-09-06
最后就该看看内存分配的具体流程了。 ## 0x01 内存分配 内存分配的核心是`_int_malloc`,不过同样有个`__libc_malloc`来对锁进行一些处理,先从这个入手。 ### 1. __libc_malloc 这个函数主要就是获取分配区的锁,并且寻找一个可以分配空间的分配区。 ``` 3041 void * 3042 __libc_malloc (size_t bytes
无      2017-09-23
由于对于`snprint`是如何做到能用`vararg`来溢出`format`百思不得其解,所以只能分析一波源码了。 ## vfprintf ### 0. 说明 #### 1) 参数 `vfprintf`的作用为将某参数列表`arg`的值格式化`format`后输入到某个流`stream`中,其函数定义如下: ``` int vfprintf(FILE *stream, const char