gpt4 book ai didi

java - Java中如何限制恶意和垃圾文件上传?

转载 作者:行者123 更新时间:2023-12-02 00:59:01 27 4
gpt4 key购买 nike

大家好,我在我的应用程序中使用 Angular 5 和 Java 8。从前端上传文件时,我想使用 Java 限制恶意或垃圾文件上传到我的数据库中。请帮助我。

最佳答案

除非不接受上传的文件,否则没有确定的方法可以做到这一点。

好吧,话虽如此,:),确实需要接受上传的文件。在这种情况下,需要关注两个主要问题:

  1. 确保服务器安全,避免受到威胁
  2. 确保使用应用程序的用户免受威胁

为了使服务器免受损害,尽可能(通过设计)不接受服务器内部使用的文件上传,例如CSV格式的数据,XML配置....而是尝试提供一个UI来获取数据(当然CSV数据不能从UI中获取)

如果您必须获取上传的文件并且不需要在服务器上使用它,请使用 Base64(或其他编码)并将其保留;y 进行解码并提供服务。这当然并不能阻止用户因恶意工程文件而受到损害。

为此,首先您需要知道它是什么类型的文件,使用内容检测器,例如like Apache Tika 。但是,首先您需要通过仅接受某些类型的文件来限制攻击面(尝试将其限制为尽可能小的集合)。收到文件后,尝试检测其内容。根据实践,如果无法检测到内容,则应拒绝该文件。

一旦检测到内容,进一步的分析和对策取决于格式(不同的格式具有与其访问的流行应用程序相关的不同漏洞),一个典型的例子是 CSV Injection .

最后一点,上述机制的实现、更新和维护确实需要非常大的投入,安全并不是免费的。

务必对因妥协造成的损失与安全机制的成本进行成本效益分析。

作为一般原则,适当的安全级别需要用于适当的 Assets 值(value)。

关于java - Java中如何限制恶意和垃圾文件上传?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60944903/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com