从图像二值数据中提取特征的工具

时间:2012-09-12 09:52:39

标签: validation machine-learning file-format feature-extraction fuzzing

我正在开展一个项目,我的图像文件格式错误(模糊不清,即图像数据已被更改)。在各种平台上呈现时,这些文件会导致平台发出警告/崩溃/通过报告。

我正在尝试使用无监督的机器学习来构建一个屏蔽,这将帮助我识别/分类这些图像是否是恶意的。我有这些文件的二进制数据,但我不知道我可以从中识别出哪些featureSet /模式,因为这些图像可能是任何东西。 (我需要能够从二进制数据中找到特征集)

我需要一些关于我可以用来从这个二进制数据中自动提取特征的工具/方法的建议;功能集,我可以使用无监督学习算法,如Kohenen的SOM等。

我是新手,任何帮助都会很棒!

2 个答案:

答案 0 :(得分:2)

我认为这不可行。

问题是这些旧的漏洞利用,对它们的培训不会告诉您有关未来漏洞的更多信息。因为这是一个非常不平衡的问题:没有漏洞使用与另一个漏洞相同的东西。因此,即使您生成多个相同类型的文件,您最终也可能会针对每个漏洞利用相关的单一培训案例。

然而,您需要做的是从文件元数据中提取功能。这是攻击的地方,而不是实际的图像。因此,解析文件已经成为问题所在的领域,并且您的检测工具可能容易受到这种漏洞攻击。

由于数据可能是压缩,因此天真的二进制功能也无法正常工作。

答案 1 :(得分:0)

你可能根本不想查看实际的像素数据,因为腐败最多(几乎可以肯定)在文件头中,它有不同的“块”(png的例子,工作方式不同但是以同样的方式其他格式):

  

http://en.wikipedia.org/wiki/Portable_Network_Graphics#File_header

应该直接选择功能,制作一个程序,从文件中读取所有标题信息,如果信息丢失,并将此信息用作功能。仍然会比不必要的原始图像数据小得多。

哦,总是从简单的算法开始,比如pca和kmeans之类的东西,如果它们失败了,你应该拿出大枪。