WP篇 某网杯WEBAWD踩坑

某网杯

  • 事件回顾
    • 赛题
    • 环境
    • 木马
    • 访问JSP显示空白
    • Ubuntu与Mysql问题
    • 框架选择
    • idea

事件回顾

虽然没有参与本次AWD,但是看到另外一只队伍down下来的文件,我还是忍不住心动了,于是决定复现一番,因为某些原因,详细的wp和复现的环境就不公开了。这篇文章主要介绍一下本次比赛和个人复现中所踩的坑。

赛题

本次线下AWD共5道题,3道web(easyCMS、authSite、bookshop),2道pwn(不记得了)
web全是java的题目,虽然存在简单的漏洞,但是全出java赛题在AWD赛的历史上还是独树一帜的(可能我的见识比较狭隘)。

题目 题设漏洞
easyCMS 4个
authSite 3个
bookshop 5个

总体而言,authSite的难度是最高的,它的3个预设漏洞都是需要靠代码审计和丰富的CTF经验才能发现的。对于这场比赛的结果,我的评价是:“WC,全是高手,他们的技术能力一定很强”。

环境

经过了一番学习(半个月),我复现了以上全部漏洞。这次复现让我对tomcat+java+mysql+ubuntu的结构有了进一步的认识。下面就简单谈一下tomcat建站中所遇到的坑,以供大家参考学习。

木马

Javaweb三大组件是:Servlet,Filter,Listener。在这三类组件中都有可能存在木马,使用审计工具或jsp脚本(例:VCG、memshell scanner)可以发现一部分,但是如果隐藏起来了,那就不好说了,比如说下面这个马:

bookshop中出现了一个网上公开的混淆马JSPHorse(github),其加密方式较为复杂,大家自行参考这篇文章学习吧:浅谈JSP Webshell进阶免杀
为了寻找该马的利用参数,我制作了一个python脚本对凯撒进行爆破,爆破结果略有瑕疵,不过勉强算是可以猜测利用了。
WP篇 某网杯WEBAWD踩坑_第1张图片WP篇 某网杯WEBAWD踩坑_第2张图片队友down下来了的cart_end.jsp就是该混淆马。pwd是明文,利用方式如下:cart_end.jsp?pwd=7ef14f12&C0nCmd=cat%20/flag

访问JSP显示空白

easycms是OFCMSv1.1.3的框架,但是其中有个jfinal过滤设置对于我这种java开发小白来说还是比较为难的,不过也算解决了——在web.xml属性设置为 " /* ",那么就会导致你的JSP页面无法被访问,只会显示一片空白。
修改为下图就可以了,当然,这种方式较为暴力,会导致网站其他目录无法访问,想要深究其因的小伙伴可以自行学习jfinal,我这里就点到为止了。
WP篇 某网杯WEBAWD踩坑_第3张图片

Ubuntu与Mysql问题

ubuntu20版本不支持mysql5,这会导致easycms中的OFCMS在Install界面报大整数不支持的错误,所以可以将ubuntu更换为18版本,该版本支持mysql5.7。

框架选择

推荐:
idea任意版本
apache-tomcat-8.5.93
mysql5.7
ubuntu18
java1.8
用idea启网站,然后关掉idea,直接操作tomcat的webapps目录——可以节省idea刷新网站总是要重新部署的时间。

idea

这个问题主要集中在org.apache…的依赖不存在上,其实是idea的使用习惯问题,如下图,选择java,然后从/usr/local/“tomcat目录”/lib导入就行,初学的小伙伴搜索“IDEA导入tomcat的jar包”就能解决。
WP篇 某网杯WEBAWD踩坑_第4张图片

你可能感兴趣的:(wp篇,java,tomcat,intellij-idea)