unicode欺骗—— hctf - admin

查看源代码,发现

提示要以管理员身份登陆

尝试注册管理员账号,提示The username has been registered

于是尝试随便注册一个账号,发现注册成功,并能够登陆

根据页面提示,猜测是通过更改admin账号的密码获取flagunicode欺骗—— hctf - admin_第1张图片

 

于是进入change password界面,读取源码

发现提示

进入之后是这个网页的源码,通过观察发现代码中重新定义并使用了strlow函数

 并且运用了nodeprep.prepare函数

百度之后发现这个函数存在unicode欺骗漏洞,会将ᴬ转换成A,再将A转换成a

于是注册ᴬdmin账号,进行登陆并改密码,就获取了管理员密码

最后登陆得到flag

flag{d4dcfaad-eaca-4976-a9a7-e79c69f21c74}

 

注:此题还有其他解法,一题多解,参考

https://www.jianshu.com/p/f92311564ad0

https://www.anquanke.com/post/id/164086

你可能感兴趣的:(unicode欺骗—— hctf - admin)