16.[HCTF 2018]admin
首先打开界面,有登录和注册,查看源代码没发现啥,直接注册个帐号登录看看,查看源代码。有条提示,不是admin,说明应该是需要admin登录显示flag

登录界面

登陆后发现有post、改密码几个界面,进入改密码界面查看源代码,发现给出源码地址


直接下载源码看看。虽然还看不懂啥。这里看了下wp,发现修改密码重定义了strlower函数,使用nodeprep.prepare进行转换,ADMIN-ADMIN-admin,意思就是修改ADMIN就等于修改了admin,刚开始思路也有看看能不能修改掉admin的密码。

2.session伪造
过程:首先注册一个帐号admin1,然后登录抓包,获取cookie,利用flask_session_cookie_manager解码。然后再利用解码字符串修改掉name为admin,然后在编码。这个过程有个问题就是解码编码需要密钥,所以我们在config配置文件找到密钥。

直接先抓包


把编码后的cookie替换就以admin用户登录了。

网友评论