<分区>
我为网络托管服务商工作,我的工作是查找和清理被黑帐户。我找到 90% 的 shell\malware\injections 的方法是寻找“不合适的”文件。例如,eval(base64_decode(.......))
,其中“.....
”是一大堆 base64 编码的文本通常永远不会好。当我 grep 通过文件查找关键字符串时,看起来很奇怪的文件突然出现。
如果这些文件突然出现在我面前,我相信我可以在 python 中构建某种分析器来查找统计上“不合适”的东西,并将它们标记为人工审查。首先,我想我可以比较包含关键字符串的 php 文件中的行的长度(eval
、base64_decode
、exec
、gunzip
、gzinflate
、fwrite
、preg_replace
等)并寻找偏离平均值 2 个标准差的线。
行长变化很大,我不确定这是否是一个很好的统计数据。另一种方法是将加权规则分配给白痴事物(线长超过或低于阈值 = X 点,包含单词上传 = Y 点)但我不确定我实际上可以用分数做什么或如何给每个分数打分属性。我的统计数据有点生疏。
谁能为我指出正确的统计分析方向(指南、教程、库)?