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