Jarvis OJ writup (PWN)
Jaken1223
这个作者很懒,什么都没留下…
展开
-
JarvisOJ-PWN-Level0
JarvisOJ-PWN-Level0IDA打开分析。 在Export找到这两个关键函数。 先双击进入main 关键函数在vulnerable_function(),继续跟进。 可以看出read函数是把标准输入的200位的写入buf中。 再看buf: 低位: 高位: 所以buf的首地址到返回地址共=(+0x0000000000000008) - (-0x00...原创 2018-03-15 18:07:05 · 780 阅读 · 0 评论 -
JarvisOJ-PWN-Level1
JarvisOJ-PWN-Level先checksec一下: 发现NX栈保护没有打开,也就是堆栈代码没有进行保护,那么就就题目很可能就是要输入shellcode在栈里执行吧。打开IDA分析(32位): 主函数: vulner..fuction()函数: 题目的逻辑是打出buf的首地址然后写入从标准输入100字节给buf。 然后输出Holle world。 我们再看b...原创 2018-03-16 13:41:49 · 868 阅读 · 0 评论 -
JarvisOJ-PWN-Tell_Something
JarvisOJ-PWN-Tell_Something首先,检查后是64位的gcc。 用IDA打开。 在Export发现这些函数: 这些函数一看就知道是自己写的函数了。 先看main 再看read。里的v4 可以看出v4内存空间为:0x88。 read 0x100>0x88,存在栈溢出漏洞。 那该怎么利用呢? 再看readmassage 可能也是...原创 2018-03-16 21:50:23 · 268 阅读 · 0 评论 -
JarvisOJ-PWN-Level2
JarvisOJ-PWN-Level2IDA打开,稍微分析下发现其和level1大致一样,都是利用read栈溢出。shift+12查看字符串 看到/bin/sh 双击得到地址: 再看到这个: 那么就是要传参数到system()里了。所以构造代码如下:# -*- coding:utf-8 -*-from pwn import *# sh = proce...原创 2018-03-22 18:09:21 · 686 阅读 · 0 评论