IDF-cookie欺骗
原题链接:http://ctf.idf.cn/game/web/40/index.php
- 进入题目,发现一个长字符串,放到md5、base64均无意义。
- 观察地址栏,发现有两个参数,line和file

(1)将file=后的参数放到base64解码(url参数传递一般用base64编码),可知该串原意为:flag.txt
(2)既然知道后面是接文件名,假设flag.txt在当前目录,那么猜想有其他的文件也在通过用base64加密的方式输入到url中访问,对index.html和index.php分别进行测试,line从0向上遍历
3.尝试后可知,当file=aW5kZXgucGhw(index.php的base64编码)时,line的取值可获取index.php源代码的第line行

4.遍历整个文件可得:
<?php
error_reporting(0);
$file=base64_decode(isset($_GET['file'])?$_GET['file']:"");
$line=isset($_GET['line'])?intval($_GET['line']):0;
if($file=='') header("location:index.php?line=&file=ZmxhZy50eHQ");
$file_list = array(
'0' =>'flag.txt',
'1' =>'index.php',
);
if(isset($_COOKIE['key']) && $_COOKIE['key']=='idf'){
$file_list[2]='flag.php';
}
if(in_array($file, $file_list)){
$fa = file($file);
echo $fa[$line];
}
?>
(1)分析代码,做出以下注释
error_reporting(0);
//不打印页面访问错误报告
$file=base64_decode(isset($_GET['file'])?$_GET['file']:"");
//解码地址栏中file=后的内容
$line=isset($_GET['line'])?intval($_GET['line']):0;
//获取地址栏中line=后的内容
if($file=='') header("location:index.php?line=&file=ZmxhZy50eHQ");
//若地址为空,则跳转到原界面(flag.txt) 无论line的值
$file_list = array('0' =>'flag.txt','1' =>'index.php',);
//创建file_list数组
if(isset($_COOKIE['key']) && $_COOKIE['key']=='idf'){
$file_list[2]='flag.php';
}
//若id为key的cookie有定义,并且值为idf 则在file_list第三个位置插入flag.php
if(in_array($file, $file_list)){
$fa = file($file);
echo $fa[$line];
}
//若file_list数组内存在file文件名,则打印该文件的第line行代码
?>
(2)阅读代码可知,cookie的名为key,值为idf, 将file参数置为ZmxhZy50eHQ(flag.php的base64码)可以通过cookie欺骗的方式访问flag.php文件
5.下面用python进行cookie欺骗及遍历源代码
import requests #该库需要安装 安装过程自行百度
import sys
cookies = {'key': 'idf'} #设置cookies的key值为idf 即cookies欺骗
for i in range(0,20): #循环打开网页并抓取网页文本信息
url="http://ctf.idf.cn/game/web/40/index.php?line="+str(i)+"&file=ZmxhZy5waHA="
wp = requests.get(url, cookies=cookies)
print(wp.text)
print("get flag success")
6.最终得到flag.txt 内容为:
flag即为wctf{idf_c00kie}
IDF-cookie欺骗的更多相关文章
- 通过COOKIE欺骗登录网站后台
1.今天闲着没事看了看关于XSS(跨站脚本攻击)和CSRF(跨站请求伪造)的知识,xss表示Cross Site Scripting(跨站脚本攻击),它与SQL注入攻击类似,SQL注入攻击中以SQL语 ...
- cookie欺骗
1.什么是cookie欺骗改变cookie的值,发给服务器,就是cookie欺骗.正常情况下,受浏览器的内部cookie机制所限,每个cookie只能被它的原服务器所访问,我们操作不了原服务器. 2. ...
- asp中cookie欺骗/注入原理与防范
一直以来sql注入被广泛关注,也有专门的防注系统代码.发现,如果代码不严谨也会有cookie欺骗/注入的情况.原来, 防注入系统没有注意到 Cookies 的问题!这里以ASP为例,分析一下cook ...
- 用wget实现cookie欺骗
用wget实现cookie欺骗 . 分析登录界面的html代码 页面在 http://bbs.linuxeden.com/ <form. id="loginform" met ...
- 彻底解决cookie欺骗(有问题)
不要在公共场登陆 自己重要的用户名和密码: 不用的时候,[关闭浏览器],只点[退出],还是会有安全隐患.--没有绝对的安全由于http的无状态性,总不能每次访问页面都要输入用户名和密码,所以为了保持状 ...
- bugku题目“cookie欺骗”
先上成功截图 题目写的cookie欺骗,但其实是一道考察写脚本能力和代码审计类的题目,首先观察开始的页面 可以看到只有这一串字母,粗略观察可以认为这绝对不是密码,而是胡乱写上的字符,在观察页面源代码后 ...
- Silic PHP大马Cookie欺骗漏洞
$password="ebd9a3c106064a255aaee28b6eb4f21c"; if($_COOKIE['admin_silicpass'] != md5($passw ...
- 【Docker】通过cookie欺骗在ubuntu中使用wget下载jdk
在ubuntu系统中,如果想通过wget直接下载Orcale内的jdk文件,一般是办不到的.所以就得用特殊的方法. 首先在官网找到自己需要下载的jdk版本下载链接: 点选Accept License ...
- IDF-CTF-cookie欺骗 writeup
题目链接: http://ctf.idf.cn/index.php?g=game&m=article&a=index&id=40 知识点:base64解码, cookie欺骗 ...
随机推荐
- IdentityServer4之Resource Owner Password Credentials(资源拥有者密码凭据许可)
IdentityServer4之Resource Owner Password Credentials(资源拥有者密码凭据许可) 参考 官方文档:2_resource_owner_passwords ...
- leetcode — scramble-string
import java.util.Arrays; /** * Source : https://oj.leetcode.com/problems/scramble-string/ * * Given ...
- Linux基础知识第五讲,远程管理关机启动网卡命令
目录 一丶学习目标 二丶关机重启命令 三丶 查看或配置网卡信息 1.网卡与IP地址介绍 2.命令介绍 一丶学习目标 关机/重启 shutdown 查看或配置网卡信息 ifconfig ping 远程登 ...
- curl 错误总结
证书域名与访问的域名不一致 问题:curl SSL: certificate subject name 'luffichen_server.tencent.com' does not match ta ...
- 如何设计一个 RPC 系统
本文由云+社区发表 RPC是一种方便的网络通信编程模型,由于和编程语言的高度结合,大大减少了处理网络数据的复杂度,让代码可读性也有可观的提高.但是RPC本身的构成却比较复杂,由于受到编程语言.网络模型 ...
- C# 判断用户是否对路径拥有访问权限
如何获取当前系统用户对文件/文件夹的操作权限? 1.获取安全信息DirectorySecurity DirectorySecurity fileAcl = Directory.GetAccessCon ...
- python3中time模块与datetime模块的简单用法
__author__ = "JentZhang" import time # Timestamp 时间戳 print("Timestamp 时间戳:") pri ...
- iOS----------随机色
#define KColorRandomColor [UIColor colorWithRed:arc4random()%255/255.0 green:arc4random()%255/255.0 ...
- Android远程桌面助手(Build 0737)
Android Remote Displayer and Controller Build 0737, Aug 02, 2017 新增功能: 录制MP4文件,突破了Android原生180S的限制 截 ...
- 微信小程序(六) 文章详情静态页面detail
文章详情静态页面detail: