buuctf之admin writeup

熟悉的登陆注册页面,结合结合题目admin的提示,想到是通过修改admin用户密码或伪造admin身份的方式来以admin账户。
查看源码,看到了一个hint:

下载下来,是靶场的源码
首先尝试抓包分析,抓取了修改密码的请求包,看到了一串session的密文

因为这里使用了flask框架,所以搜索了一下,发现flask的session不存在加密,并且我在GitHub上面找到了flask的session解码及转码的 脚本(脚本小子上线)

而且在源码中,我们很容易的看到了secret_key

SECRET_KEY = os.environ.get(‘SECRET_KEY’) or ‘ckj123’

于是加上key,修改name为admin

拿到了修改后的session,发包修改密码,登录admin账户,拿到flag

最后附上session解码的脚本
import sys
import zlib
from base64 import b64decode
from flask.sessions import session_json_serializer
from itsdangerous import base64_decode

def decryption(payload):
    payload, sig = payload.rsplit(b‘.‘, 1)
    payload, timestamp = payload.rsplit(b‘.‘, 1)

decompress = False
    if payload.startswith(b‘.‘):
        payload = payload[1:]
        decompress = True

try:
        payload = base64_decode(payload)
    except Exception as e:
        raise Exception(‘Could not base64 decode the payload because of ‘
                         ‘an exception‘)

if decompress:
        try:
            payload = zlib.decompress(payload)
        except Exception as e:
            raise Exception(‘Could not zlib decompress the payload before ‘
                             ‘decoding the payload‘)

return session_json_serializer.loads(payload)

if __name__ == ‘__main__‘:
    print(decryption(sys.argv[1].encode()))
1234567891011121314151617181920212223242526272829303132
以及解码转码的GitHub地址:

https://github.com/noraj/flask-session-cookie-manager
————————————————
版权声明:本文为CSDN博主「XZ_Lang」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_43399979/article/details/100679375

原文地址:https://www.cnblogs.com/ainv-123/p/11602952.html

时间: 2024-08-03 20:03:54

buuctf之admin writeup的相关文章

刷题记录:[De1CTF 2019]Giftbox && Comment

目录 刷题记录:[De1CTF 2019]Giftbox && Comment 一.知识点 1.sql注入 && totp 2.RCE 3.源码泄露 4.敏感文件读取 刷题记录:[De1CTF 2019]Giftbox && Comment 题目复现链接:https://buuoj.cn/challenges 参考链接:De1CTF Web WriteUp BUUCTF平台 web writeup 第三弹 一.知识点 1.sql注入 && t

BUUCTF 不一样的flag writeup

感谢BUUCTF提供的学习平台 https://buuoj.cn 题目:不一样的flag 工具:x64dbg 这是一道内存的迷宫题,迷宫是402000处的字符串 根据经验,这应该(a行*b列)的字符,想快速解题,需要知道是几行几列. 行的确定: 列的确定: shl汇编指令的含义为eax*2n,先将edx的值赋给eax,再将eax的值乘4,最后再加上edx.这里相当于行数*5 这是这一部分的IDA生成的伪码 最后可以确定开头的字符串相当于: *1111 01000 01010 00010 1111

buuctf web write-up

warm up (HCTF2018) 漏洞名称: phpmyadmin 4.8.1 远程文件包含漏洞(CVE-2018-12613) 查看源码,source.php,进去看到源码 <?php highlight_file(__FILE__); class emmm { public static function checkFile(&$page) { $whitelist = ["source"=>"source.php","hint

2016第七季极客大挑战Writeup

第一次接触CTF,只会做杂项和一点点Web题--因为时间比较仓促,写的比较简略.以后再写下工具使用什么的. 纯新手,啥都不会.处于瑟瑟发抖的状态. 一.MISC 1.签到题 直接填入题目所给的SYC{We1c0m3_To_G33k_2O!6} 并且可以知道后边的题的Flag格式为 SYC{} 2.xiao彩蛋 题目提示关注微博,从Syclover Team 博客(http://blog.sycsec.com)可获取到三叶草小组微博,私信发送flag后即可得到. 3.闪的好快 一开始拖进PS分帧数

Redtiger Hackit Writeup

RedTiger's Hackit Level 1 Welcome to level 1 Lets start with a simple injection. Target: Get the login for the user Hornoxe Hint: You really need one? omg -_- Tablename: level1_users 通过http://redtiger.labs.overthewire.org/level1.php?cat=1 and 1=1 发现c

31C3 CTF web关writeup

0x00 背景 31c3 CTF 还是很人性化的,比赛结束了之后还可以玩.看题解做出了当时不会做的题目,写了一个writeup. 英文的题解可以看这:https://github.com/ctfs/write-ups/tree/master/31c3-ctf-2014/web 0x01 pCRAPp 1 PHP is nasty crappy sometimes, just pwn it http://188.40.18.69/ 这题需要好多php技巧组合起来.过关需要这样提交. 1 http:

实验吧web题(26/26)全writeup!超详细:)

#简单的SQL注入 http://www.shiyanbar.com/ctf/1875 1)试着在?id=1,没有错误 2)试着?id=1',出错了,有回显,说明有注入点: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''''' at line 1 3)先预计后台表名为fla

[ctf分享]最新2016华山杯CTF writeup

[技术分享]最新2016华山杯CTF writeup 2016-09-11 13:06:28 来源:安全客-FlappyPig 作者:安全客 阅读:12099次 点赞(3) 收藏(82) 作者:FlappyPig 稿费:700RMB 投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿 2016 华山杯 网络安全技能大赛 解题报告 队伍: FlappyPig  Web渗透 0x01 打不过~ 添加type=”submin”,点击提交抓包 有一串字符串,base64->md5,19

Alictf Writeup

Alictf Writeup Reverse 1.    Ch1 根据题目描述,首先在Ch1.exe文件中搜索Secret.db字符串,如下所示. 之后定位文件创建和数据写入位置,如下所示. 可以看到,写入数据的地址位于esp+30h+var10,而在之前调用了data_handle函数对齐进行了处理,data_handle函数有三个参数,分别是pOutBuffer.pInBuffer.InBufferSize,如下所示. 传入数据如下所示. 处理完后,位于0x28EF3C处的数据如下所示. 可