mallo函数流程详解
本文章推荐与源代码搭配食用。源码指路:https://elixir.bootlin.com/glibc/glibc-2.31/source/malloc/malloc.c对了,文章开头介绍的1.xx版本的内容都没用,引入ptmalloc之后改动大得很。 简略情报 堆功能出现的最早版本大概是在glibc 1.09?wow~ 好早啊啊 版本更迭 gli…
2025-5-12 7:48
|
44
|
|
4226 字
|
18 分钟
malloc文件阅读指北
第一次阅读malloc.c源文件,从头向下看记录了一些比较感兴趣的内容。 __malloc_assert 没啥用,针对malloc断言的处理内容,在源码中比较靠前的位置。 static void__malloc_assert (const char *assertion, const char *file, unsigned int line, c…
2025-5-12 7:30
|
48
|
|
1498 字
|
7 分钟
PWN环境搭建
首先推荐这篇博客,24.04Ubuntu快速搭建PWN 快速搭建pwn环境 发现自己没有快速搭建pwn环境的笔记,所以准备记录一个,刚好看见Collectcrop师傅的一篇博客,索性直接抄过来,可能会加一点个人评价,推荐直接去看collectcrop师傅的博客 安装清单 pwntoolsROPgadgetseccomp-toolsglibc-all…
2025-5-08 16:21
|
56
|
|
855 字
|
4 分钟
源码阅读环境搭建
基于vscode做环境配置,方便代码阅读,找到了许多有趣的工具。提前要说一点,关于vscode自动检查代码并标注错误问题,可以用创建新工作区并禁用所有插件的方式解决。 1. 翻译插件 comment translate 可以很方便的翻译注释,全文翻译是我最看重的功能,很方便。只是使用的谷歌翻译api,现在已不能使用,只能挂个外网或者换个api。在g…
2025-5-08 16:15
|
30
|
|
710 字
|
3 分钟
glibc源码编译
前言 本篇文章主要是记录我通过编译libc过程解决的一些困惑 glibc源码编译 编译部分请参考这篇博客: glibc的编译、安装和调试 为了方便以及排除一些可能的错误,我们直接选用与当前操作系统一致的glibc版本进行调试版本的编译 正文 我会在这里对glibc编译中一些感兴趣的部分进行介绍 glibc 编译 首先说明,我的GLIBC版本为2.3…
2025-5-08 16:03
|
36
|
|
668 字
|
3 分钟
临时阅读准备
unlink_chunk( av , victim ) /* Take a chunk off a bin list. */ static void unlink_chunk (mstate av, mchunkptr p) { if (chunksize (p) != prev_size (next_chunk (p))) malloc_prin…
2025-3-18 13:33
|
85
|
|
106 字
|
5 分钟