栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

[HCTF 2018]admin 1学习笔记

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

[HCTF 2018]admin 1学习笔记

之前在云演做ctf题 虽然简单但比较系统 感觉比较适合新手 但也要练一下有点难度的ctf 所以又做了一下buuctf 果然上来就是sql注入 xss注入 发现没什么效果 然后跑去看大佬writeup 真是看一次 学一次 自己也有总结。
做这个题有三种方法 首先非预期解分别为session伪造、弱口令 预期解为Unicode欺骗。
1 首先讲讲session伪造
因为之前做过一段时间的python的flask后台开发 所以对于session跨域还是比较了解的 但对于新手来说 还是有点不好理解的 所谓通俗一点 就是你在这一个窗口打开的多个页面共用一个session 每个页面算一个域 每个session一般存放这个用户的个人信息 但一般是通过加密并且加了salt的 所以这里的问题是 我们怎样将session解码并且修改用户信息改为admin。

这里我们先通过随便创建一个用户 然后再在change password页面看f12的源码 你会发现这整个页面的源码链接 在github上。

然后我们跳转到github上查看源码 进行分析。

由上图可知 我们的session有选项为name,而后面又靠name来查user 以此来判断是否为admin用户 所以我们需要修改name选项的内容为admin。

那现在的问题是我们怎样获取session 又怎样解密修改后再加密传输获取admin权限呢。

1 首先获取session简单 直接f12查看网络分析就可以找到对应的session。
2 然后对session进行解密 需要编写脚本 我能力还不够 所以这里我推荐一个github上的一个大佬的脚本 很好用 以后也可以方便使用。
Flask Session cookie Decoder/Encoder
这个脚本我是放到kali上使用的
首先先解释一下怎样使用 这是一个对flask的session的解密与加密工具 直接下载压缩包到kali上 解压 然后右键从命令行打开。
这个是个python的工具 我使用的是python3
session加密操作

python3 flask_session_cookie_manager3.py encode -s 这里填写salt也就是secret key -t 这里填要加密的密文 

session解密操作

python3 flask_session_cookie_manager3.py decode -s salt也就是secret key -c 要解密的密文 

这里我要讲一下secret key 也就是salt 在flask里 session不仅通过加密算法加密 还需要在加密的密文里加一下用户自定义字符串 就随便生成的字符串 这样可以保证session更加具有安全性 反正黑客窜改信息 因为session一般都保存用户的信息 来进行持续登录 所以我们也需要找一下这个源码的secret key 一般存放在config.py里 如图

可以看到这里的secret 可以为ckj123 使用上面的-s选项里就是cjk123。操作如下

可以看到这里的name后面为1234 也就是我们的用户名 我们要改为admin再加密。

然后我们通过抓包 将里面的session改为我们生成的session就可以得到flag了。

2、接下来是Unidcode欺骗。
这个我也是看了大佬的 自己总结了一下 就是世界上有很多语言 那你用个小语种来写admin进行注册 说不定就可以成功注册了 因为之前不是已经注册过admin了吗 但不知道密码。当然这个方法需要特点环境下使用。
这里同样需要审计源码

这里通过网上搜索可以知道strlower的nodeprep.prepare()是用来将大写字母变为小写 但这有个bug 就如果我们提交ᴬdmin 会变成Admin 这里就可以绕过第一次admin的注册检测。


然后查看源码 发现change password里也用了一次strlow(),然后我们可以通过刚刚的注册后变为Admin 然后再通过change password 将Admin变为admin 然后再修改密码 成功后就会获取flag

3、弱口令
用户admin
密码123
可以通过暴力破解很简单获取。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/267187.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号