BUUCTF_Web题目题解记录2

BUUCTF刷题Web篇



前言

继续记录之前无脑刷过的web题


一、[MRCTF2020]Ez_bypass

打开靶机是一串代码:
题目
因为html 渲染过程中是不会把\n当做回车展示的,所以右键查看源代码,瞬间舒服了:
按行显示的题目代码
我愿称这道题的考点是“代码审计”
读代码可知拿到flag只需要满足俩条件:
1.让以get方式传参的两个变量gg和id满足md5后的值强比较相等本身的值弱比较不相等
2.以post方式传参的变量password不是数字并且与数字1234567弱比较相等
由此,在url后追加?id[]=1&gg[]=2就可以显示“You got the first step”的提示。但passwd参数还没有传,此时需要借助浏览器插件HackBar以post方式传入passwd=1234567a
以get方式传参并使md5值相等

借助浏览器插件进行post传参
因为我只在火狐浏览器安装了HackBar这个插件,所以post这一步用的是火狐浏览器,在url中通过get方式传入满足条件的gg和id后,再用post方法传参passwd=1234567a即可让网页显示出flag。这里如果不借助浏览器插件的话我不知道如何还能在get传参的同时进行post传参。
总结:
1.给数组类型的变量赋值不同的数值,可以满足变量的md5值在进行强比较时相等,又满足他们自身的值在进行弱比较时不相等。
2.在数字后面加个字母,就不再是数字但又可以满足和数字做弱比较时相等。

二、[极客大挑战 2019]BuyFlag

这道题,考的是脑洞和经验?因为要去看请求包和响应包来找到提示信息。
1.打开题目靶机链接,看到的是这样一个网站主页。看到右上角有一个menu,点击pay flag(因为题目叫buy flag)

题目网站主页
找到pay flag

2.打开后是这样子,有几句提示,要满足要求才能得到flag,要求是:是CUIT的学生,还要输入正确的密码。
pay flag的界面
3.问题是如何传参呢?get还是post?又要如何pay money?而且网页显示要100000000这么多感觉必有蹊跷!~
反正我是没招了,去看别人wp,原来是要去看请求包和响应包……只能极其不情愿地打开了代理和burp……(喂!有没有一种可能,是无论要工作还是做题,都先打开这些再说?)
于是抓包如下,重要之处都标注了出来。首先,是不是CUIT的学生就相当于验证身份,cookie这里是user=0,无法通过身份认证,想到尝试将0改成1;然后,返回包中的注释给出了对password的要求,可以看到要用post传入password,还要满足password不是数字并满足和数字404弱比较相等

抓包看包内容
将请求报文放入重发器,改变请求方式为post,cookie改为user=1,在请求正文中填入password=404a(这里可以联想到上次做的题也是1234567a不是数字但又和数字1234567弱比较相等)
发送请求包,在返回包中已经可以看到身份认证通过和密码正确的提示,但又提示还没有pay for flag。那就继续尝试再在请求正文后面添加一个money=100000000呗,结果说数字太长,那就用科学计数法,1e8还说钱不够(还骂我是loser!气气!!我还想说他那个数字太长了的提示,应该是number不是nember!)用10e8或1e9才可以。真是忘了这科学计数法到底咋表示了,唉。但是……网站上确实是1后面8个0啊,拿到flag却要9个0……
满足学生身份和密码正确

传入money值但提示数字太长
在这里插入图片描述
其实是道挺简单的题,以后没地方入手就抓抓包看看。以及,这道题通过看别人的wp得知,password=404%20也可以,money[]=1也可以。

三、[MRCTF2020]你传你🐎呢

这题目的名字,emmm
倒是一看就能猜到应该是文件上传了
打开靶机链接是这个样子的,我不知道这是什么梗
题目网页
因为类似的题上一篇已经写过了,这里就简写。这道题也是只能上传非php后缀的文件,然后再上传.htaccess文件,使服务器端将jpg看做php。
上传jpg格式的一句话木马:
一句话木马

上传.htaccess时拦截包,修改文件类型为image/jpeg:
上传.htaccess文件
.htaccess里写的内容:SetHandler application/x-httpd-php

上传1.jpg和.htaccess成功后,就可以用中国蚁剑连接了
url地址是:靶机的url/upload/随机生成的一串数/1.jpg(即一句话木马文件上传到的路径)
密码是写在1.jpg里的111
测试连接,显示连接成功,点击添加,在服务器端的根目录可以找到flag
在这里插入图片描述

一般flag在根目录下
这次补充一下关于.htaccess的知识:
以下段落转自:https://www.cnblogs.com/adforce/archive/2012/11/23/2784664.html

htaccess是什么

.htaccess文件(或者"分布式配置文件")提供了针对目录改变配置的方法, 即,在一个特定的文档目录中放置一个包含一个或多个指令的文件, 以作用于此目录及其所有子目录。作为用户,所能使用的命令受到限制。管理员可以通过Apache的AllowOverride指令来设置。

概述来说,htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置。通过htaccess文件,可以帮我们实现:网页301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档等功能。

启用.htaccess,需要修改httpd.conf,启用AllowOverride,并可以用AllowOverride限制特定命令的使用。如果需要使用.htaccess以外的其他文件名,可以用AccessFileName指令来改变。例如,需要使用.config ,则可以在服务器配置文件中按以下方法配置:AccessFileName .config

笼统地说,.htaccess可以帮我们实现包括:文件夹密码保护、用户自动重定向、自定义错误页面、改变你的文件扩展名、封禁特定IP地址的用户、只允许特定IP地址的用户、禁止目录列表,以及使用其他文件作为index文件等一些功能。


总结

这次没有总结

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值