Mimikyu靶场 基础题12道(CTF超级入门题)

靶场主页

image.pngpass01 Source
image.png
解决方法:一是F12,二是burp抓包

F12查看
image.png
response包查看
image.png

Pass02 Response

Homepage代表主页index.php
image.png
尝试修改发现是不行的,被重定向,扫目录试试,index.php应该是文件,直接在kali中的firefox访问试试
image.png
burp修改后
image.png

Pass03 Get

主要是:?参数 = 参数值 的形式
image.png

解决方法:(无效果)

http://192.168.200.4/Mimikyu-main/Pass03/?1=2

Pass04 Robots

一片空白。没有什么提示信息
image.png
扫描目录结果
image.png
访问。提示flag在此文件中,访问,。
image.png

image.png

Pass05 Backup

image.png

一般是:.git” 、“.svn”、“ .swp”“.~”、“.bak”、“.bash_history”、“.bkf” 但全没反应,提示NOT found

扫描目录,提示有个WWW.ZIP访问
image.png
windows打不开,拖到kali中打开
image.png
image.png
image.png

Pass06 Cookie

习惯抓包,看到相应包后才想起来cookie.php,那么访问
image.png
提示信息
image.png
在抓包,repeater后发现flag
image.png

Pass07 HTML

image.png
提示信息是只要点击flag后就可以看到FLAG值

一般情况按下F12查看源码即可
image.png
disabled改成abled即可
image.png
点击按钮后
image.png

Pass08 xff_referer

image.png
按照提示信息翻译:在这个路径下index.php源码中的第4行,不能够理解ip地址,那么看到X_FORWARDED_FOR就是伪造IP地址为123.123.123.123
提示还有伪造referer,页面的来源
image.png
返回flag
image.png

Pass09 PHP

image.png
这个是php的弱比较内容,在此处进行笔记式记录

弱类型分为两类(菜鸟教程)

  • 松散比较:使用两个等号 == 比较,只比较值,不比较类型。
  • 严格比较:用三个等号 === 比较,除了比较值,也比较类型。
<?php
if(42 == "42") {
    echo '1、值相等';
}

if(42 === "42") {
    echo '2、类型相等';
} else {
    echo '3、类型不相等';
}
?>

:::success
结果为:
1、值相等
3、类型不相等
:::
0 false null之间的比较
字符串和数字之间比较

var_dump('a' == 0);
var_dump('1a' == 1);	
var_dump('12a' == 1);	

:::success
结果为:
//bool(true)
//bool(true)
//bool(false)
解析:
1.字符串在和数字比较的时,会将字符串转化为数字,如a转换成False,False又和0弱类型比较是相等的,所以第一个是true。
2.字符串是以数字开头时,那么转成这个数字本身再做比较,所以第二个也是true,
3.转成数字后变成12,不等于1,则为false。
:::

<?php
show_source(__FILE__);
include("config.php");
$a=@$_GET['a'];
$b=@$_GET['b'];
if($a==0 and $a){
    echo $flag1;
}
if(is_numeric($b)){
    exit();
}
if($b>1234){
    echo $flag2;
}
?>
<?php
show_source(__FILE__);
include("config.php");

if('a'== 0 and 'a'){
    echo $flag1;
}
if(is_numeric('b')){
    exit();
}
if('b'>1234){
    echo $flag2;
}
?>

:::success
解析:
当数字和字符串比较时,字符串会自动转换成数字,会将a转化成数值强制转化,转化的结果是a==0,然后 0 and 0 为真,输出flag1。
b是数字和字符串时,就退出此脚本,另外还要求b的值还得大于1234,因为不能等于数字和字符串还得大于指定的1234,那么就在数字1234后添加字符串,所以构造的payload为:a==a&b=9999a
:::
结果显示flag
image.png
image.png

布尔true和数字比较

var_dump(True == 0);	
var_dump(True == 1);

:::success
//bool(false)
//bool(true)
:::

布尔true和字符串比较

var_dump(True == 'False')

:::success
//bool(false)
:::

Pass10 weak_auth

弱口令密码爆破
image.png
采用集束炸弹模式
image.png
从长度判断
image.png
从返回包查看
image.png
Pass11 WebShell
我这个有问题,点击flag.php自己就出来flag值了
image.png
image.png

Pass12 rce

ping 的测试
image.png
ping baidu.com
image.png
ping127.0.0.1
image.png
利用ipconfig查询,可以看到操作系统就是我的主机windows
image.png
查询文件,看到flag.txt
image.png
在windows中查看文件的命令时type,一百度就知道
image.png

完结!

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值