攻防世界新手区pwn writeup】的更多相关文章

CGfsb 题目地址:https://adworld.xctf.org.cn/task/answer?type=pwn&number=2&grade=0&id=5050 下载文件后,使用file命令查看. 32位的文件,用ida打开,F5查看伪代码. printf漏洞:https://www.cnblogs.com/cfans1993/articles/5619134.html 思路: 找到pwnme的地址 把pwnme的地址写到s里面 printf输出8个字节,然后用%n把8写入…
攻防世界Web区部分题解   前言:PHP序列化就是把代码中所有的 对象 , 类 , 数组 , 变量 , 匿名函数等全部转换为一个字符串 , 提供给用户传输和存储 . 而反序列化就是把字符串重新转换为 对象 , 类 , 数组 , 变量 , 匿名函数 . 通过这种相互转换 ,从而完成 数据持久化. 谈到php的反序列化,就不能不说反序列化中的几种魔术方法,下面是文档中对于魔术方法的说明. 下面看几种重要的魔术方法: __wakeup方法 unserialize()会先检查是否存在一个__wakeu…
ext3 在Linux,使用root账户挂载linux文件,打开后使用find *|grep flag查找到一个flag.txt,打开后是base64编码,解码获得flag. give_you_flag gif图片,使用stegsolve提取帧,修复二维码的三个定位符. 修复定位:https://blog.csdn.net/hk_5788/article/details/50839790 pdf 直接pdf编辑器打开,移开图片,获得flag simpleRAR 16进制编辑器打开,发现有有一个图…
dice_game XCTF 4th-QCTF-2018 前言,不得不说,虽然是个简单题但是还是要记录一下,来让自己记住这些东西. 考察的知识点是: 1.cdll_loadlibrary加载对应库使得Python可以使用c的函数. 2.关于srand函数中种子的介绍. 3.一些平时没有见过的杂项 保证我写的很详细,因为我也是个菜鸡 ----第一步查看保护喽 第一眼就很恐怖嗷,居然就只有canary没有开,其他的全开,got表也不能修改,我就很痛苦嗷 ----第二步ida看看 main函数这里要说…
解题过程 首先在ida中进行反汇编,查看main函数的代码: 代码的的36行处进行了一个字符串比较,如果v10的值等于v13的值会反馈一个success的输出.v13的值在第15行给出,因此需要知道v10是怎么处理的. 代码的第18行对v10进行了初始化,并在32行进行了拼接处理.分析26-35行的循环,其逻辑是: 依次取出用户输入字符串的字符,将字符值的ascii码值转成16进制的形式拼接到v10中. 因此,若想令v10的值等于v13的值,需将字符串v13中的值两个一组,当作16进制的值,换算…
Mise this_is_flag 签到题flag{th1s_!s_a_d4m0_4la9} pdf 打开图片,flag值在图片底下,wps将pdf转为word格式后,将图片拉开发现flag flag{security_through_obscurity} gif 刚开始给了是黑白图片,用照妖镜winhex,没发现东西,他真好给104个图片,想想正好有13个对二进制.就写了一个脚本 white = open(“0.jpg”,“rb”).read()black = open(“1.jpg”,“rb…
56.low 得到一张bmp,世纪之吻,扔进kali中,binwalk,zsteg,无果,再放进stegsolve中,虽然发现小的数据块,但是过滤通道得不到任何信息,猜测是要用脚本进行 # lsb隐写 import PIL.Image as Image img = Image.open('low.bmp') img_tmp = img.copy() pix = img_tmp.load() width,height = img_tmp.size for w in range(width): fo…
攻防世界 -- pwn1 攻防世界的一道pwn题,也有一段时间没有做pwn了,找了一道栈题热身,发现还是有些生疏了. 题目流程 拖入IDA中,题目流程如图所示,当v0为1时,存在栈溢出漏洞.在gdb中检查题目的保护. 解题思路 程序没有开PIE,但是有Canary,所以首先要infoleak,泄露出Canary.泄露出Canary之后,可以通过ret2Onegadget的方法来getshell,这样的话,还要泄露出一个函数地址,泄露出函数地址之后,通过偏移来计算出libc的基地址,然后计算出On…
攻防世界进阶区--forgot 前言,这题中看不中用啊宝友!!! 1.查看保护 第一反应就是蛮简单的,32位. 2.获取信息(先运行程序看看) 装的可以,蛮多的东西. 但是就是中看不中用 3.ida 进去看看 里面有两个输入,第一个我本来以为能溢出覆盖掉v14的数值,然后在最后的这句 用函数指针(还是指针函数来着我忘了),去调用这道题给出来的system,结果我试了试发现覆盖不到,就很气. 平日见到的scanf(%s)覆盖是不多的,所以没有太想到这里溢出点是第二个向v2里面传输数据. 使用cyc…
这是攻防世界新手练习区的第十一题,题目如下: 点击下载附件一,发现是一个压缩包,点击解压,发现是需要密码才能解密 先用010editor打开这个压缩包,这里需要知道zip压缩包的组成部分,包括压缩源文件数据区.压缩源文件目录区.压缩源文件目录结束区,具体组成如下: 压缩包是否为伪加密的判断 1.无加密: (1)压缩源文件数据区的全局加密标志应当为00 00 (2)且压缩源文件目录区的全局方式位标记应当为00 00 2.伪加密: (1)压缩源文件数据区的全局加密标志应当为00 00 (2)且压缩源…