Archive For 一月, 2020

2 articles

pwn的艺术浅谈(二):linux堆相关

这是linux pwn系列的第二篇文章,前面一篇文章我们已经介绍了栈的基本结构和栈溢出的利用方式,堆漏洞的成因和利用方法与栈比起来更加复杂,为此,我们这篇文章以shellphish的how2heap为例,主要介绍linux堆的相关数据结构和堆漏洞的利用方式,供大家参考。

0.前置知识

0.0 编译+patch方法

how2heap源码地址https://github.com/shellphish/how2heap,为了方便调试编译时使用gcc -g -fno-pie xx.c –o xx。这里先介绍一种linux下patch文件加载指定版本libc的方法,patchelf –set-i[......]

Read more

pwn的艺术浅谈(一):linux栈溢出

这个系列主要介绍linux pwn的基础知识,包括堆栈漏洞的一些利用方法。这篇文章是这个系列的第一篇文章。这里我们以jarvisoj上的一些pwn题为例来对linux下栈溢出利用和栈的基本知识做一个简单的介绍。题目地址:https://www.jarvisoj.com/challenges

0. Level0,栈的基本结构及nx绕过

首先查看一下题目的保护措施(如下图所示),可以看到是一个只开启了NX的64位linux程序。

clip_image002

关于linux pwn常见的保护

0.RELRO

部分RELRO(由ld -z relro启用):

将.got段映射为只读(但.got.pl[......]

Read more