AFL Tips 规避ASAN的memory leaks在afl+asan fuzz某些程序的时候,编译时或fuzz时偶尔会出现memory leak的情况,配置以下环境变量即可 12export ASAN_OPTIONS=detect_leaks=0export ASAN_OPTIONS="detect_leaks=0:abort_on_error=1:symbolize=0:exit_code=:sy 2022-04-25
hws_2022_wp pwn送分题一道原题https://www.anquanke.com/post/id/258512,Unsortbin Attack改Global_max_fast,然后劫持_IO_list_all,伪造一个io_file结构体,利用 _IO_str_finish来拿shell exp 123456789101112131415161718192021222324252627282930313 2022-01-26 WP hws
io_file小叙 要学习基于IO_FILE的堆利用就得了解它的本质,以下会介绍几个主要的IO函数,结合源码和动态调试去学习。 IO_FILE之fopen首先是编写一个简单的调用fopen函数的C程序。 12345678#include<stdio.h>int main(){ FILE*fp = fopen("test","wb"); cha 2021-12-26 PWN io_file house of orange
从how2heap入门堆 how2heap是由shellphish团队制作的堆利用教程,介绍了多种堆利用技术,后续系列实验我们就通过这个教程来学习。 first_fit123456789101112131415161718192021222324252627282930313233343536#include <stdio.h>#include <stdlib.h>#include <stri 2021-12-26 PWN 堆 how2heap
堆基础知识 堆基础知识堆概述堆(Heap)是虚拟地址空间的一块连续的线性区域,提供动态分配的内存,允许程序申请大小未知的内存,它在用户与操作系统之间,作为动态内存管理的中间人。同时堆响应用户的申请内存请求,向操作系统申请内存,然后将其返回给用户程序,管理用户所释放的内存,并在合适的时候还给操作系统。 简单来说,堆主要是指用户动态申请的内存(如调用malloc、alloc、alloca、new等函数)。 目前有 2021-12-26 PWN 堆
ciscn_2017_babydriver的几种解法 开始之前最近在屁颠屁颠的学kernel pwn,跟着一些视频、博客搭建环境,学习调试内核。但感觉内核态的漏洞涉及了很多知识点,只能遇到啥去学啥了。 因此为了巩固每次新学习的知识点,我打算整理好记下来,同时录个视频加强自己的思维理解,当然如果能帮助到其他正在学习的小伙伴那就更好了。 驱动分析ida打开驱动一看,有如下几个功能函数,其中babydriver_init和babydriver_exit函数 2021-11-26 PWN kernel pwn
AFL++ 挖掘ImageMagick 安装AFL++方便起见,直接用官方提供的docker镜像,两条命令即可,docker使用的是ubuntu20的版本 12docker pull aflplusplus/aflplusplusdocker run -ti -v /location/of/your/target:/src aflplusplus/aflplusplus 我这里使用的是: 1docker run -ti --privi 2021-11-23 Fuzzing fuzz AFL++
C++ PWN 最近看了几道C++的pwn题,头都大了,太难逆向了,所以想学习一下C++的一些知识。 C++基础知识从C到C++封装、继承、多态是C++耳熟能详的几个特点。 C++的封装可以理解成C语言中把函数定义在结构体内部。如下面的代码,在C语言中Test是个结构体类型,在C++中就叫成Test类了,test就叫做对象,定义在这个结构体里面的都叫做成员,写在结构体里面的函数就叫做成员函数 1234567891 2021-11-21
踩过的坑 随缘记录一些日常碰到的问题 zsh终端出现问题zsh: corrupt history file /home/xxx/.zsh_history 123mv ~/.zsh_history ~/.zsh_history_badstrings ~/.zsh_history_bad > ~/.zsh_historyfc -R ~.zsh_history 虚拟机挂起后无法联网sudo service 2021-11-08