BugkuCTF - 练习平台 - WEB——Writeup

1.web2

F12直接查看
在这里插入图片描述

2.计算器

在这里插入图片描述
发现可输入字符的最大长度为1,可以根据情况改长
在这里插入图片描述

3.web基础$_GET

在这里插入图片描述
直接在地址栏传参what=flag即可
在这里插入图片描述

4.web基础$_POST

在这里插入图片描述
POST传参,可以在火狐的HackBar下实现
在这里插入图片描述

5.矛盾

在这里插入图片描述

is_numeric()函数是检测变量是否为数字或数字字符串,!is_numeric($num)的意思是num变量不能是纯数字,但是num=1才打印flag,所以在num=1后加一个不是数字的符号,强制类型转换只转换为1
在这里插入图片描述

6.web3

右键查看源代码,发现一段HTML编码
在这里插入图片描述
解码即可
在这里插入图片描述

7.域名解析

在这里插入图片描述
那就照着做:打开C:\Windows\System32\drivers\etc,编辑hosts,在最后加上123.206.87.240 flag.baidu.com保存
在这里插入图片描述
然后访问flag.baidu.com
在这里插入图片描述

8.你必须让他停下

Bp抓包,多点几次Go就行了
在这里插入图片描述

9.变量1

在这里插入图片描述
给变量传一个全局数组变量,构造payloadargs=GLOBALS
在这里插入图片描述

10.web5

右键查看源代码
在这里插入图片描述
很长的JS编码,但是有括号,把它复制下来提交试试,用火狐里面的控制台
在这里插入图片描述
回车提交
在这里插入图片描述

11.头等舱

bp抓包,发送,在响应头中可以看到
在这里插入图片描述

12.网站被黑

没思路,御剑扫描一下
在这里插入图片描述
扫描出一个shell.php,访问
在这里插入图片描述
发现有密码,这里要用到bp中自带的暴力破解插件
在这里插入图片描述
在这里插入图片描述
开始破解,先点击Length按钮,进行升序排序,当出现长度不同的字符时可以第一眼看到
在这里插入图片描述
可以直接查看相应
在这里插入图片描述
也可以在浏览器中输入密码
在这里插入图片描述

13.web4

提示查看源代码,那便看一下
在这里插入图片描述
发现URL编码,紧接着是一个函数,那便顺着函数的思路,把URL编码连接好
在这里插入图片描述
发现一段奇特的数字,拿去试试!(碰运气)
在这里插入图片描述

14.flag在index里

在这里插入图片描述
这是一个典型的文件包含漏洞,(file关键字是提示,其实也是CTF的套路)
这里用到了php的封装协议:http://php.net/manual/zh/wrappers.php.php
具体怎么用呢,先说结果:http://123.206.87.240:8005/post/index.php?file=php://filter/read=convert.base64-encode/resource=index.php
在这里插入图片描述
然后将得到的字符串base64解码得到index的源码:
在这里插入图片描述
现在具体说说file=php://filter/read=convert.base64-encode/resource=index.php的含义

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

通过传递这个参数可以得到index.php的源码,下面说说为什么,看到源码中的include函数,这个表示从外部引入php文件并执行,如果执行不成功,就返回文件的源码。

而include的内容是由用户控制的,所以通过我们传递的file参数,是include()函数引入了index.php的base64编码格式,因为是base64编码格式,所以执行不成功,返回源码,所以我们得到了源码的base64格式,解码即可。

如果不进行base64编码传入,就会直接执行,而flag的信息在注释中,是得不到的。
转载:https://blog.csdn.net/zpy1998zpy/article/details/80585443

15.输入密码查看flag

在这里插入图片描述
根据提示,想到bp中的爆破工具
在这里插入图片描述
十年之后,跑出来了!!!
在这里插入图片描述
查看响应
在这里插入图片描述
或在浏览器中输入爆破出的密码
在这里插入图片描述

16.点击一百万次

在这里插入图片描述
分析代码可知,当clicks=1000000时,flag就出来了。而且还是post请求,应该怎么解决毫无疑问
在这里插入图片描述

17.过狗一句话

在这里插入图片描述
exlpde()分割a#s#s#e#r#t为assert,使用assert()函数的解析传进来的s串,assert有代码执行漏洞。构造payload
s=print_r(scandir('./'));查看任意目录
在这里插入图片描述
flag可能就藏在这里,看一下
在这里插入图片描述

18.前女友(SKCTF)

在这里插入图片描述
呵呵哒

右键源代码是家常便饭
在这里插入图片描述
就这一点有用的在这里插入图片描述
在这里插入图片描述
遇到这种的数组绕过就ok
payloadv1[]=1&v2[]=2&v3[]=3
在这里插入图片描述

19.你从哪里来

bp抓包,加上http头referer:https://www.google.com
在这里插入图片描述

20.md5 collision(NUPT_CTF)

利用MD5函数漏洞构造payloada=s878926199a
在这里插入图片描述

21.各种绕过

在这里插入图片描述
有GET请求,也有POST请求
数组绕过,GET在URL输入、POST用HackBar
在这里插入图片描述

22.细心

在这里插入图片描述
一般像这种没思路的,除了右键源代码便是御剑扫描
在这里插入图片描述
访问robots.txt
在这里插入图片描述
按步骤来
在这里插入图片描述
注意到管理员字样
payloadx=admin
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_43921596/article/details/87291425