python PyPDF2在打开不安全的文件时会采取什么安全措施吗?

sd2nnvve  于 2022-12-21  发布在  Python
关注(0)|答案(3)|浏览(108)

我想用PyPDF2(sourcedocs),但首先要确保它可以安全使用。我在它的文档中找不到任何东西。我想用它来确保上传的文件是有效的PDF。用户是经过验证的,但我担心他们仍然能够在不知不觉中上传一些不安全的东西。PyPDF2有什么办法能够告诉,即使它是PDF,它是不安全的吗?

x3naxklr

x3naxklr1#

PyPDF 2有什么办法能够告诉,即使它是一个PDF,它是不安全的?
不会,因为PyPDF 2不包含任何安全扫描功能。任何对您的系统有害的内容可能会,也可能不会通过PyPDF,并继续对您的系统构成危险,这取决于您采取了哪些其他预防措施。
正如jpmc 26所说,PyPDF只是一个解析器/生成器,因此PDF的内容不太可能对PyPDF本身构成安全威胁。

anhgbhbe

anhgbhbe2#

如果你担心pdf文件的有效性,如果你试图用PyPDF 2操作一个无效的pdf文件,那么它很可能会返回一个错误。至于检查pdf文件的内容,库本身并不这样做,但是你可以编写一些方法来检查内容中的特定模式,分析流,并找到其他方法来检查它自己。最好的方法开始将是创建一个无效的pdf自己,并找到什么东西,你会想要寻找。它也有一些密码验证,虽然我还没有真正地处理过这个库的那部分,但如果你能学会如何有效地使用它,PyPDF 2是一个非常强大的工具!

h7appiyu

h7appiyu3#

PyPDF 2并不执行PDF的一部分,它只是解析它。
可能发生的坏事:

  • 无限循环
  • 解析速度慢,例如由于二次运行时间

每当我们注意到这些问题时,我们都会努力解决它们。
另一个主题当然是供应链漏洞。PyPDF 2是PyPI上排名前1%的软件包之一,因此维护人员需要使用安全密钥。我检查了所有的PR,我不会允许任何允许从PDF本身执行代码/打开网络连接/看起来可疑的东西。
FYI:我是PyPDF 2的当前维护者。

相关问题