我正在尝试用Python创建一个病毒扫描程序,我知道基于签名的检测是可能的,但是在Python中可以进行基于启发式的检测,即。在安全的环境中运行程序,或扫描程序的代码,或检查程序的行为,然后确定程序是否是病毒。
答案 0 :(得分:2)
是的,这是可能的。
...和...
不,它可能不是完成任务的最简单,最快速,最佳效果或最有效的方法。
答案 1 :(得分:2)
嗯,确定有可能。 Python是图灵完备的,所以你可以使用它来达到与使用其他编程语言(如C ++)相同的目的。你当然可以毫不费力地在Python中进行原始的基于签名或代码检查的检查。所以这个问题的答案是肯定的。
现在提出更深层次的问题:你是否在问这个工作是否是一个好的工具?我不这么认为,主要是因为Python Code is Hard to Obscure,这意味着如果你在Python中开发一种反病毒,那么当你把它交给其他人时它会变弱。这是因为病毒开发人员会发现很容易检查你的反病毒引擎,因为你无法掩盖你的python代码。这意味着他们可以轻松地在您的病毒扫描程序中找到漏洞。
事实上,良好的反病毒的关键组成部分之一是尽可能难以进行逆向工程,因此病毒开发人员无法弄清楚反病毒引擎的弱点是什么。任何用python编写的东西通常都很容易进行逆向工程,所以它不能用于真正的保护。
答案 2 :(得分:2)
Python被描述为通用编程语言,所以是的,这是绝对可能的,但不一定是最好的实现。在编程中,就像交易一样,你应该使用最好的工具来完成工作。
可以建议使用Python和Clamd对您的应用程序进行原型设计,然后考虑转移到另一种语言,如果您需要一个闭源解决方案,您可以出售并保护您的知识产权。
Newb引用:
任何用python编写的东西通常都很容易 逆向工程,所以它不会做真正的保护。
我不同意,实际上很多,但我认为这是有争议的。我真的要看开发人员如何打包应用程序。