java - 签名恶意软件检测

标签 java security signature malware

<分区>

我正在编写基于签名扫描的恶意软件检测。据我了解,主要思想是将扫描文件的签名与黑名单中的签名进行比较。 Here我发现签名是某种 MD5 哈希值,但如何从文件中获取它?还有其他类型的签名吗?

最佳答案

MD5 哈希是文件内容的摘要。如果您有 MD5 哈希的黑名单,是的,您可以将文件与它们进行比较。我认为这将代表一种非常简单和脆弱的扫描恶意软件的方式,但这绝对是一个开始。这将是脆弱的,因为比较 MD5 哈希值只能识别两个文件完全相同的情况。恶意文件中引入的任何随机性都会使这种扫描方法失效。

大多数语言都有一些标准的方法来生成 MD5 哈希。 C#、VB 和 VC++ 可以使用 MD5类,PHP 有 hash函数(使用“MD5”作为第一个参数),在 Java 中你有 MessageDigest

还有许多其他可用的 hashing algorithms可用于此目的。 MD5 已被证明对于某些应用程序是缺乏的,因此 SHA 算法正成为这些应用程序的标准。对于此应用程序,您不会期望恶意攻击会尝试创建匹配,而是与尝试阻止匹配相反,任何散列标准算法(包括 MD5)都应该足以合理地确保不会出现误报被看见。

关于java - 签名恶意软件检测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13071139/

相关文章:

java - 有人能告诉我这段代码(Java)发生了什么吗?

php - 如何防止 PHP 中的 SQL 注入(inject)?

java - Alloy:一个紧凑的 Java 程序,用于执行不同的运行命令范围

java - JTree - 如何将背景设置为节点

java - 如何在 JNA 中传递包含原始类型数组的结构?

ruby-on-rails - 如何保护 Rails 应用程序免受 Firesheep 攻击?

node.js - Zoho 订阅验证 Webhook 签名 NodeJS

c++ - 在没有标题的c++ dll中调用函数

java - 如何在android中停止jsonParser.makeHttpRequest

java - 请求通过 https 加密?