记某次CTF中Let me in✨

Posted 新网工李白

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了记某次CTF中Let me in✨相关的知识,希望对你有一定的参考价值。

🙋出题思路

本题考核的是WEB前端加密绕过,该场景在平常的工作中经常遇到,如果不完成解密操作无法进行下一步的测试。解题需要选手使用工具或者脚本实现加密进行爆破和越权,test账户的密码使用AES对称加密,密钥在混淆过的javascript代码中生成固定的密钥,可以实现该加密过程对登录进行爆破,也可以使用Burpsuite的插件进行加密爆破,如AESKiller、Crypto Messages Handler等,为了防止大家没有该弱口令,在robots.txt中预留了字典目录,但是该字典需要去重,你学会了吗?

💁解题技巧

访问题目发现这有flag ,提交了flag不正确。题目肯定不会是真没谁水的。(狗头)

上kali扫描目录,用 dirsearch就是干

发现敏感文件robots.txt 访问 robots.txt,我日有密码字典ddddddddddddddd_password.txt,心想这他妈不久好办了嘛,肯定爆破



字典有重复,需要去重cat passwd.txt | sort -u,去重结果只剩 203 个不重复的密码。


访问/Server 发现登陆页面,输入 admin/admin 直接丢进BP


大事不妙发现密码做了加密处理,F12 分析 js,发现 AES 加密特征。


对称加密需要密钥,分析代码发现生成密钥函数为 confusion,动态调试获取密钥为3602879701896397,加密模式为 ECB。

拿到密钥,使用 burp 插件 AESKiller 配置密钥。


启动插件之后,重新抓包,会拿到一个修改过的数据包

发送到 intruder 模块,开始爆破,有了密码,加载一个用户名字典一起跑


用户名为 test,密码为 123987,登录成功之后发现一个查询页面。

输入 test 抓包

发现加密参数,直接使用插件的解密功能解密。

修改 userid 和 username 为 admin

使用修改的参数查询,拿到 flag 为

flag{876fedc30e062a4667d2df26f75003cb}

👬 涉及的工具

  • 后台扫描工具dirsearch或者御剑
  • BP爆破
  • burp 插件 AESKiller 加密爆破

📧 总结

  • 扫后台发现敏感文件
  • 密码爆破
  • 对javascript代码中生成固定的密钥使用Burpsuite的插件进行加密爆破
  • 这题的难度就在js代码生成的密钥函数 confusion、发现加密模式为 ECB,只要会加密爆破有了突破口

以上是关于记某次CTF中Let me in✨的主要内容,如果未能解决你的问题,请参考以下文章

记某次CTF的图片隐写题✨

记某次CTF的图片隐写题✨

记某次CTF中经典组合拳

记某次CTF中经典组合拳

WEB|[De1CTF 2019]SSRF Me

如何理解 if let 与guard