文章目录
- 1.Web2
- 2.计算器
- 3.Web基础$_GET
- 4.Web基础$_POST
- 5.矛盾
- 6.Web3
- 7.域名解析
- 8.你必须让他停下
- 9.本地包含
- 10.变量1
- 11.Web5
- 12.头等舱
- 13.网站被黑
- 14.管理员系统
- 15.Web4
- 16.flag在index中
- 17.输入密码查看flag
- 18.点击100万次
- 19.备份是个好习惯
- 20.成绩单
- 21.秋名山老司机
- 22.速度要快
- 23.Cookies欺骗
- 24.Never give up
- 25.Welcome to bugkuctf
- 26.过狗一句话
- 27.字符?正则
- 28.前女友(SKCTF)
- 29.login1
- 30.你从哪里来
- 31.MD5 collision
- 32.程序员本地网站
- 33.各种绕过
- 34.Web8
- 35.细心
- 36.求getshell
1.Web2
打开链接之后是滑稽笑脸,好家伙,吓我一跳,还以为是大bug,然后也没有提示啥的
感觉有点无从下手???别急,打开页面源代码(检查元素也可)瞅瞅
注释部分就是flag了。
2.计算器
打开链接是计算页面,这加法,太小儿科了吧,hh~
于是,自信满满输入答案,但是发现输入框只能输入一个数字,没办法,输入不进去了,点击验证
好家伙,算法是正常验证的,所以问题就在于输入框的限制。这里的检验其实是前端页面的输入限制,所以你只要想办法能够输入运算结果就再点击验证即可
将1改为需要输入的位数即可
O了:)
3.Web基础$_GET
这题与get请求有关,此处可以用到的工具为BurpSuite,没有该工具的移步——>Burp2020版下载(也可不使用)
不清楚get请求数据包格式的请自行搜索了解,提一点,比较重要的是get请求的参数是直接表现在url中的。
打开链接后,读懂代码意思,有一个what变量,从get请求中获取参数值,如果这个值是flag,那么就会打印出flag值
so,直接url中,输入
?表示开始输入参数,后面以键值对的形式输入变量和参数值,回车,得到flag。当然,也可以抓包看看get请求的具体格式。
4.Web基础$_POST
打开burp拦截,将链接发送给repeater,forward
读懂代码意思,和get请求要求一样,唯一不同的就是请求方式,到repeater里面看看刚刚拦截的请求
查看请求包,把请求头改为post,然后在下面body中添加参数(post请求和get请求参数位置的不同)
然后在参数里面将type更新为Body,再send
便可在右边框框中得到flag值
5.矛盾
打开链接,根据返回消息,可知这是一个get请求,有一个参数num值需要判断,如果不是数值型,就判断是不是1,如果是1便输入flag值
太矛盾了,于是,输入1试试
没啥反应,因为第一个要求就不符合,输入‘1’试试
输出了参数值,却不满足第二个判断,于是就去搜索有没有什么不是数值型却能表示1的编码,然后看见一篇博客说用科学计数法,输入1e0.1,不是纯数字,通过第一个条件,值为1,通过第二个条件,好像蛮有道理哦,试试
没问题~
6.Web3
打开链接只有一个对话框,问题是一直点一直有,┭┮﹏┭┮
阻止后没有任何提示信息,懵得一批,于是检查元素,点开js代码
一大串弹框,还有一行注释,当然,我不知道这行注释是干啥的,但是!别小瞧了注释,任何东西,存在即合理,越不起眼越可能是关键!嘿嘿,当然,这是后话~
不明所以的我于是开始搜web3是个什么东西,搜了一通不明所以,看到一篇博客说是把注释内容复制存为html文件在浏览器中打开便能得到flag了。至于为什么,下次迭代再补充???
7.域名解析
看到这个,我竟然去ping这个域名了😂,无可救yao了~这里的知识点是域名解析过程,我们一般是在地址栏中输入域名,然后电脑主机会以自己的一套