前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CTF---Web入门第十题 Once More

CTF---Web入门第十题 Once More

作者头像
Angel_Kitty
发布2018-04-10 11:26:58
9770
发布2018-04-10 11:26:58
举报

Once More分值:10

  • 来源: iFurySt
  • 难度:易
  • 参与人数:4782人
  • Get Flag:2123人
  • 答题人数:2166人
  • 解题通过率:98%

啊拉?又是php审计。已经想吐了。

hint:ereg()函数有漏洞哩;从小老师就说要用科学的方法来算数。

格式:CTF{}

解题链接:http://ctf5.shiyanbar.com/web/more.php

原题链接:http://www.shiyanbar.com/ctf/1805

【解题报告】

这是我入门Web开始写的第十道题,一眼看过去,这是一道php代码审计的题目,代码审计其实还挺好玩的,能够学到很多东西QAQ!

我们打开解题链接,界面如下:

这题要你输入password,我们可以先试试,123看看对不対,显然,肯定不对,我们该怎么办呢?我们看到这个页面可以看到源码,我们点击view the source code,我们看到了一些比较有意思的东西,首先是ereg函数,这个函数有个漏洞,等下我们就会说到!

下面先让我们理一理这个password的条件吧!

首先是输入的字符在a~z,A~Z,0~9之间,也只属于这个条件里,其次密码长度要小于8,值要大于9999999,这不很矛盾嘛?中学的时候我们有学过科学记数法,这题用科学记数法表示不就解决了问题嘛?我们再看下一个条件,密码一定要包含*-*,这个条件似乎和第一个条件冲突了啊,那这题就没法做了?

刚才我们提到了ereg函数,这个函数有个很大的毛病,可以截断,我们可以使用BP或者之前学到的00截断来进行操作,所以我们可以写出以下password:

9e9%00*-*

输入以后点击check,会提示这么一行信息。。。。

输入的密码不合法,然后我们可以看到这个网址password,传参数的时候%00自动改成了2500,这个也是浏览器的一个漏洞,我们只需要在网址上进行修改就行了!

这样就得到了Flag!

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-11-18 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Once More分值:10
相关产品与服务
代码审计
代码审计(Code Audit,CA)提供通过自动化分析工具和人工审查的组合审计方式,对程序源代码逐条进行检查、分析,发现其中的错误信息、安全隐患和规范性缺陷问题,以及由这些问题引发的安全漏洞,提供代码修订措施和建议。支持脚本类语言源码以及有内存控制类源码。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档