web大手子炼成记之cookies欺骗

bugku

cookies 题目链接

打开题目页面显示一串乱码,F12以后啥也没有,看见地址栏的东西引起很大的*趣,这这这 $ filename不是base64加密吗(=,它就是base64加密的特征)!!!
在这里插入图片描述
在线解码后为keys.txt,$ line什么参数也没有,传入1,2。。。之后页面空白。。。mmp
直接查看index.php吧(注:因为index.php同keys.txt一样要先base64加密),这时再传入$line,传入参数不一样,页面就显示不一样的代码,但可以看出传入x就显示第x行的代码,反手掏出python写脚本吧!!!(脚本和结果如下图)
在这里插入图片描述
好了得到了index.php代码先分析一下吧

<?php


error_reporting(0);//屏蔽错误信息


$file=base64_decode(isset($_GET['filename'])?$_GET['filename']:"");//将filename参数base64解密,没有值就设为空


$line=isset($_GET['line'])?intval($_GET['line']):0;//intval函数:强制类型转换,转换为整型;


if($file=='') header("location:index.php?line=&filename=a2V5cy50eHQ=");//如果file为空,就显示header()


$file_list = array(


'0' =>'keys.txt',


'1' =>'index.php',


);//设置file_list数组


 


if(isset($_COOKIE['margin']) && $_COOKIE['margin']=='margin'){


$file_list[2]='keys.php';


}//如果COOKIE['margin']存在且等于‘margin’,则将keys.php加入file_list数组中


 


if(in_array($file, $file_list)){


$fa = file($file);


echo $fa[$line];


}//如果$file在file_list数组中就显示$file的第line行


?>


代码分析完就确定了$ filenamem和$ line的作用了,flag应该就在$ keys.php中,所以$ filename=a2V5cy5waHA=,$ line的作用正如我上文猜想的,剩下就简单了,掏出神器burp,抓包,送包搞定!
在这里插入图片描述
最后作为小白送上为啥要直接查看index.php的原因:
1,index.php是一个用PHP语言开发的网站的首页,index是普遍意义上的“首页”,所以你不得看看这么重要的东西???(其实它相当于c语言里面的主函数,什么事情最终都在它那完成)
2,问问你为啥啥web题你都要摁F12,,,,一样的道理嘛

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值