你好,世界
这是博客上线后的第一篇文章,用来记录建站完成状态和后续更新方向。
某校园跑软件伪造跑步证明逆向分析
通过 Frida 动态抓包与 jadx 静态分析,还原某校园跑 App 的签名算法与协议,复现伪造跑步记录工具的完整逻辑,并给出服务端防御建议。
house of lore
在 glibc 内存管理中,Small Bin 是一个**双向链表**,遵循 **FIFO(先进先出)** 机制。 当程序请求一个 Small Bin 大小的内存时,`malloc` 会从链表的尾部(`bk` 指针指向的...
house of storm
unsorted bin attack 能够通过将目标地址链入 unsorted bin 然后取出其中另一个 chunk 从而在目标地址对应的 bk 写入 `unsorted_chunks (av)` ,然而如果我们想要...
house of rabbit
第一种攻击方式是利用malloc_consolidate时缺少对fast bin中chunk的size的检查,通过修改fast bin中的chunk的size造成overlap chunk,然后触发malloc_cons...
堆相关数据结构
在 ptmalloc 中使用 `malloc_par` 结构体来记录堆管理器的相关参数,该结构体定义于 `malloc.c` 中,如下: 主要是定义了和 `mmap` 和 `arena` 相关的一些参数(如数量上限等),...
饶过tcache(版本大于2.26)
如果想让释放的 chunk 不进入 tcache 有如下方法: - 释放不在 tcache 大小范围的 chunk。 - 释放 7 个同样大小的 chunk 进入 tcache 填满对应位置的 bin。
large bin attach(2.30以上)
很好,这一段就是**“新版本(glibc ≥ 2.30)Large Bin Attack 的核心利用方式”**,而且和你前面学的“旧版本”有一个本质变化: ❗ **不能再随便用 bk 了 → 重点转向 bk_nextsi...
large bin attach(2.30以前)
large bin bin_head ↓ [H] ↓ fd [A] <------> [B] <------> [C] ↑ ↑ ↑ └──── bk ────┴──── bk ────┘
fast bin attach
劫持fast bin 链表中chunk的fd指针,把fd指针指向我们想要分配的地址处,从而控制一些关键数据,比如返回地址等 fd指向的内存能申请出来的前提是该内存对应size处的值与该fast bin对应size相同



