【问题标题】:Is it possible to attack a server by uploading / through uploaded files?是否可以通过上传/通过上传的文件来攻击服务器?
【发布时间】:2013-10-22 07:06:32
【问题描述】:

标题实际上说明了问题。在你误会我之前,我不想知道如何做到这一点,但我可以如何防止它。

我想写一个文件上传器(用 Java 和 JPA 和 MySQL 数据库)。由于我还不能 100% 确定内部管理,因此有可能在某些时候文件可以在内部执行/打开。

因此,我很高兴知道,攻击者可以通过上传任何类型的文件(可能是媒体文件、二进制文件或其他文件)来损害、感染或操纵我的系统。

例如:

  • 文件名中的特殊字符怎么办?
  • 如何处理 EXIF 等元数据?
  • MP3 文件中的“嵌入式病毒”怎么样?

我希望这不是太含糊,我很高兴阅读您的提示和提示。

最好的问候,
堆叠的

【问题讨论】:

  • 我也很感激相关文献的提示!
  • 是的。它被称为denial-of-service attack。特别糟糕的是distributed denial-of-services attacks
  • 是的,我知道 DDoS,但这是每个服务器都可能发生的普遍问题,无论它是否有文件上传器。
  • @Stacky 不幸的是,您能做的最多就是确保您永远不会在系统上保存具有可执行权限的可执行文件。除了在服务器上运行某种防病毒程序扫描所有上传的文件之外,您几乎无法检查文件是否有病毒(出于多种原因,我不喜欢在服务器上运行防病毒程序)跨度>
  • 限制上传器支持的文件大小和 mime 类型是一个开始。

标签: java mysql jpa upload


【解决方案1】:

它确实非常特定于应用程序。如果您使用的是像 phpBB 这样的特定 Web 应用程序,那么安全需求与运行新闻组时完全不同。如果您需要量身定制的安全建议,则需要根据您正在执行的操作的上下文来搜索它们。它的范围可以从清理输入到限制上传大小和格式。

例如,MP3 文件病毒可能只对少数特定的 MP3 播放器起作用。不是所有的。

无论如何,如果您希望广泛覆盖病毒,请使用病毒扫描程序扫描文件,但这可能无法保护您免受脚本注入之类的攻击。

【讨论】:

  • 很公平,但是很多人也习惯在他们的 PC 上播放 MP3 文件... ;-)
  • 从未听说过 MP3 文件病毒,但肯定有可能是 特定 播放器存在允许攻击的错误(可能是某种缓冲区溢出)。当然,它仅限于那个一个播放器(或库),所以只需选择另一个播放器。
  • 好吧,我不久前在电视新闻杂志上看到过有关该主题的报道。不幸的是,我找不到类似的东西,但关于图像,我发现了这个:intego.com/mac-security-blog/…
【解决方案2】:

如果您的服务器没有做某事天生愚蠢,那么应该没有问题。但是……

由于我还不能 100% 确定内部管理,因此文件有可能在某些时候在内部执行/打开。

...这本身就是愚蠢的。您必须确保不会意外执行上传的文件(上传目录的权限是起点,将上传限制到特定目录等)。

除了执行之外,如果服务器尝试任何特定于文件类型的处理(例如,制作图像的缩略图),则处理总是有可能通过缓冲区溢出漏洞攻击(尽管这些针对每种类型的软件/库都是特定的) )。

只存储/提供文件的纯文件服务器(例如 FTP)被保存(当没有其他漏洞时)。

【讨论】:

  • 说“还没有 100% 确定”,我不是说,我不知道,我在做什么,而是我还没有对网站,它将使用该服务器上的文件,因为我不想“简单地存储”它们。所有这些当然会影响服务器将(必须)对每个文件执行的操作(即加密、转换、在后台使用等)。但我感谢您清晰的关注和警告,所以谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-04-04
  • 1970-01-01
  • 2010-09-05
  • 2016-07-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多