打开靶场,一个登陆界面,试了万能密码,行不通,点进help查看:
此时url:download,猜测是文件下载漏洞
burp抓包看下:
打开help.docx
哦豁,走远了
补充一下java web的目录结构
敏感目录
(1) /WEB-INF/web.xml:Web应用程序配置文件,描述了 servlet 和其他的应用组件配置及命名规则。
(2) /WEB-INF/classes/:含了站点所有用的 class 文件,包括 servlet class 和非servlet class,他们不能包含在 .jar文件中
(3) /WEB-INF/lib/:存放web应用需要的各种JAR文件,放置仅在这个应用中要求使用的jar文件,如数据库驱动jar文件
(4) /WEB-INF/src/:源码目录,按照包名结构放置各个java文件。
(5)/WEB-INF/database.properties:数据库配置文件
WEB-INF/web.xml泄露
漏洞成因:通常一些web应用我们会使用多个web服务器搭配使用,解决其中的一个web服务器的性能缺陷以及做均衡负载的优点和完成一些分层结构的安全策略等。在使用这种架构的时候,由于对静态资源的目录或文件的映射配置不当,可能会引发一些的安全问题,导致web.xml等文件能够被读取。
漏洞检测以及利用方法:通过找到web.xml文件,推断class文件的路径,最后直接class文件,在通过反编译class文件,得到网站源码。
继续burp抓包,访问WEB-INF/web.xml
访问com.Wm.ctf.FlagController(class文件),得到以下加密字符串
ZmxhZ3syZGIyNzkyYS02MmY3LTQxMDYtODU4OS05Zjg3NmMyYzUyODJ9Cg==
base64解密得到flag