在简书的第一篇文章

2019-06-16  本文已影响0人  byc_404

想法

  一直以来想着要写一些博客来消化下自己学到的知识,或者利用文字发泄下烦恼的情绪。

所以就有了这第一篇文章。

很简陋,但希望以后会越来越会好。也希望自己在信息安全道路上能有所获,能有所得。

以下记正文,把最近实验吧上的web题目消化一下。

Guess next Session

题目链接:http://www.shiyanbar.com/ctf/1788

题目是php审计,源码如下:

题目截图

那么关键在于以get方式提交的password要与session所存的password值相等

/*关于session

session 常与cookie一同出现。大体上区别在于cookie存在浏览器端(顺带一提,Chrome存的cookie常让我心烦) 而session存在服务器端。

参考了下别人的wp

而这题中session属于哪个客户端,是通过http 请求头中的cookie中的sessionid 来实现的

抓包截图

因此,用fiddler抓包,删去这条数据使$_session['password']值为空,最后提交空密码就好了。收获就在于了解sessionid由cookie传给服务端吧。。

ps:结果发现好像直接点提交就成了?这题是什么情况?

Once More

前一天做的,也是php审计

源码截图

(看到“===”强类型比较就想到了做南邮cg-ctf上的md5爆破,考的就是“==”跟“===”)

提示里说到ereg()函数有漏洞,还有“从小就要用科学的方法来计数”。加之源码里ereg与下面的关键代码,可以推出password的几个要求:

1)大小与长度有要求,这里显然用到提示科学记数法了

2)提交字符串要含有*-*

3)满足ereg()的字母数字组成。

由于ereg() 的漏洞是%00以后的内容就被截断了,因此可以构造出1e9%00*-*提交

(这里%00按编码存在,占一个长度;且>在比较时,直接用1e9跟9999999比较,据大佬所说是因为它会先判别满足科学记数法与否,满足就按科学记数法比较)

提交结果就好了。

flag

今天就写到这了。马上期末又有一大堆学科要复习了,希望自己能在暑假继续刷题,争取成为一名优秀的CTFer吧。

上一篇 下一篇

猜你喜欢

热点阅读