NEDU第一届融思杯网络安全大赛WriteUp

Rs平台

1.  签到

一开始看见这道题提及到Alpha Go, 思路一下就被带到了李世石大兄弟那里,但是题干中又给出一个什么IRC:219.237.7.246:8080 ,百度一发,叫“因特网中继聊天”,这是什么东西嘛,和Alpha Go有什么关系..但是这题的题目名称叫做签到,所以我的思想就是一定有哪个隐藏的页面,到达那个页面利用我的token然后balabala就会得到flag,开始扫219.237.7.246下面的端口吧,结果出来5003, 5004, 5005, 8000 然而这前三个端口是另外的三道题,场控说题目所有的已知都是有用的, 这时才把注意力放在IRC身上, 然后百度出来一个叫做mIRC的软件, 配置一下频道, 确实连到了给出的频道,里面有一个公共聊天室,有几个是场控大人,还有一个机器人,我竟然每个人都发了flag、flag+token、get the flag+token, 最后get flag + token得到了第一个flag

mIRC配置:http://blog.csdn.net/john_cdy/article/details/7742218

2.  图片里的秘密

这题很明确,就是用给出的图片,然后解密图片就拿到flag,真是太聪明了,打开连接.....为毛是一串英语.....翻译出来是不要被表象所迷惑.....很明显,这一定把图片的路径隐藏到了某个地方,直接放burp里面抓一下,看看报文里有没有有关flag的信息,跑了之后搜到了一个flagpath,很明显这个是告诉我们flag的地址,但是这万一就是flag呢,拿去试了一下.....果然不是flag,老老实实的把这复制到地址栏吧,还真进去了,又出来一大串英文.....告诉我必须要从……这个地址进入,把这段放地址栏里跑还进不去这个网页,也是醉了,但是还告诉一定要从这里进入才行,说明在这段背后一定隐藏着什么,现在的大体的方向是没错的,把这个地址放进burp里面跑一下,说不定会抓到下一个flagpath。结果跑了n遍,什么都没有抓到.....之前看到过一个X-Forwarded-For的头,尝试一下X-Forwarded-For:……然后Forward,Bingo!图片找到,down下来,右键记事本,拉到最下面,摩丝密码,拿到flag

3.  提交

给了一个3000行的密码集,一个login,估计是要1/3000的几率找出那个对的id, username, passwd 组合了,先把密码集down下来,分成3个txt,分别存储id, username, passwd, 扔进burp的Pitch Fork里面慢慢破解吧,看啥时候返回success, 结果可是666,返回了12个正确的组合,而且竟然是0-11个id, 来手动搞一波看看什么鬼情况,前几个还没发现规律,到8,9个的时候发现title已经和id一样了,才反应过来是按照给定的密码集登录3000次,然后第3001次进入login的时候就是一片彩虹吧,写了个脚本,跑3000次,然后手动打开login,果真是flag,提交一波~

下面附上代码。Cookie那行后面就是session的一大长串值了

4.  Sha1&md5

这题应该是比较无脑吧,一开始以为是要解密,后来发现并不正确.....然后就考虑对那个cipher text 先md5 再 sha1试试,写了一个脚本跑一波,flag

后来尝试了一波手动两次加密.....5s 太快了臣妾做不到啊....

5.  贪吃蛇

这个是啥子嘛,就是要玩贪吃蛇,还不让我控制蛇,要连socket,从看见这道题之前并不知道socket是什么鬼,先恶补一波如何用python大法连接socket。原来就import 一个socket然后再连接一下就行.....发送和接受数据就send()和recv()就妥,连上socket之后发送自己的token这死蛇也不动啊.....原来是要发送一个命令控制蛇,于是改进程序,send一个Turn的方向,结果就是朝着一个方向不回头啊不回头.....换一个思路.....右键Notepad++打开,搜索一下flag,出来一个

