您当前的位置: 首页 >  Java

姜小孩.

暂无认证

  • 4浏览

    0关注

    51博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

[RoarCTF 2019]Easy Java

姜小孩. 发布时间:2022-05-06 19:57:18 ,浏览量:4

目录

[RoarCTF 2019]Easy Java

WEB-INF/web.xml泄露:

漏洞成因:

漏洞检测以及利用方法:

[RoarCTF 2019]Easy Java

打开这个题看到了一个登录框,弱口令碰个运气没进去我就点了help,看到了个help.docx,访问一下下载下来他说

Are you sure the flag is here? ? ?

我一下觉得这个题是misc。。。。然后看了看WP

之前看到的java语句

java.io.FileNotFoundException:{help.docx}
java项目内部的异常能回显至客户端,侧面说明对于客户端,java项目里的各个文件是暴露的

GET方式访问

?filename=/WEB-INF/

继续回显给我们java.io.FileNotFoundException:{/WEB-INF/}

hackbar用POST访问/WEB-INF/web.xml可以下载web.xml,然后我们可以看到

那我们就去看看

filename=WEB-INF/classes/com/wm/ctf/FlagController.class

这是base64加密后的flag,解密一下就行了

WEB-INF/web.xml泄露:

java项目中有关web的相关信息: WEB-INF是Java的WEB应用的安全目录。所谓安全就是客户端无法访问,只有服务端可以访问的目录。如果想在页面中直接访问其中的文件,必须通过web.xml文件对要访问的文件进行相应映射才能访问WEB-INF主要包含一下文件或目录:

目录作用/WEB-INF/web.xmlWeb应用程序配置文件,描述了servlet和其他的应用组件配置及命名规则/WEB-INF/classes/含了站点所有用的class文件和运行所必须的配置文件,包括servlet class和非servlet class,他们不能包含在.jar文件中/WEB-INF/lib/存放web应用需要的各种jar文件,放置仅在这个应用中要求使用的jar文件,如数据库驱动jar文件/WEB-INF/src/源码目录,按照包名结构放置各个java文件/WEB-INF/database.properties数据库配置文件 漏洞成因:

通常一些web应用我们会使用多个web服务器搭配使用,以此来解决只用一台web服务器性能不够的缺陷,在使用这种架构的时候,由于对静态资源的目录或文件的映射配置不当,可能会引发一些安全问题导致任意文件读取

漏洞检测以及利用方法:

通过找到web.xml文件,推断class文件的路径,最后直接class文件,在通过反编译class文件,得到网站源码。

一般情况,jsp引擎默认都是禁止访问WEB-INF目录的

Nginx不会去考虑配置其他类型引擎(Nginx不是jsp引擎)导致的安全问题而引入到自身的安全规范中来(这样耦合性太高了),修改Nginx配置文件禁止访问WEB-INF目录就好了: location ~ ^/WEB-INF/* { deny all; } 或者return 404; 或者其他!

关注
打赏
1652274937
查看更多评论
立即登录/注册

微信扫码登录

0.0458s