Bugku web

版权声明:本文为博主原创文章,转载需注明出处。 https://blog.csdn.net/zz_Caleb/article/details/84112164

1.web2

打开网页:

哈哈,其实按下F12你就会发现flag。

2.计算器

打开网页,只是让你输入计算结果,但是发现只能输入一个数字,这时按下F12,修改一下参数,使之可以输入多个数字,修改后输入结果就拿到flag了。

3.web基础$_GET 30

打开网页,审计一下大概是要让其得到一个what=flag,于是在URL后面加上?what=flag,就得到flag了。

4.web基础$_POST 30

打开网页,审计一下大概是要让你上传一个what=flag,用hackbar来post一下就行了。

5.矛盾

审计代码,发现大概是要得到num=1,但是num又不是数字。这样就要想办法了,?num=1e0.11,传递一下就行了。(让num是1但又不是数字)

6.web3

打开网页,查看源代码,发现最后有一串HTML编码,解码就行了。

7.域名解析

Linux、Windows都可以,找到Windows为 c:\windows\system32\drivers\etc\hosts ,linux下为etc/hosts,修改如下:

保存后访问 flag.baidu.com ,就拿到flag了。

8.你必须让他停下

先来一个不建议用单页能得出flag的方法。

打开网页发现一直在不断跳转,猜想可能源码中有这样的语句使其一直跳转,于是查看源代码,果然发现一段代码:

于是想到修改一下页面代码,F12,找到对应部分,将

window.location.reload(); 删去,由于页面是不断跳转的,也许你修改的源码真是flag所在网页的源码,那你就能直接在flag is here,这里看到flag。

但是还是不建议这样做,正确的做法应该是:

用bp抓包,送到repeater里,一帧一帧的go,就是一直点go,就能拿到flag了。

9.本地包含

审计一下代码,大概意思就是接受一个hello的值赋给a,然后再输出a,上面有提示flag.php,可能flag在这个文件中。

这个时候需要传递一个hello,且将文件中文本赋给hello,用到一个PHP函数:file_get_contents(),将URL改成:

http://123.206.87.240:8003/?hello=file_get_contents('flag.php'),

然后再查看源码,flag就被输出了。

10.变量1

这个题好几个网站上都有,下面是我找到的解法:

首先观察程序,很明显看到了$$args,考虑到此题可能考GLOBALS变量,直接构造如下赋值即可:

http://120.24.86.145:8004/index1.php?args=GLOBALS

得到flag

11.web5

查看源码,发现有好长一串不一样的有符号组成的东西,这是一个js的编码,粘贴到控制台中,回车就行了。

12.头等舱

打开什么也没有,源码也什么也没有,于是用bp抓包,送到repeaterli,go一下,看到了flag。

13.网站被黑

题上写到:这个题没技术含量但是实战中经常遇到

源码什么的也没发现什么,于是用御剑扫描一下,发现一个shell.php,打开这个网页,准备好抓包,随便输入一个密码,比如admin,回车,这是就抓到包了(一定是在提交时抓包)。

送到intruder中进行密码爆破:

开始破解,完成后发现

所以密码是:hack

输入后就拿到flag了。

14.管理员系统

打开链接发现是要登陆,(这里sql注入不行),自己随便输入用户名密码,会有这样的提示:

  “本地管理员”......“本地”......

  得到新思路:伪装成本地访问:

  抓包

  改包:Headers中增添一对键值对:  X-Forwarded-For : 127.0.0.1 

  F12发现有一串base64码,解码为test123,猜想是密码,输入用户名和密码,用bp抓包,再改包,送包就会发现flag了。

15.web4

看看源代码有escape编码,unescape一下得到代码,可以看到:

if("67d709b2b54aa2aa648cf6e87a7114f1"==a.value)return!0;

输入67d709b2b54aa2aa648cf6e87a7114f1提交就拿到flag了。

16.flag在index里

老司机看到文件在index(php文件)中,估计很快能拿到flag。

这里用到一个读取php文件源码的方法,是文件包含漏洞(本地文件包含(Local File Include),简称 LFI。),先说解决方法再解释。(file关键字是提示,其实也是CTF的套路)

构造URL:http://123.206.87.240:8005/post/index.php?file=php://filter/read/convert.base64-encode/resource=index.php

然后来解释php://filter/read/convert.base64-encode/resource=index.php

首先这是一个file关键字的get参数传递,php://是一种协议名称,php://filter/是一种访问本地文件的协议,/read=convert.base64-encode/表示读取的方式是base64编码后,resource=index.php表示目标文件为index.php。这样就能读取文件源码并以base64的 方式输出。

将base64码解码就拿到flag了。

17.

猜你喜欢

转载自blog.csdn.net/zz_Caleb/article/details/84112164