初入CTF——WEB

flag在这里

打开题目网址,发现:


1.png

最容易想到的是,查看网页源代码,但是一无所获:


2.png

打开BurpSuite截包,拉Repeater发送,flag就出来了:
3.png

看来这题就是让我们了解Burp的。

芝麻开门

进入界面:


4.png

输入zhimakaimen开门,说是口令错误,数了下黑点,发现少了一个,而且怎么都没办法再输入进去。
F12审查元素看一下输入框,maxlenth是10,我们开大一点:


5.png

然后输入开门就有flag了。
6.png

这题还有两种方法,一种用hackbar,还有就是Burp:


7.png

8.png

反正就是post提交嘛。

cokie

打开页面:
Please login first!


9.png

Burp截包,Login改成1试试。


10.png

11.png

简单的变量覆盖

打开是php代码:

12.png

extract()

从数组中将变量导入到当前符号表。
容易知道整段代码大概内容:

  • 定义filename=FILE,NYSEC="666"
  • 定义content为FILE中的内容
  • 比对二者,相同输出flag
    一开始不太知道url的语法,在后面加了如下内容:


    13.png

    当然是毫无卵用。。。
    其实把双引号去掉就可以了


    14.png

WEB50

题目描述是php弱类型比较,打开网页,还是一段php:


15.png

大致内容是:

  • get提交NYSEC和pasword
  • 两者不能相等
  • 但是两者md5必须相等
  • 输出flag
    容易发现,它在比较是用的==,这是种弱类型比较

===在进行比较时会先判断两种字符串是否相等,再比较
==在进行比较时,会先将字符串类型转换相同,在比较

  • "admin"==1 //false(admin被转换为0)
  • "1admin"==1 //true(1admin 被转换为1)
  • "0e1234"=="0e144134" //true(被当作科学记数法比较,即值都为0)

那我们直接找0e开头的MD5赋值进去就好

16.png

ereg

打开,还是php:


17.png

联系题目,想到可能是从ereg截断下手

  • %00被ereg()认为是字符串的结束
    因为有一个判断(password大于9999999且长度小于8)
    构造一个字符串"1e9%00-",get提交拿到flag:
    18.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容