0%

2025NepCTF|WEB

前言:

刚打完hvv就碰上这个比赛了,累的我根本不想看题目,一共就看了1个小时的题。最后一天的时候9分钟做了三题,做第四题的时候刚找到点就结束了。感觉难度中等还是挺不错的。

JavaSeri

描述:路由带上login.jsp

考点:shiro反序列化

打开界面一眼shiro(太幽默了)

直接拿工具一把梭

上马(其实这里直接执行env也行,flag在环境变量里)

哥斯拉连接

env拿flag

RevengeGooGooVVVY

描述:稍微模拟一下real环境。题目不出网,没有给出完整jar,请根据题目环境和信息思考附件关联性并进行进一步探索。 有人指示我来复仇了 好想成为人类🐧🐧🐧好想成为人类🐧🐧🐧好想成为人类🐧🐧🐧好想成为人类🐧🐧🐧好想成为人类🐧🐧🐧好想成为人类🐧🐧🐧好想成为人类🐧🐧🐧好想成为人类🐧🐧🐧好想成为人类🐧🐧🐧好想成为人类🐧🐧🐧

考点:Groovy命令注入

直接网上搜payload直接Java沙盒绕过执行

1
java.lang.Math.class.forName("java.lang.Runtime").getRuntime().exec("env").getText()

easyGooGooVVVY

描述:高松灯是一名java安全初学者,最近她在看groovy表达式注入。。。

考点:Groovy命令注入

先打的复仇再打基础的,直接一样的payload执行

1
java.lang.Math.class.forName("java.lang.Runtime").getRuntime().exec("env").getText()

safe_bank

描述:欢迎来到全世界最安全的银行系统!我们采用了最先进的安保系统来保护您的账户。但最近有传言说,即使是最安全的系统也可能存在漏洞。你能绕过我们的安全措施,进入金库获取宝藏吗?

考点:

刚进去发现可以注册,随便注册一个号登录看看

发现需要管理员才能访问保险库,退出尝试爆破admin用户密码,但是没爆破出来

查看关于发现可能存在cookie伪造

重新登录普通用户,base64解码cookie

接着篡改用户名为admin并且重新加密

用篡改后的cookie访问/panel成功登录admin用户

查看保险库得到fake flag

重新查看关于,发现是flask框架,那么应该有可能存在SSTI注入

找了半天注入点,最后发现应该是在用户名那,但是存在黑名单

1
2
3
{"py/object":"__main__.Session","meta": {"user":“(%print(7*7)%“ts': 1753612931}}

eyJweS9vYmplY3QiOiJfX21haW5fXy5TZXNzaW9uIiwibWV0YSI6IHsidXNlciI64oCcKCVwcmludCg3KjcpJeKAnHRzJzogMTc1MzYxMjkzMX19

当时打到这里比赛就结束了,唉。。。