基于pwntools编写pwn代码

2023-11-16

预备知识

pwn

“Pwn”是一个黑客语法的俚语词,是指攻破设备或者系统。发音类似“砰”,对黑客而言,这就是成功实施黑客攻击的声音——砰的一声,被“黑”的电脑或手机就被你操纵。以上是从百度百科上面抄的简介,而我个人理解的话,应该就是向目标发送特定的数据,使得其执行本来不会执行的代码,前段时间爆发的永恒之蓝等病毒其实也算得上是pwn的一种。

pwntools

pwntools是一个CTF框架和漏洞利用开发库,用Python开发,由rapid设计,旨在让使用者简单快速的编写exploit。

实验目的

通过该实验了解pwntools常见用法,能够在实际比赛中应用pwntools快速有效的解题。

实验环境

服务器:kali1,kali2,win 7,IP地址:随机分配
辅助工具:win7装有IDA
welpwn文件与python源码请在实验机内下载使用:http://tools.hetianlab.com/tools/T057.zip

实验步骤一

1.Pwntools安装及模块(已装)

1)安装:
安装命令:pip install --upgrade pwntools。
安装完毕后在python环境下只需使用from pwn import *即可导入。
这会将大量的功能导入到全局命名空间,然后我们就可以直接使用单一的函数进行汇编、反汇编、pack,unpack等操作。
2)常用模块如下:
asm:汇编与反汇编,支持x86/x64/arm/mips/powerpc等基本上所有的主流平台。
dynelf:用于远程符号泄漏,需要提供leak方法。
elf:对elf文件进行操作。
gdb:配合gdb进行调试。
memleak:用于内存泄漏。
shellcraft:shellcode的生成器。
tubes:包括tubes.sock,tubes.process,tubes.ssh,tubes.serialtube,分别适用于不同场景的PIPE。
utils:一些实用的小功能,例如CRC计算,cyclic pattern等。

2.常用模块详细介绍

1)Tubes读写接口:
这是exploit最为基础的部分,对于一次攻击而言前提就是与目标服务器或者程序进行交互,这里就可以使用remote(address, port)产生一个远程的socket然后就可以读写了。
先来看看pwntools建立连接的功能。
先在kali1上开启ftp服务:

service vsftpd start

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

基于pwntools编写pwn代码 的相关文章

随机推荐

  • python 学习笔记03:函数、全局变量和局部变量、文档字符串

    usr bin env python3 coding utf 8 Created on Sun Mar 24 17 55 30 2019 author sungang 全局变量 全局 Scope 作用域 x 10 def count n 1
  • CAP和BASE

    CAP概念 Consistency 一致性 所有节点在同一时间具有相同的数据 Availability 可用性 保证每个请求不管成功或者失败都有响应 Partition Tolerance 分区容错性 系统中任意信息的丢失或失败不会影响系统
  • vue打包后,网页打开是空白页的解决办法

    在config文件夹下的index js中 找到 assetsPublicPath 然后改成 assetsPublicPath build Template for index html index path resolve dirname
  • 安装FTP服务器

    环境 CentOS Linux release 7 9 2009 Core 安装 yum install y vsftpd 配置文件 cd etc vsftpd etc vsftpd vsftpd conf 主配置文件 核心配置文件 etc
  • vue (一) ---- vue介绍,数据双向绑定,指令学习

    一 vue介绍 1 渐进式js框架 1 渐进式 全家桶 vue 小项目 vue touter 页面越来越多 vuex 管理复杂的数据 2 框架 库 Lib 库就是一系列函数的集合 想完成什么就调用库中的某个方法 如 jquery 说明 开发
  • C语言经典100例题(32)--Press any key to change color(按任意键改变颜色)

    目录 题目 问题分析 代码 运行结果 题目 Press any key to change color 按任意键改变颜色 问题分析 在VS 2019编译器中没有textbackground这个库函数 所以需要手动写一个具有同样功能的函数 我
  • 关于 QDebug 左移操作符重载

    从创建了一个自定义类型开始吧 struct Point Point int x int y x x y y int x int y 如果我们想让其配合QDebug工作 需要重载左移操作符 流操作符 QDebug operator lt lt
  • conda环境切换清华源下载。安装opencv问题和conda常用命令

    Windows系统命令行中使用如下命令即可添加清华源 conda config add channels https mirrors tuna tsinghua edu cn anaconda pkgs free conda config
  • TEXLIVE安装失败卡住问题解决

    Installing to C texlive 2021 Installing 0001 4151 time total texlive infra 424k Installing 0002 4151 time total 00 01 02
  • LVGL学习(4):输入设备的四种类型及物理按键的实现

    在有一些场合中 如野外情况 可能我们会选择使用物理按键来控制LVGL 而不是使用触摸屏 所以本篇文章就以物理键盘为例来介绍一下如何自定义输入设备与LVGL进行交互 文章目录 1 输入设备类型 2 物理键盘实现 2 1 输入设备驱动注册 2
  • java.net.SocketTimeoutException: Read timed out 问题解决

    问题描述 今天开发时发现 jdbc hive 连接执行 一个 hive sql 查询语句时 总是报org apache thrift transport TTransportException java net SocketTimeoutE
  • crmeb5.0修改会员价格展示条件

    api components 组件目录 components goodList index vue 商品展示组件 components productWindow index vue 产品属性组件 components shareRedPa
  • 软件系统架构有哪几种?

    互联网飞速发展的当下 有一种极其重要的门类也随之应运而生 那就是软件工程 而软件工程中 又有非常重要的一环 那就是软件架构 这也是各个互联网公司无论大小都必备的一个系统基础 那么什么是软件架构呢 事实上 架构在软件发明时的 N 多年以前 就
  • Java导入xml文件

    需求 前后端分离项目 后端Springboot框架 将学生信息通过xml文件格式导入 一个学生信息 以及该学生选择的学科 student xml文件格式如下 StudentController java PostMapping import
  • 逆向爬虫27 sojson反调加密

    逆向爬虫27 sojson反调加密 目标 掌握sojson的加密的特点和原理 使用静态文件替换sojson反调 一 sojson加密特点和原理 sojson是一种常用的js反调和加密手段 在学习如何处理它之前 我们需要先了解它的特点和原理
  • LightGBM参数介绍

    Xgboost和LightGBM部分参数对照 Xgboots LightGbm booster default gbtree boosting default gbdt eta default 0 3 learning rate defau
  • python 提示 keyError 的4种解决方法

    https blog csdn net u011089523 article details 72887163 在读取dict的key和value时 如果key不存在 就会触发KeyError错误 如 Python t a 1 b 2 c
  • SSD-Pytorch训练自己的VOC数据集&遇到的问题及解决办法

    SSD 训练 data init py data config py data voc0712 py layers modules multibox loss py ssd py train py 预训练文件vgg16 reducedfc
  • ‘settings.xml‘ has syntax errors 解决办法

    settings xml has syntax errors 解决办法 文章目录 settings xml has syntax errors 解决办法 参考链接 又是一个小知识点 pom xml中的
  • 基于pwntools编写pwn代码

    目录 预备知识 pwn pwntools 实验目的 实验环境 实验步骤一 1 Pwntools安装及模块 已装 2 常用模块详细介绍 实验步骤二 实验步骤三 预备知识 pwn Pwn 是一个黑客语法的俚语词 是指攻破设备或者系统 发音类似