Linux pwn入门教程(0)——环境配置

本文是Linux pwn入门教程,重点介绍了如何使用Docker容器搭建环境,包括Docker的简单操作,IDA的使用以及远程调试配置。内容涵盖了从安装Docker,导入容器镜像,到使用IDA的远程调试功能,以及结合pwntools进行程序调试的实践。
摘要由CSDN通过智能技术生成

作者:Tangerine@SAINTSEC

0×00前言

作为一个毕业一年多的辣鸡CTF选手,一直苦于pwn题目的入门难,入了门更难的问题。本来网上关于pwn的资料就比较零散,而且经常会碰到师傅们堪比解题过程略的writeup和没有注释,存在大量硬编码偏移的脚本,还有练习题目难找,调试环境难搭建,GDB没有IDA好操作等等问题。作为一个老萌新(雾),决定依据Atum师傅在i春秋上的pwn入门课程中的技术分类,结合近几年赛事中出现的一些题目和文章整理出一份自己心目中相对完整的Linux pwn教程。
本系列教程仅针对i386/amd64下的Linux pwn常见的pwn手法,如栈,堆,整数溢出,格式化字符串,条件竞争等进行介绍。为了方便和我一样的萌新们进行学习,所有环境都会封装在docker镜像当中,并提供调试用的教学程序,来自历年赛事的原题和带有注释的python脚本。教程欢迎各位师傅吐槽,若对题目和脚本的使用有不妥之处,会在当事师傅反馈之后致歉并应要求进行处理。

0×01 docker容器的使用与简单操作

在搭建环境之前我们需要准备一个装有docker的64位Linux系统,内核版本高于3.10(可以通过uname -r查看),可以运行在实体机或者是虚拟机中。关于docker的安装与启动此处不再赘述,读者可以根据自己的Linux发行版本自行搜索。此处提供两个链接,供Ubuntu和Kali使用者参考:
Kali:《kali Rolling安装docker》http://www.cnblogs.com/Roachs/p/6308896.html
Ubuntu:《Ubuntu 16.04安装Docker》http://blog.csdn.net/qq_27818541/article/details/73647797
在成功安装了docker并验证其可用性后,我们就可以定制自己的实验用容器了。这部分内容可以在各个地方找到教程,且与pwn的学习不相关,此处不再赘述。为了方便实验,我把实验环境打包成了几个容器快照,可以直接导入成镜像使用。

以ubuntu.17.04.amd64为例,导入的命令为

cat ubuntu.17.04.amd64 | docker import – ubuntu/17.04.amd64

image.png导入成功后使用命令docker images会看到镜像仓库中出现了一个新的镜像。

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值