
PWN
TYW----子曰小玖
人生最重要的不是所在的位置,而是所朝的方向。
展开
-
Pwn入坑指南
栈溢出原理参考我之前发的一篇Windows栈溢出原理还有brant师傅的《0day安全笔记》解题过程逆向和分析这个过程就是IDA的使用和汇编代码的理解IDA使用技巧:https://xz.aliyun.com/t/4205getshell分两种情况:(1) 内存程序中有getshell函数[system("/bin/sh")]或指令时,直接调用/劫持。...转载 2020-01-17 10:54:30 · 1693 阅读 · 0 评论 -
Linux pwn入门教程(10)——针对函数重定位流程的几种攻击
https://bbs.ichunqiu.com/thread-44816-1-1.html本系列的最后一篇 感谢各位看客的支持 感谢原作者的付出一直以来都有读者向笔者咨询教程系列问题,奈何该系列并非笔者所写[笔者仅为代发]且笔者功底薄弱,故无法解答,望见谅如有关于该系列教程的疑问建议联系论坛的原作者ID:Tangerine0x00 got表、plt表与延迟绑定在之前的章节中,...转载 2019-06-04 10:02:19 · 844 阅读 · 0 评论 -
Linux pwn入门教程(9)——stack canary与绕过的思路
https://bbs.ichunqiu.com/thread-44069-1-1.html0x00 canary简介我们知道,通常栈溢出的利用方式是通过溢出存在于栈上的局部变量,从而让多出来的数据覆盖ebp、eip等,从而达到劫持控制流的目的。然而stack canary这一技术的应用使得这种利用手段变得难以实现。canary的意思是金丝雀,来源于英国矿井工人用来探查井下气体是否有毒的金...转载 2019-06-04 10:02:11 · 2808 阅读 · 1 评论 -
Linux pwn入门教程(8)——SROP
https://bbs.ichunqiu.com/thread-44068-1-1.html0x00 SROP应用场景与原理SROP是一个于2014年被发表在信安顶会Okaland 2014上的文章提出的一种攻击方式,相信很多读者对这个方式的了解都源于freebuf上的这篇文章'http://www.freebuf.com/articles/network/87447.html'。正如这...转载 2019-06-04 10:02:03 · 1722 阅读 · 0 评论 -
Linux pwn入门教程(7)——PIE与bypass思路
https://bbs.ichunqiu.com/thread-43627-1-1.html0x00 PIE简介在之前的文章中我们提到过ASLR这一防护技术。由于受到堆栈和libc地址可预测的困扰,ASLR被设计出来并得到广泛应用。因为ASLR技术的出现,攻击者在ROP或者向进程中写数据时不得不先进行leak,或者干脆放弃堆栈,转向bss或者其他地址固定的内存块。而PIE(position...转载 2019-06-04 10:01:54 · 2536 阅读 · 1 评论 -
Linux pwn入门教程(6)——格式化字符串漏洞
https://bbs.ichunqiu.com/thread-43624-1-1.html0x00 printf函数中的漏洞printf函数族是一个在C编程中比较常用的函数族。通常来说,我们会使用printf([格式化字符串],参数)的形式来进行调用,例如char s[20] = “Hello world!\n”;printf(“%s”, s);然而,有时候为了省事也会写成...转载 2019-06-04 10:01:46 · 590 阅读 · 0 评论 -
Linux pwn入门教程(5)——利用漏洞获取libc
https://bbs.ichunqiu.com/thread-42933-1-1.html?from=aqzx10x00 DynELF简介 在前面几篇文章中,为了降低难度,很多通过调用库函数system的题目我们实际上都故意留了后门或者提供了目标系统的libc版本。我们知道,不同版本的libc,函数首地址相对于文件开头的偏移和函数间的偏移不一定一致。所以如果题目不提供libc...转载 2019-06-04 10:01:33 · 2056 阅读 · 0 评论 -
Linux pwn入门教程(4)——调整栈帧的技巧
https://bbs.ichunqiu.com/thread-42534-1-1.html在存在栈溢出的程序中,有时候我们会碰到一些栈相关的问题,例如溢出的字节数太小,ASLR导致的栈地址不可预测等。针对这些问题,我们有时候需要通过gadgets调整栈帧以完成攻击。常用的思路包括加减esp值,利用部分溢出字节修改ebp值并进行stack pivot等。0x00 修改esp扩大栈空间我...转载 2019-06-04 10:01:12 · 590 阅读 · 0 评论 -
Linux pwn入门教程(3)——ROP技术
https://bbs.ichunqiu.com/thread-42530-1-1.html0x00 背景在上一篇教程的《shellcode的变形》一节中,我们提到过内存页的RWX三种属性。显然,如果某一页内存没有可写(W)属性,我们就无法向里面写入代码,如果没有可执行(X)属性,写入到内存页中的shellcode就无法执行。关于这个特性的实验在此不做展开,大家可以尝试在调试时修改EIP和...转载 2019-06-04 10:01:01 · 2529 阅读 · 0 评论 -
Linux pwn入门教程(2)——shellcode的使用,原理与变形
https://bbs.ichunqiu.com/thread-42285-1-1.html0x00 shellcode的使用在上一篇文章中我们学习了怎么使用栈溢出劫持程序的执行流程。为了减少难度,演示和作业题程序里都带有很明显的后门。然而在现实世界里并不是每个程序都有后门,即使是有,也没有那么好找。因此,我们就需要使用定制的shellcode来执行自己需要的操作。首先我们把演示程序~/...转载 2019-06-04 09:59:46 · 698 阅读 · 0 评论 -
Linux pwn入门教程(1)——栈溢出基础
https://bbs.ichunqiu.com/thread-42241-1-1.html0x00 函数的进入与返回要想理解栈溢出,首先必须理解在汇编层面上的函数进入与返回。首先我们用一个简单执行一次回显输入的程序hello开始。用IDA加载hello,定位到main函数后我们发现这个程序的逻辑十分简单,调用函数hello获取输入,然后输出“hello,”加上输入的名字后退出。使用F5看...转载 2019-06-04 09:59:31 · 425 阅读 · 0 评论 -
Linux pwn入门教程(0)——环境配置
https://bbs.ichunqiu.com/thread-42239-1-1.html0x00前言作为一个毕业一年多的辣鸡CTF选手,一直苦于pwn题目的入门难,入了门更难的问题。本来网上关于pwn的资料就比较零散,而且经常会碰到师傅们堪比解题过程略的writeup和没有注释,存在大量硬编码偏移的脚本,还有练习题目难找,调试环境难搭建,GDB没有IDA好操作等等问题。作为一个老萌新(...转载 2019-06-04 09:59:07 · 541 阅读 · 0 评论 -
Linux下pwn从入门到放弃
https://blog.csdn.net/niexinming/article/details/788144220x0 简介 pwn,在安全领域中指的是通过二进制/系统调用等方式获得目标主机的shell。 虽然web系统在互联网中占有比较大的分量,但是随着移动端,ioT的逐渐流行,传统的缓冲区溢出又一次有了用武之处 0x01 工欲善其事,必先利其器 Linux下的pwn常用到的工具有:...转载 2019-05-23 10:30:45 · 258 阅读 · 0 评论 -
Pwn学习历程 ---- 基本工具、交互、调试
https://blog.csdn.net/gyhgx/article/details/53439417从基础开始简单原理介绍以下内容摘自Wiki: Pwn是一个骇客语法的俚语词,自”own”这个字引申出来的,这个词的含意在于,玩家在整个游戏对战中处在胜利的优势,或是说明竞争对手处在完全惨败的情形下,这个词习惯上在网络游戏文化主要用于嘲笑竞争对手在整个游戏对战中已经完全被击败(例如:”Yo...转载 2019-05-21 14:42:44 · 6128 阅读 · 2 评论 -
PWNtools
PWNtoolspwntoolsis a CTF framework and exploit development library. Written in Python, it is designed for rapid prototyping and development, and intended to make exploit writing as simple as possib...原创 2019-05-21 11:46:35 · 588 阅读 · 0 评论