Java 图像Servlet还可以访问其他文件
我想在servlet中显示图像,Java 图像Servlet还可以访问其他文件,java,servlets,Java,Servlets,我想在servlet中显示图像, 有许多复杂的方法,如 首先在数据库中转储图像,然后使用它 最后我发现这很容易。 我使用了这个l 更改了web.xml <servlet> <servlet-name>Image</servlet-name> <servlet-class>com.jsos.image.ImageServlet</servlet-class> <init-param> <param-na
有许多复杂的方法,如
- 首先在数据库中转储图像,然后使用它
我使用了这个l
更改了web.xml
<servlet>
<servlet-name>Image</servlet-name>
<servlet-class>com.jsos.image.ImageServlet</servlet-class>
<init-param>
<param-name>dir</param-name>
<param-value>C:/Users/myName/Desktop/myName/workspace_j2ee/myServlet/WebContent/images</param-value>
</init-param>
<init-param>
<param-name>expires</param-name>
<param-value>86400</param-value>
</init-param>
</servlet>
但问题是,正如我所尝试的,这实际上是一个安全漏洞
/Myservlet/Image?../../src/maJavafiles.java
令我惊讶的是,java文件被下载了。那么,我如何限制用户将这种url放入目录结构中呢?我的意思是,在目录结构中进行升级,以便能够进行这样的更改,您需要访问servlet源代码。既然你不能更改代码,你应该从零开始开发这样的功能,同时考虑到这个安全问题
你可以使用@BalusC之类的工具来解决这个问题,编写你自己的代码。@ScaryWombat我不知道你在说什么,仅供参考,我是一名学生,我是通过这种方式学习的,我可能会告诉你我应该做的事情会对我有所帮助,而不仅仅是……在没有访问你发布链接的jar中的代码的情况下,没有办法知道出了什么问题。它解决的解决方案很琐碎,很容易自己编写。我同意你的观点,但也许这应该是一个评论。谢谢你的链接,我很感激你没有批评,而是帮助了我。@HarendraSingh我不认为你受到了批评。@ScaryWombat而不是“你到底为什么……”你可以说“…不是一个好的编码实践,相反,你应该…或者参考这个链接”,记住Stackoverflow不是为行业天才设计的,这里的许多用户都是初学者。你是说它是一个
安全漏洞,因为它可以读取你的java文件(不应该在web服务器上)-我猜是你在做批评
/Myservlet/Image?../../src/maJavafiles.java