这是PASECA2019的一道web题

前端是一个蜂蜜商店,你有$1336,可以买蜂蜜和flag。但是flag要$1337,所以我们只能买蜂蜜。

一般这种题目的常规操作就是通过修改你的钱使你能够买到flag。但是看前端也没有什么提示,我们可以抓包观察。

抓包分析

买第一个蜂蜜之后的数据包是这个,显然item是你购买的商品序号,捕捉到session有点奇怪。

发送到repeater之后服务器也没有返回什么有用的东西。重新看前端界面,有一行字

*click to download our sweet images*

下载图片是html文件,我们在下载时抓包分析

在网页的/download?image=1.jpg目录下

文件包含检查

我们针对服务器存在的文件做检查,比如linux里的/etc/passwd,尝试一下本地文件包含/download?image=../etc/passwd 返回如下

有戏,继续尝试,直到这样/download?image=../../etc/passwd

那我们可以通过这个读取/proc/self/environ (纪录当前进程,也就是python的环境变量)

/download?image=../../proc/self/environ

发现了secret_key,这个是Flask Session Cookie加解密中会用到的密钥。因此我们可以想到,这道题是将数据通过Flask Session Cookie加密后存在cookie中,那么我们想要修改钱,就可以伪造cookie。

密钥加解密

我们先将原cookie解密看一看

然后我们修改钱之后再加密

伪造完成,我们到买flag的界面,修改cookie

完成。

[PASECA2019]honey_shop writeup的更多相关文章

  1. 2016第七季极客大挑战Writeup

    第一次接触CTF,只会做杂项和一点点Web题--因为时间比较仓促,写的比较简略.以后再写下工具使用什么的. 纯新手,啥都不会.处于瑟瑟发抖的状态. 一.MISC 1.签到题 直接填入题目所给的SYC{ ...

  2. ISCC2016 WriteUp

    日期: 2016-05-01~ 注:隔了好久才发布这篇文章,还有两道Pwn的题没放,过一阵子放上.刚开始做这个题,后来恰巧赶上校内CTF比赛,就把重心放在了那个上面. 这是第一次做类似于CTF的题,在 ...

  3. 参加 Tokyo Westerns / MMA CTF 2nd 2016 经验与感悟 TWCTF 2016 WriteUp

    洒家近期参加了 Tokyo Westerns / MMA CTF 2nd 2016(TWCTF) 比赛,不得不说国际赛的玩法比国内赛更有玩头,有的题给洒家一种一看就知道怎么做,但是做出来还需要洒家拍一 ...

  4. 爱春秋之戏说春秋 Writeup

    爱春秋之戏说春秋 Writeup 第一关 图穷匕见 这一关关键是给了一个图片,将图片下载到本地后,打开以及查看属性均无任何发现,尝试把图片转换为.txt格式.在文本的最后发现这样一串有规律的代码: 形 ...

  5. 《安全智库》:48H急速夺旗大战通关writeup(通关策略)

    作者:ByStudent   题目名字 题目分值 地址 MallBuilder2 350 mall.anquanbao.com.cn MallBuilder1 200 mall.anquanbao.c ...

  6. iscc2016 pwn部分writeup

    一.pwn1 简单的32位栈溢出,定位溢出点后即可写exp gdb-peda$ r Starting program: /usr/iscc/pwn1 C'mon pwn me : AAA%AAsAAB ...

  7. We Chall-Training: Encodings I -Writeup

    MarkdownPad Document html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,ab ...

  8. We Chall-Encodings: URL -Writeup

    MarkdownPad Document html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,ab ...

  9. We Chall-Training: ASCII—Writeup

    MarkdownPad Document html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,ab ...

随机推荐

  1. vue前端静态页面Github Pages线上预览实现

    一.前期准备之项目编译 此处记录如何解决vue2.0 打包之后,打开index.html出现空白页的问题,附上@参考地址 打包之前修改三个文件 第一步,找到build文件,在webpack.prod. ...

  2. sentinel整合dubbo

    <dependency> <groupId>com.alibaba.csp</groupId> <artifactId>sentinel-dubbo-a ...

  3. copy/b一个隐藏文件的小技巧

    首先找一张图片 再放一个我们想隐藏的东西 压缩一下 新建txt文本文件b.txt,输入这段代码 copy/b namei.jpg + a.rar namei2.jpg 保存,将文件名改为b.bat 双 ...

  4. 通过sql 语句将多行数据拼接到一行中

  5. 20190627_解决ADB的device offline问题的两种方法

    故障现象: error: device offline 故障解决: 第一种方法: C:\Users\WXY\Desktop\XY\adb>adb nodaemon server cannot b ...

  6. 初学者值得拥有Hadoop单机模式环境搭建

    单机模式Hadoop环境搭建 Hadoop环境搭建流程图 具体过程 文章目录 单机模式Hadoop环境搭建 Hadoop环境搭建流程图 具体过程 1.搭建准备工作 (1)关闭防火墙 (2)关闭seli ...

  7. PyQt(Python+Qt)学习随笔:containers容器类部件QStackedWidget堆叠窗口属性

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 一.堆叠窗口简介 StackedWidget堆叠窗口部件为一系列窗口部件的堆叠,对应类为QStack ...

  8. 第11.12节 Python元字符“|”支持的正则表达式多选一匹配模式

    re模块支持多个正则表达式使用"|"(逻辑或)模式来组合,扫描目标字符串时, '|' 分隔开的正则表达式组合从左到右进行匹配,只要其中一个匹配成功就认为该组合匹配成功,不再进行组合 ...

  9. PyQt(Python+Qt)学习随笔:QTreeView树形视图的sortingEnabled属性

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 QTreeView树形视图的sortingEnabled属性用于控制视图中的数据是否启用按表头排序, ...

  10. PyQt(Python+Qt)学习随笔:formLayout的layoutLabelAlignment 属性

    一.引言 Qt Designer的表单布局(formLayout)中,layoutLabelAlignment 用于控制表单布局中标签的水平对齐方式(包括垂直和水平方向两个方向).如图: 此属性实际对 ...