<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[easy_level1的博客]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/easy_level1</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; easy_level1]]></copyright><item><title><![CDATA[深入理解TLS(Thread Local Storage)——以MacOS为例]]></title><link>https://blog.csdn.net/easy_level1/article/details/131999164</link><guid>https://blog.csdn.net/easy_level1/article/details/131999164</guid><author>easy_level1</author><pubDate>Sun, 06 Aug 2023 00:24:46 +0800</pubDate><description><![CDATA[中文互联网上聊TLS原理的文章比较少，不仅不大详细，而且不少是七八年前的文章，比如有在window xp上介绍tls的实现的，比较老旧。笔者因工作内容，需要较深入的理解TLS，故在此分享一下。本文会以Mac上，arm64的程序为例，介绍clang、dyld与macOS是怎么配合，实现的TLS。注意不同的平台，windows、linux、appleOS实现的方式都不大相同，在不同架构x64、arm上的处理细节也略有不同，但是原理相似。不了解TLS的读者也会有所收获。]]></description><category></category></item><item><title><![CDATA[[阅读型]Linux内核系列：从开发环境到调试环境]]></title><link>https://blog.csdn.net/easy_level1/article/details/124406548</link><guid>https://blog.csdn.net/easy_level1/article/details/124406548</guid><author>easy_level1</author><pubDate>Tue, 26 Apr 2022 21:43:01 +0800</pubDate><description><![CDATA[目录前言编译内核安装QEMU创建一个硬盘镜像文件使用BusyBox构建ramdisk使用buildroot构建ext4格式根文件系统内核驱动开发环境调试环境
前言
文章更新时间2022.04.25
写文前搜了下CSDN的资源，要么质量不行或者太过时，没有自己想要的。笔者很早就想学习内核了，然而曾多次尝试。这次以实验室的一个项目为契机，鼓励自己完善下去。
本文将面向同为新手的你，记录学习的一些值得注意的地方。你只需要准备一台Linux操作系统的计算机即可（以Ubuntu为例），并预留一定的硬盘空间。
因为笔者]]></description><category></category></item><item><title><![CDATA[[阅读型]新版musl libc(1.2.2)堆管理之源码剖析！]]></title><link>https://blog.csdn.net/easy_level1/article/details/118606424</link><guid>https://blog.csdn.net/easy_level1/article/details/118606424</guid><author>easy_level1</author><pubDate>Fri, 23 Jul 2021 01:05:52 +0800</pubDate><description><![CDATA[目录前言关键的数据结构三级目录
前言
文章更新时间2021.07.09
自defcon21q，那道mooosl起，就有些比赛喜欢折腾这新版的musl libc的堆。在当时打defcon的时候，相关资料几乎没有，只能硬磕源码。虽然笔者当时是审出来了dequeue()会有类似unlink的任意地址写的可能，但是此题还是由大佬亲自出手把它干掉。事后一直懒没有复现，结果强网杯21又蹦出一个musl libc的题，血亏。此文章开坑，也是督促自己把这一块源码仔细扣一扣，做一个笔记。下文除了源码剖析，会以defcon21]]></description><category></category></item><item><title><![CDATA[[阅读型]glibc-2.31中的tcache stashing unlink与large bin attack]]></title><link>https://blog.csdn.net/easy_level1/article/details/117445936</link><guid>https://blog.csdn.net/easy_level1/article/details/117445936</guid><author>easy_level1</author><pubDate>Tue, 01 Jun 2021 21:14:44 +0800</pubDate><description><![CDATA[文章目录前言题目的漏洞与功能tcache stashing unlinklarge bin attack有了上述方法，然后做什么
前言
有幸和校队一起参加21年5月的xctf-final。笔者爆肝连续战斗十小时，在与队友各种讨论下艰难做出了house of pig这一题。事后看出题人的wp，方法不尽相同但也是收获良多，特此记录。
笔者的这题解法是没有large bin attack的(知识盲区)，利用tcache stashing unlink写global_max_fast完成house of hust，]]></description><category></category></item><item><title><![CDATA[[总结型]C++stl中常见数据结构逆向分析]]></title><link>https://blog.csdn.net/easy_level1/article/details/115771814</link><guid>https://blog.csdn.net/easy_level1/article/details/115771814</guid><author>easy_level1</author><pubDate>Fri, 30 Apr 2021 15:14:18 +0800</pubDate><description><![CDATA[文章目录前言
前言
2019年defcon资格赛。election_coin一题，标签为reverse&amp;pwn

]]></description><category></category></item><item><title><![CDATA[[总结型]记CTF PWN中过气的堆利用]]></title><link>https://blog.csdn.net/easy_level1/article/details/115724038</link><guid>https://blog.csdn.net/easy_level1/article/details/115724038</guid><author>easy_level1</author><pubDate>Thu, 15 Apr 2021 15:05:16 +0800</pubDate><description><![CDATA[目录前言不再好用的unsorted bin attack不可能的tcache double free
前言
how2heap(https://github.com/shellphish/how2heap)可以说是目前"权威"的glibc中的heap exploitation techniques文档。在学术界近年的一些顶会文章也有引用这个github项目。
攻防对抗是一直持续发展的，很容易在学习中，复现一些过时的攻击技术出现困难，原因就是已经有补丁打上了。本文大致总结一些在比赛中常见的过时技术，持续更新…吧]]></description><category></category></item><item><title><![CDATA[[阅读型]深入理解C++多继承(multiple inheritance)与虚继承(virtual inheritance)的底层原理与实现-以g++为例]]></title><link>https://blog.csdn.net/easy_level1/article/details/115674689</link><guid>https://blog.csdn.net/easy_level1/article/details/115674689</guid><author>easy_level1</author><pubDate>Wed, 14 Apr 2021 14:13:26 +0800</pubDate><description><![CDATA[目录前言1. virtual 函数需要解决的问题2. 单继承3. 多继承4. 虚继承
前言
做安全的肯定是要深究一下，特别是了解其c++对象的memory layout和一些编译器生成的固定代码。另一方面c++开发者，既然是选择折腾c++，实际上也有了解的必要。本文不是讨论怎么用继承去实现一个良好的设计，而是讨论c++编译器是怎么支持这个特性的。这里不要把编译器想象的多么神通广大，实际上它是通过生成一些固定的代码与数据来实现的。主要参考文献c++的abi1。
极具争议的多继承与虚继承为啥这么恶心？
因能力有]]></description><category></category></item><item><title><![CDATA[[阅读型]CTF中linux pwn的四大基本防御措施]]></title><link>https://blog.csdn.net/easy_level1/article/details/115662443</link><guid>https://blog.csdn.net/easy_level1/article/details/115662443</guid><author>easy_level1</author><pubDate>Tue, 13 Apr 2021 17:31:54 +0800</pubDate><description><![CDATA[讨论linux pwn中对二进制文件常见的四个基本防御措施
RELRO
NX
CANARY
PIE]]></description><category></category></item></channel></rss>