tomcat 如何禁止下载 jsp 源码 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
FONG2
V2EX    Java

tomcat 如何禁止下载 jsp 源码

  •  
  •   FONG2 2022-02-17 12:44:00 +08:00 via iPhone 4423 次点击
    这是一个创建于 1345 天前的主题,其中的信息可能已经有所发展或是发生改变。

    tomcat 服务器 webapps 目录下有 xx.jsp 文件 通过访问 http://127.0.0.1:8080/xx.jsp/ (注意最后一个斜杠) 浏览器会弹出下载,保存文件后发现下载回来的是 jsp 源文件,即未编译版本,能看到 java 代码的。

    curl 'http://127.0.0.1:8080/xx.jsp/' 情况也一致 排除缓存/p>

    尝试过增加 filter 拦截,但是发现这个是 defaultServlet 行为,这属于最外层,代码无法干预

    涉及 jsp 页面有点多,全部挪到 web-inf 工作量有点大,现在护网也不能这样操作

    目前唯一的思路是加 ng ,在 ng 层面重写 url

    不知道大家有没有别的思路

    其实源码也没啥敏感信息,但是他扫出来就非要整改

    第 1 条附言    2022-02-17 18:45:24 +08:00
    之前 nginx 被缓存误导了

    最新结论,与 tomcat 无关,是 springmvc5.03 导致的,单独放一个 jsp 的 tomcat 没问题,打包 spring 的 war 部署就有问题,我在应用加了个 filter 解决

    具体原因暂未清楚,debug 进去太多层了
    24 条回复    2022-02-18 14:45:57 +08:00
    ysc3839
        1
    ysc3839  
       2022-02-17 12:46:36 +08:00 via Android
    请发完整的 nginx 配置
    FONG2
        2
    FONG2  
    OP
       2022-02-17 13:01:13 +08:00 via iPhone
    @ysc3839 不涉及 ng…纯 tomcat 环境的问题
    est
        3
    est  
       2022-02-17 13:07:35 +08:00
    我。。。。缓缓的打出一个问号

    run2
        4
    run2  
       2022-02-17 13:11:45 +08:00
    Java 被黑的最惨的一次
    yunhui
        5
    yunhui  
       2022-02-17 13:23:20 +08:00
    tomcat 被黑的最惨的一次
    boolgosuny
        6
    boolgosuny  
       2022-02-17 13:26:01 +08:00
    你上周问了同个问题,还没解决?
    dcsuibian
        7
    dcsuibian  
       2022-02-17 13:31:47 +08:00
    这不是 tomcat 的默认行为吧,肯定是配置错了。

    如无必要,勿增实体。有 bug 就去找原因。上 ng 掩盖只会搞得越来越复杂。
    ktqFDx9m2Bvfq3y4
        8
    ktqFDx9m2Bvfq3y4  
       2022-02-17 13:31:57 +08:00 via iPhone
    想要的源码下不到,能下的源码用不着。

    好尴尬啊。
    INTOX8O
        9
    INTOX8O  
       2022-02-17 13:35:28 +08:00
    https://issues.redhat.com/browse/WFLY-4595?attachmentSortBy=dateTime 这里有和你类似的问题解决办法是升级新版本 undertow ,你可以更新新版本 tomcat 试试
    sutra
        10
    sutra  
       2022-02-17 13:39:02 +08:00
    在目前已知的问题状态下,这不可能发生。
    beipiao
        11
    beipiao  
       2022-02-17 13:45:21 +08:00
    我怀疑你上传了源码,需要部署编译后的代码
    INTOX8O
        12
    INTOX8O  
       2022-02-17 13:46:48 +08:00
    @wsfmzq 根据这个 issue 描述这个在 8.1.0.Final, 8.2.0.Final, 9.0.0.CR1 下的 undertow 属于 bug ,可能 tomcat 也有相同情况?
    adoal
        13
    adoal  
       2022-02-17 14:33:09 +08:00
    我记得好多天以前在 v2 看到有人问类似问题……
    adoal
        14
    adoal  
       2022-02-17 14:34:51 +08:00
    哦不对,那个是 tomcat 正常,套了个 nginx 就不对。

    这个看起来像是特定 tomcat 版本的 bug 。
    krixaar
        15
    krixaar  
       2022-02-17 14:56:40 +08:00
    @adoal #13 几天前就是楼主问的
    bzw875
        16
    bzw875  
       2022-02-17 15:15:39 +08:00
    贴出 web.xml 看看啊,试一下<url-pattern>/*</url-pattern>把 /*改成 /
    retanoj
        17
    retanoj  
       2022-02-17 15:43:43 +08:00
    LZ 又消失了。我记得之前也看到过帖子,现在是定位到只过 tomcat 也有问题了吗?

    那就贴下路由配置呗
    nba2k9
        18
    nba2k9  
       2022-02-17 15:45:45 +08:00
    你把 url 发出来我们看看具体能下到什么 jsp 文件,这样才能帮你解决问题嘛
    tabris17
        19
    tabris17  
       2022-02-17 16:21:46 +08:00
    我记得好像似乎不允许使用妹子头像吧
    Bisyfish
        20
    Bisyfish  
       2022-02-17 16:39:15 +08:00
    nginx 开了 autoindex?
    itechify
        21
    itechify  
    PRO
       2022-02-17 17:07:05 +08:00
    原帖不是说关了 tomcat 还能下载吗?
    hcocoa
        22
    hcocoa  
       2022-02-17 18:01:18 +08:00
    去官网下个干净的 tomcat 解压,配置文件也不要直接复制而是手动修改,重新部署一下试试
    xohome
        23
    xohome  
       2022-02-17 18:14:04 +08:00
    你是不是把 jsp 文件放到工程根目录了? WEB-INF 下的文件才无法访问。
    sprite82
        24
    sprite82  
       2022-02-18 14:45:57 +08:00
    你这放工程根目录就当作是静态资源了,把 jsp 后缀的当作 controller 请求拦截掉
    <servlet-mapping>
    <servlet-name>springmvc</servlet-name>
    <url-pattern>*.jsp</url-pattern>
    </servlet-mapping>
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     910 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 19:47 PVG 03:47 LAX 12:47 JFK 15:47
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86