| |
|
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
| -> Python知识库 -> [HCTF 2018]admin 1 -> 正文阅读 |
|
|
[Python知识库][HCTF 2018]admin 1 |
先注册一个账号,然后登录进入chang_password页面看源代码,里面给了我们一个网址,进去下载一下 一、flask session伪造了解flask session伪造在传统PHP开发中,$_SESSION变量的内容默认会被保存在服务端的一个文件中,通过一个叫“PHPSESSID”的Cookie来区分用户。这类session是“服务端session”,用户看到的只是session的名称(一个随机字符串),其内容保存在服务端。 而flask中session是存储在客户端cookie中的,也就是存储在本地。flask仅仅对数据进行了签名。众所周知的是,签名的作用是防篡改,而无法防止被读取。而flask并没有提供加密操作,所以其session的全部内容都是可以在客户端读取的,
想要细致了解的可要参考目录下的链接中看。 解题步骤:我们登录的完可看到自己的session
有效期+用户的id,我们只要登录了就会自带,重点是这个私钥,而这个私钥,它在config.py中告诉我们了“ckj123”。这个私钥我感觉有点类似身份证号,不管你人名字怎么改,身份证号码变不了。 而在index.html中已经告诉我们只有session[‘name’] == 'admin’时才能拿到flag,所以我们就把解密后的name值改为admin呗,最后带上SECRET_KEY在加密一下呗
利用加密脚本和源码中给的SECRET_KEY加密一下即可
把我们利用SECRET_key加密生成的session带入,可以抓包改值。 二、Unicode欺骗路由中有一个strlower函数,是用来改字母小写,并且登录,注册改密码中都有此函数
问题在nodeprep.prepare函数,在requirements.txt文件中发现Twisted==10.2.0,而最新版本要远大于他,所以应该会有漏洞,我们测一下有什么区别。
参考:p师傅的客户端 session 导致的安全问题 |
|
|
|
|
| 上一篇文章 下一篇文章 查看所有文章 |
|
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
| 360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年12日历 | -2025/12/4 5:45:55- |
|
| 网站联系: qq:121756557 email:121756557@qq.com IT数码 |