我可是会飞的啊 主要方向:re,pwn

堆利用详解:the house of force

简介 介绍部分,来自参考资料[0] 漏洞成因 堆溢出写 top_chunk 适用范围 2.23——2.29 可分配任意大小的 chunk 需要泄露或已知要操作的目标地址 利用原理 对 top_chunk 的利用,过程如下: 申请 chunk A 写 A 的时候溢出,修改 top_chunk 的 si

selph 发布于 2024-01-08

[libc 2.35 源码学习] 申请内存 usetop

_int_malloc use_top: /* 如果足够大,分割top chunk If large enough, split off the chunk bordering the end of memory (held in

selph 发布于 2024-01-07

堆利用详解:the house of einherjar

简介 介绍部分,来自参考资料[0] 漏洞成因 overflow write、off by one、off by null 目的是修改chunk的prev_inuse标志位 适用范围 2.23—— 至今 可分配大于处于 unsortedbin 的 chunk 利用原理 利用 off by null 修

selph 发布于 2024-01-06

[libc 2.35 源码学习] 释放内存 fastbin

__libc_free void __libc_free(void *mem) { mstate ar_ptr; mchunkptr p; /* chunk corresponding to mem */ // 如果释放0内存,直接返回 if (mem == 0) /

selph 发布于 2024-01-05

[libc 2.35 源码学习] 申请内存 fastbin

_int_malloc 申请tcachebin的函数是__libc_malloc,如果tcachebin分配不了,就会调用_int_malloc进行接下来的分配 _int_malloc优先分配fastbin中的chunk: /* If the size qualifies as

selph 发布于 2024-01-04

[libc 2.35 源码学习] 释放内存到 tcachebin

__libc_free void __libc_free(void *mem) { mstate ar_ptr; mchunkptr p; /* chunk corresponding to mem */ // 如果释放0内存,直接返回 if (mem == 0) /

selph 发布于 2024-01-03

[libc 2.35 源码学习] 申请内存从 tcachebin

tcache_init:初始化 tcache_perthread_struct static void tcache_init(void) { mstate ar_ptr; // arena void *victim = 0; const size_t bytes = si

selph 发布于 2024-01-02

【附自动化脚本】编译可进行源码级调试的libc库

编译可进行源码级调试的libc库 手动操作过程 下载对应版本的libc源码:Index of /gnu/glibc,解压 创建两个目录:glibc-2.xx_build,glibc-2.xx_out 进入glibc-2.xx_build目录 执行: ../glibc-2.xx/configure -

selph 发布于 2023-12-28

[Fuzzing101] 01:CVE-2019-13288

AFL 复现 Crash 样本 本段选自 Fuzzing 101 下载xpdf: wget https://dl.xpdfreader.com/old/xpdf-3.02.tar.gz tar -xvzf xpdf-3.02.tar.gz 使用AFL编译器插桩编译:AFL通过对编译器进行封装来完成

selph 发布于 2023-12-26

[技能兴鲁2023 决赛 职工组]re-ezalgorithm

附件给了个exe,是pyinstaller打包的结果,没操作过这种程序,赛场上也没做出来,现在再来做一做(输在了没准备工具上) 环境准备 解包需要两个工具 pyinstxtractor.py:exe -> pyc github地址:extremecoders-re/pyinstxtractor: P

selph 发布于 2023-11-30