最近电脑重装系统(吐槽一下,win11真的一言难尽),顺便在虚拟机装了最新版本的KaliLinux,顺带着搭建一下PWN环境。总的来说这次搭建PWN环境问题不大,按照之前安装的步骤,整个过程还算是比较“顺利的”(第一次搭建PWN环境差点没被气死,没办法,菜啊)

第一步

在主目录下创建一个tools目录,用来存放下载下来的文件,命令如下

mkdir tools

第二步

安装pwntools
1.进入tools文件夹里面,命令如下:

cd tools


2.把pwntools git 下来,命令如下:

git clone https://github.com/Gallopsled/pwntools.git


3.安装所需环境,命令如下:

sudo apt-get install python3 python3-pip python3-dev git libssl-dev libffi-dev build-essential

4.更新一下 pip ,命令如下:

python3 -m pip install --upgrade pip


5.使用pip安装并更新pwntools,命令如下:

python3 -m pip install --upgrade pwntools


到这里环境就可以算是搭建好了,接下来是搭建gdb调试环境,
1.安装gdb-multiarch,用作gdb客户端进行调试,是任何架构的通用客户端,命令如下:

sudo apt-get install gdb-multiarch

检查安装成功的命令如下:

gdb -v


2.安装插件,方便使用
pwndbg是一个GDB插件,使GDB的调试不那么糟糕,方便新手使用,安装过程如下:
先将pwndbg git下来,命令如下

git clone https://github.com/pwndbg/pwndbg.git


然后进入到文件夹里面,执行setup.sh文件,命令如下:

cd ~/tools/pwndbg
./setup.sh


检查插件是否挂载成功,在终端输入gdb,结果如下:

其他插件peda,gef安装
先git下来

git clone https://github.com/longld/peda.git

git clone https://github.com/hugsy/gef.git


安装插件依赖,命令如下:

sudo pip install keystone-engine ropper keystone-engine


在gdbinti中挂载插件:
在终端输入如下命令:

sudo vim ~/.gdbinit


按i键进行编辑,从第二行开始输入下面内容:

#source /home/kali/tools/peda/peda.py
#source /home/kali/tools/gef/gef.py


选择插件中的其中一个,其他的注释掉,按esc键并输入:wq退出即可。
以上就是PWN环境的搭建过程。因本人菜鸡一只,如果有什么不对的地方,实属正常。还请各位大佬予以指正,谢谢!

