MOCTF web writeup

前几天发现一个不错的平台MOCTF但一直没时间刷。这几天陆续更新web题的wp

web1:一道水题

进去一堆青蛙

查看源代码,看到flag

web2:还是水题

发现密码框输入不了,遂F12审查元素,删除disable属性,以及将长度改为5,输入moctf。得到flag

web3:访问限制

题目提示用NAIVE浏览器,于是想到burp改user-agent:NAIVE

run得到flag

web4:机器蛇

这道题。。。。我。。。一进去玩了半天的贪吃蛇。。。。

后来随手审查了元素,发现robots.txt点进去后发现flag327a6c4304ad5938eaf0efb6cc3e53dc.php

进去F12找到flag

web5:PHP黑魔法

题目提示php~

进去后查看源代码,php黑魔法。

大致意思就是

1.输入a,b两个参数,都不能为空

2.这两个参数不能相等

3.这两个参数经过md5加密后相等。

条件2和条件3貌似冲突。

两种方法:

1.构造数组,md5加密遇到数组时都返回false,于是相等,但值并不相等。?a[]=1&b[]=2

2.md5加密后0e开头的都相等,例如:240610708 和 QNKCDZO。   ?a=240610708&b=QNKCDZO

两种方法都得到了flag

web6:我想要钱

进去也是php审计

需要满足四个条件就会得到flag

1.参数为money,并且为get传递

2.money的长度要小于4

3.money要大于time(),time()返回的值百度了一下,貌似是从1970年到现在的秒数,反正就是特别大。

4.money不能是数组

自然想到科学计数法,构造?money=2e10 得到flag

web7:登录就对了

一看就是sql注入题,用户名构造万能密码:‘or ‘1‘ = ‘1‘ #   密码任意  得到flag

web8:Flag在哪?

页面只有一个超链接,点击并burp,一开始什么都没发现,后来看到有302跳转,跳转到了五个页面分别为:

/where_is_flag.php

/flag.php

/I_have_a_frog.php

/I_have_a_flag.php

/no_flag.php

猜测flag应该在flagfrog.php或者frogflag.php

访问两个页面都没有结果,再burp,都得到了flag。。。。。脑洞大的很。。。

web9:死亡退出

p师傅有一篇文章详细讲了绕过死亡exit,但之前一直没看,在参考郁师傅的wp的时候又看到了这篇文章,

深知它的重要性!!!于是好好得拜读了。

原文链接:https://www.leavesongs.com/PENETRATION/php-filter-magic.html

遂写shell并base64编码,之后再解码的时候,符<、?、;、>、空格等一共有7个字符不符合base64编码的字符范围将被忽略,所以最终被解码的字符仅有“phpexit”和我们传入的其他字符。

但base64算法解码时是4个byte一组,所以给他增加1个“a”一共8个字符。这样,"phpexita"被正常解码,而后面我们传入的webshell的base64内容也被正常解码。结果就是<?php exit; ?>没有了。

参考郁师傅的shell:<?php system(‘cat flag.php‘);? >    base64加密后为:PD9waHAgc3lzdGVtKCdjYXQgZmxhZy5waHAnKTsgPz4=

再结合tmp.php构造payload为file=php://filter/write=convert.base64-decode/resource=tmp.php&c=PD9waHAgc3lzdGVtKCdjYXQgZmxhZy5waHAnKTsgPz4=

审查元素得到flag

web10:文件包含

查看源代码看到提示信息flag.php,结合题目文件包含

构造payload:?file=php://filter/convert.base64-encode/resource=flag.php

得到一串加密字符,base64解密得到flag

web11:美味的饼干

进去就是一个登陆页面,尝试弱密码登录admin,admin顺利登录,后来发现貌似随意一个账号密码都能进去。。。。

抓包发现一串字符串:SET-COOKIE:ZWUxMWNiYjE5MDUyZTQwYjA3YWFjMGNhMDYwYzIzZWU%3D

%3D是“=”的URL编码,所以对ZWUxMWNiYjE5MDUyZTQwYjA3YWFjMGNhMDYwYzIzZWU=进行base64解码,得到MD5密文ee11cbb19052e40b07aac0ca060c23ee,解密后得到user

所以使用admin先md5后base64,加上cookie,得到flag

原文地址:https://www.cnblogs.com/gzs-monkey/p/9209303.html

时间: 2024-10-09 01:50:49

MOCTF web writeup的相关文章

2017 redhat web writeup

2017 RedHat Web writeup1.thinkseeker2.PHPMyWIND3.后台 2017 RedHat Web writeup 1.thinkseeker 这题考两个点 1.用with rollup过前面两个if 2.用盲注找到flag 关于第一点在实验吧有原题:http://www.shiyanbar.com/ctf/1940 过滤方法稍有不同,用操作符代替关键字即可.token使用变量覆盖就可以. 第二点就是infoid这个参数有盲注,跑脚本可以拿到flag. 这是脚

