美文网首页
2018QCTF-XMAN夏令营选拔赛

2018QCTF-XMAN夏令营选拔赛

作者: cceb9d5a8577 | 来源:发表于2018-07-15 12:17 被阅读205次

Web newscenter

发现搜索框是post数据


用bp抓包,放在sqlmap下跑


然后就跑出来了



Web Lottery

这个咋一看是一个类似双色球的东西,给你输入7位数,然后跟他后台生成的7位数对比,猜对的越多,得到的钱越多,目的是要去赚钱买flag,这种情况一般都不可能按正常操作来做的,估计都是篡改数据多一点



我们点开html和js可以看到这个生成正确数字的过程,一个简单的if判断语句,我们只要改numbers[]数组的内容全部为true,就可以获得最多的钱


所以我们先设置一波代理进行本地操作,然后用抓包工具进行改数据,改完再关掉代理,去购买flag,这题就解出来了,具体操作如下:







Misc x-man-A-face

这题很简单,签到题吧,就一个缺角的二维码,用ps操作补齐,扫出来是一串base32,解码一波就出flag了




Misc x-man-keyword

拿到这个png玩意,一波binwalk,010editor,stegsolve都没有什么发现,后面绝望之际偶然看到世安杯-LSB隐写-png那题,就突然想用lsb隐写试试,结果就解出来一串这样的的东西:
ps:这里我用的是lsb.py工具,密码我猜是lovekfc,结果就猜对了2333333


`PVSF{vVckHejqBOVX9C1c13GFfkHJrjIQeMwf}``
一开始以为是凯撒加密,试了好久没有发现什么,后面出hint,又去疯狂百度一波发现了不得了的东西:https://wenku.baidu.com/view/ab7a4f0131126edb6f1a10a0.html

认真阅读了以后,再根据hint,写出解密脚本,一跑flag就出来了



Pwn Xman-dice_game

这是一道猜随机数的题目,本来题目本意是以时间作为随机数种子的,但是如果输入的buf过多就会覆盖到随机数种子,从而导致种子不变化,生成的随机数不随机


我们可以看到,下面的函数中实际上是让我们去猜一个随机数v2=rand()%6+1,并且保证v2是整数并且在1和6之间,如果连续猜对50次就可以拿到flag,那么我们就可以通过不断地产生随机数碰撞的方法,去获得一个固定的num[50],然后再把我们获得的num[50]输入到程序中从而获取flag



生成随机数碰撞Exp如下:


获得flag的Exp如下:

Pwn---- Xman-stack2

不得不说这是一道有点骚的题目
主要利用了数组下标溢出,然后配合利用了整数溢出
程序的主要功能是让你创建一个数组,由你来分配数组的大小,然后输入每个元素的数值,然后你可以追加元素进入数组,可以修改某一个下标的内容,还可以遍历数组所有的元素
首先的这个地方,造成了数组下标溢出:没有对输入的下标进行检查,导致我们可以在栈的任意位置进行写的操作


这样我们就可以找到ret的地址,然后把ret的地址改成hackhere:0x0804859b,本以为这样就可以getshell了,没想到执行了这个函数后却被报错找不到“/bin/bash”


说明这个命令被删了,我们只能自己构造system(/bin/sh),由于有数组下标溢出的漏洞,写操作倒不难,主要需要注意写的只能是10进制数和注意地址是小端序就行了,但是有个很坑的地方在于,如何确定ret的位置,按照栈来算的我一开始是算到112+4=116,也就是下标为115,然而怎么样覆盖都不对,只能自己通过gdb调试,最后找到ret的地址是在下标为132的地方,这也是很迷,但找到正确的覆盖地址后构造就不难了,主要构造两次payload:
1.【puts-plt】【main】【printf-got】
2.【system】【 】【/bin/sh】
第一次的构造是为了能够泄漏出printf的真正地址为:0xf7***020,从而找到libc的版本:



从而得到:
【system的真正地址】=【printf真正地址】-【printf在libc中的地址】+【system在libc中的地址】
【/bin/sh的真正地址】=【printf真正地址】-【printf在libc中的地址】+【/bin/sh在libc中的地址】
这样一来,就可以get到shell拿到flag了


另外,找ret地址的时候我采用的一直方法是,用整数溢出打印出255个栈的内容,然后大致摸索着加调试,慢慢就找出ret的地址了,如图泄漏栈:


最终exp如图:



赛后瞎BB

打这个比赛体验了一把通宵,然而最终也才做出6题,相比去年的xman夏令营选拔赛题目,今年的难度高了很多,同时又让我意识到一个深刻的道理:我是真的菜orz
题目难度很迷,按道理来说xman夏令营选拔赛应该是对萌新友好一点的菜鸡互啄比赛,没想到这次是py风云下的诸神之战,pwn一共六道难度有点大,堆的题目占一半也就是知识盲区占一半。。唉蓝瘦,web总体看起来好像要简单一点,我这个非web手都能搞懂两题,然后misc是王者级难度在相当一段时间里misc大家都只能做签到题,无人解出另外三道。。。逆向和密码就不太会做就不知道难易了。。。另外发现每次有点水准的比赛都有rsa的题目,是时候去学一波这些有关rsa的知识了不然感觉会有点亏

相关文章

  • 2018QCTF-XMAN夏令营选拔赛

    Web newscenter 发现搜索框是post数据 用bp抓包,放在sqlmap下跑 然后就跑出来了 We...

  • 商业与艺术的共舞,2018阳光摄影师选拔赛启幕

    2018年12月3日,2018阳光摄影师选拔赛正式拉开帷幕。 2018阳光摄影师选拔赛将采用前所未有的选拔赛形式,...

  • 和平大陆(一)特种兵选拔

    今天是和平大陆一年一度的特种选拔赛。 天成和等等4人都是特种选拔赛的参赛人员。特种选拔赛的选拔规则...

  • 永泊镇·奇迹选拔赛

    内容简介:奇迹社团规定,除了通过读书选拔赛、追逐选拔赛以及勇气选拔赛,每个加入的孩子还必须有独一无二的“心法”,可...

  • 文化使者选拔赛

    文化使者选拔赛 由琴馆联盟和纽约汉文化协会联合主办的“中美文化交流---古琴交流使者选拔赛”进入...

  • 《棒棒堂内部选拔赛有感》(其一)

    今天是江苏省青少年科技模型大赛苏州赛区棒棒堂内部选拔赛。选拔赛分别有小班组,中班组,大班组,blastga...

  • 选拔赛?

    转眼间已经过去了三个月,战事也渐渐平息,温将军也快要凯旋了吧。我也脱下了厚重的冬衣, 换上了较为轻薄的罗衫裙...

  • 选拔赛

    今天,我参加了班级的六十米跑步选拔赛,结果我落选了,我感到很失望。一定是因为我平时吃的太少,又太瘦小,没有好好的加...

  • 选拔赛

    森林里,角鹿先生举行了选拔赛,虎土哥,猴赛雷,牛齐天,熊大,豹天霸,蟒鄂东等等众多森林的动物都上场参加比赛了!随着...

  • 选拔赛

    今天我们要举行一场选拔赛,就是中国盐山第三届徐福千童文化节,《千童东渡》演员选拔赛。我报的是童男童女。 今...

网友评论

      本文标题:2018QCTF-XMAN夏令营选拔赛

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