kali2021.4a搭建pwn环境的更多相关文章

  1. Ubuntu22.04搭建PWN环境

    前言 最近尝试在Ubuntu最新的版本22.04版本上搭建PWN环境,有了之前在kali上搭建的经验,总的来说问题不大.但搭建的时候还是有不少地方出错了,好在搭建的过程中不断的拍摄快照,所以整个过程还 ...

  2. PWN环境搭建

    目录 PWN环境搭建 需要的工具或系统 安装PWN工具 pwntools (CTF库.漏洞利用库) pwngdb(GDB插件) checksec(查保护) ROPGadget(二进制文件查找工具) o ...

  3. [零基础学IoT Pwn] 环境搭建

    [零基础学IoT Pwn] 环境搭建 0x00 前言 这里指的零基础其实是我们在实战中遇到一些基础问题,再相应的去补充学习理论知识,这样起码不会枯燥. 本系列主要是利用网上已知的IoT设备(路由器)漏 ...

  4. maven实战(01)_搭建开发环境

    一 下载maven 在maven官网上可下载maven:http://maven.apache.org/download.cgi 下载好后,解压.我的解压到了:D:\maven\apache-mave ...

  5. Android学习——windows下搭建NDK_r9环境

    1. NDK(Native Development Kit) 1.1 NDK简介 Android NDK是一套允许开发人员使用本地代码(如C/C++)进行Android APP功能开发的工具,通过这个 ...

  6. 搭建windows环境下(nginx+mysql+php)开发环境

    搭建windows环境下(nginx+mysql+php)开发环境   1. 所需准备应用程序包        1.1 nginx 程序包nginx-1.0.4.zip或其他版本(下载地址: http ...

  7. 基于CentOS与VmwareStation10搭建hadoop环境

    基于CentOS与VmwareStation10搭建hadoop环境     目 录 1. 概述.... 1 1.1. 软件准备.... 1 1.2. 硬件准备.... 1 2. 安装与配置虚拟机.. ...

  8. Deepin Pwn环境的配置

    要学习Pwn  Pwn环境那是必不可少滴! 我是新手,我也弄了好久,这里把经验分享给大家!这里感谢I春秋的"知世"老师的脚本!虽然写的不是很完美.还得我自己动手修改!PS:http ...

  9. Flume1 初识Flume和虚拟机搭建Flume环境

    前言:       工作中需要同步日志到hdfs,以前是找运维用rsync做同步,现在一般是用flume同步数据到hdfs.以前为了工作简单看个flume的一些东西,今天下午有时间自己利用虚拟机搭建了 ...

随机推荐

  1. 什么是内部类?Static Nested Class和Inner Class的不同?

    内部类就是在一个类的内部定义的类,内部类中不能定义静态成员,内部类可以直接访问外部类中的成员变量,内部类可以定义在外部类的方法外面,也可以定义在外部类的方法体中.在方法外部定义的内部类前面可以加上st ...

  2. 阿里云删除mysql

    记录以下,学生买的轻量级服务器安装mysql之后发现没有初始密码,之后在被自己七搞八搞后彻底歇菜,就准备重新卸载安装 记录自己卸载过程首先运行rpm -qa | grep -i mysql出来的是:m ...

  3. kafka producer 打数据,ack 为 0, 1, -1 的时候代表啥, 设置 -1 的时候,什么情况下,leader 会认为一条消息 commit了?

    1(默认)  数据发送到Kafka后,经过leader成功接收消息的的确认,就算是发送成功了.在这种情况下,如果leader宕机了,则会丢失数据. 0 生产者将数据发送出去就不管了,不去等待任何返回. ...

  4. JavaScript的访问器

    一.访问器属性: 1.Configurable:表示能否通过delete删除属性,从而重新定义属性,能否修改属性的特性,或者能否把属性修改为数据属性.对于直接在对象上定义的属性,这个特性的默认值为tr ...

  5. docker安装部署、fastDFS文件服务器搭建与springboot项目接口

    一.docker安装部署 1.更新yum包:sudo yum update 2.安装需要的软件包,yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动 ...

  6. Axure在Chrome浏览解决方案

    AXURE RP EXTENSION FOR CHROME Google Chrome浏览器需要扩展程序才能查看本地存储的项目.或者,将您的RP文件上传到Axure Cloud或使用其他浏览器.您也可 ...

  7. 列举 IoC 的一些好处?

    IoC 的一些好处是:它将最小化应用程序中的代码量.它将使您的应用程序易于测试,因为它不需要单元测试用例中的任何单例 或 JNDI 查找机制.它以最小的影响和最少的侵入机制促进松耦合.它支持即时的实例 ...

  8. 学习openldap01

    Linux 下openldap的详细介绍,搭建,配置管理,备份,案例 Ldap  服务应用指南 兼容(5.X&6.X) 1.1  Ldap 目录服务介绍 1.1.1 什么是目录服务(activ ...

  9. isNotEmpty 与 isNotBlank 的区别

    isNotEmpty(str)等价于 str != null && str.length > 0 isNotBlank(str) 等价于 str != null &&am ...

  10. Netty学习摘记 —— Netty客户端 / 服务端概览

    本文参考 本篇文章是对<Netty In Action>一书第二章"你的第一款 Netty 应用程序"的学习摘记,主要内容为编写 Echo 服务器和客户端 第一款应用程 ...