ISCC 2017 Web writeup

ISCC 2017 Web writeupWeb签到题WelcomeToMySQL自相矛盾我们一起来日站I have a jpg,i upload a txt.where is your flagSimple sqli ISCC 2017 Web writeup Web签到题 这种签到题不能往难了想,首先理所当然的这样传参 hiddenflag=f1ag&flag=f1ag 这回显不一样了,试了很多方法,最后就是再加一个参数FLAG=f1ag,然后就成了,完全没有逻辑... WelcomeToM

ISG 2018 Web Writeup

文章目录 又一次感觉到了,作为一个CTFer,要想在比赛中有高的输出,只做Web是不够的 calc 首先看到题目后,在输入框中测试了一下,发现可以被执行 首先猜想是不是ssti,模板注入,但是平常遇到的模板注入题目中,python的居多,php的没怎么遇到过,有点怀疑如果是php的模板注入的话也不一定能搞得出来,这个时候扫一下目录 1 python dirsearch.py -u http://202.120.7.205:60003/ -e php -t 60 发现存在git源码泄露 直接上gi

[WUST-CTF]Web WriteUp

周末放假忙里偷闲打了两场比赛,其中一场就是武汉科技大学的WUST-CTF新生赛,虽说是新生赛,题目质量还是相当不错的.最后有幸拿了总排第5,记录一下Web的题解. checkin 进入题目询问题目作者昵称,在题面里可以看到是52HeRtz,但是发现题目输入框只能输入3个字符,并且按钮是灰色的 直接F12审查元素去掉maxlength以及disable两个属性,输入作者昵称即可 弹出作者的博客地址,跟进去 在作者博客首页可以看到一部分Flag: 根据提示“远古的博客”,找到一篇1970年的文章,文

NJCTF2017 Web Writeup

一个登陆和注册的功能,开始以为是注入,发现并不行.后来尝试了下弱口令 1 2 username:admin password:admin123 结果登录成功了..其实正解是注册时注册用户为admin后跟很多很多空格之后加个a就是注册时拼接到数据库时有长度限制一开始测试不成功是因为空格太少了,尴尬 Get Flag 看起来是一个搜索图片的框输入1.jpg后在返回页面查看源码,发现被base64加密过那么我直接读../../../../../../etc/passwd试试解base64发现确实可以读

1008.CTF 题目之 WEB Writeup 通关大全 – 2

Web题目系列2 登陆一下好吗?? 题目链接 http://shiyanbar.com/ctf/1942 题目描述 不要怀疑,我已经过滤了一切,还再逼你注入,哈哈哈哈哈! flag格式:ctf{xxxx} 解题思路 一个万能密码问题,多试试就可以了. username: ''=' password: ''=' who are you? 题目链接 http://shiyanbar.com/ctf/1941 题目描述 我要把攻击我的人都记录db中去! 解题思路 看到题目就想到修改x-forwarde

1009.CTF 题目之 WEB Writeup 通关大全 – 3

Web题目系列3 让我进去 题目链接 http://shiyanbar.com/ctf/1848 题目描述 相信你一定能拿到想要的 Hint:你可能希望知道服务器端发生了什么.. 格式:CTF{} 解题思路 用burpsuite抓包后,发现cookie里有一个字段source=0,修改为1后获取源码. 源码内容 <html> <body> <pre> $flag = "XXXXXXXXXXXXXXXXXXXXXXX"; $secret = "

1010.CTF 题目之 WEB Writeup 通关大全 – 4

Web题目系列4 上传绕过 题目链接 http://shiyanbar.com/ctf/1781 题目描述 bypass the upload 格式:flag{} 解题思路 随意上传文件,发现提示只能上传图片文件,上传图片后,看到发送包的内容为 推测最后保存文件的名称为dir + filename,所以使用00截断来构造绕过php不能上传的问题. flag{SimCTF_huachuan} NSCTF web200 题目链接 http://shiyanbar.com/ctf/1760 题目描述

[MRCTF]Web WriteUp

和武科大WUSTCTF同时打的一场比赛,最后因为精力放在武科大比赛上了,排名13  - -Web题目难度跨度过大,分不清层次,感觉Web题目分布不是很好,质量还是不错的 Ez_bypass 进入题目得到源码: <?php include 'flag.php'; $flag='MRCTF{xxxxxxxxxxxxxxxxxxxxxxxxx}'; if(isset($_GET['gg'])&&isset($_GET['id'])) { $id=$_GET['id']; $gg=$_GET