我有一个具有文件上传功能的 Django 应用程序。我正在使用 Clamav 扫描文件中的病毒。我也想在我的应用程序中防止 CSV 注入。我找到了与它相关的这个stackoverflow链接,但没有帮助。请建议如何使用 ClamAV 在我的 Django 应用程序中防止 CSV 注入。
问问题
953 次
1 回答
2
查看 CSV Injection 的定义(此链接可在您的 SO 链接中找到) https://www.owasp.org/index.php/CSV_Injection
简而言之:
当使用 Microsoft Excel 或 LibreOffice Calc 等电子表格程序打开 CSV 时,软件会将任何以“=”开头的单元格解释为公式。恶意制作的公式可用于三种关键攻击:
您可以通过以下方式防止这种攻击:
这种攻击很难缓解,而且很多漏洞赏金计划都明确禁止这种攻击。要修复它,请确保没有单元格以以下任何字符开头:
Equals to ("=") Plus ("+") Minus ("-") At ("@")
我不知道如何使用 ClamAV 执行此操作,因为我不使用它,但是您可以编写一个小的 python 函数来读取文件并确保没有单元格以上述任何字符开头。
于 2020-01-03T11:25:14.947 回答