很明显就是if else 的句型,所以只要构造if 的条件为1就行了,思路好清晰.....我去哪构造这个if啊.....突然反应到这题是个Reverse, 百度一下有没有傻瓜一点的逆向工具,一开始看见了OD, 打开之后确实很高深的样子(省略室友惊呆的表情),连我自己都惊呆了,这根本看不懂啊.....然后尝试IDA一波,IDA还好一些,进来给我显示出一大堆框图,这我就不怕了,找到了main,然后没有然后了,框图里面的依旧是不明白什么意思,但是我知道mov 是赋值,这编译原理课上老师提到一嘴,接着去百度IDA 的用法,百度说F5大法可以搞出伪代码,太神奇了,我只能这么描述它。之后就开始读程序,有一个main的头函数,不用想就知道那个if一定不会藏在这里,这就太简单了,于是乎准备从第一个函数开始读.....虽然提示了我274个函数,好像是有点多,不过还是得找,找到了一个叫sub_401E89的函数,鬼知道这是什么名字,但是里面有惊喜啊

看到这就太明显了,300是score,如果分数大于300 则输出flag,否则就输出什么鬼没看懂.....光标放在300那,按Tab,就能跳到框图那个界面对应的地方,不要问我为什么要按Tab,我也不知道我为什么知道...

果真有jump跳到这个判断loc_4020AD: 这个地址, 这里的12c是16进制表示的300,百度了一下汇编 cmp 是compare 的意思,猜测为if 判断,那么如果这个jle为真则跳到Success Flag这个框框里,如此看来只需要把这段接收到的值==0就可以了,此时我试了N种方法都不能编辑这段框图,准备打开OD尝试一下,查找push 0x14 找到了位置,此处不查找cmp那行的原因是当你在IDA中打开了一次这个二进制文件和你在OD中打开文件在内存中占用的地址一定是不同的,所以一定是找不到的,但是push 14h那句不涉及到地址的问题,所以可以依靠这个来查询CMP的位置,如图

左边红色框框里面的灰色箭头标出了jle的另一分支为下面的,中间的是success flag,右边有写出来,我们的思路就是把cmp的判断构造成==0即可,突然发现不会写汇编语言啊,那我就把这个if直接干掉,不判断,直接给我输出flag,选中cmp 和 jle 两行然后按空格,选中使用NOP填充,然后在输入框内输入nop,nop就是空的意思,相当于程序里打了两行回车不影响程序执行,然后点运行,上面那个红色的剪头,然后程序连一下端口,给出token,然后接收一下返回数据,拿到flag!

091024_N4Y6_2616541.png

 

I春秋平台

1.  Painted eggshell

先看见这个题也没什么思路,一开始一直在坑爹的找后台的源码,有一个界面还是被BOM给强制搞没了…这里也不知道该怎么解释,就是拿txt写的php代码前面会有隐藏的字符,然后会阻止服务器对php代码进行解析,导致一个空页面,但是在页面的代码部分会有几个转义字符,写writeup的时候我也没使劲去找那个了,后来偶然的误打误撞Search了一下竟然搜到了这个flag.

2.  我是一个网站管理员

       这题一开始感觉像是注入,但是手注了好久都没有成功,附上woo Yun的学习资料: http://drops.wooyun.org/tips/7840 然后想到了扫一下看看有没有隐藏的目录,御剑扫到了一个robots.txt的文件,里面是strcmp,给出了这个命令,代码里面也说了不要用数据库,说明根本就不用注入,pass的值根本就判断不出来,所以就想到传数组进去http://120.132.85.112:4943/?pass[]=

然后就得到了一个地址,说明这条思路还是正确的,输入进地址栏,很明显就是

注入了,拿sqlmap跑一下

Get Flag.

3.  You Jump I Jump

这题真的没有思路,首先尝试了搜索注入点,没有,搜索未公布的路径,也没有,能想到的是php注入和修改cookies或者session,场控大人放了一个tip说登录的是admin1,然后只是傻傻的在更改username,后来把cookies用md5解密了一下,是test2,然后把admin1用md5加密一下再用Burp抓一下cookies改掉,Repeater Go一下拿到flag。

4. 小苹果

用Chrome下载只能下载到几kb的文件不知道是为什么,用百度云才下载下来,感觉第一秒里有杂音,就一直在用音频处理软件处理第一秒钟,但是试了挺多工具都失败了,就去Google音频加密解密,直到搜到这个神器...拿到flag

转载于:https://my.oschina.net/u/2616541/blog/687201

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值