设想要是你的网站被黑客攻击,攻击者遗留下了1个隐藏的后门,你真的能查出来吗?面对1个
拥有数百万代码行的大中型应用系统,不可能手动检查每个文件中的每个代码。即便 是一个Web
shell检查率98.9%的检查模块,也有可能仍旧有Webshell后门。除此之外,常见的黑帽SEO技术
,如暗链、网页劫持、页面跳转等,也很难通过人工检查或软件检查来识别。最合适的办法是做
文件一致性验证。通过与原始代码的对比,能够快速找出文件是否被篡改,在哪里被篡改。当然
,第一个前提是你的团队有能力管理代码版本。如果你是个人站长,相信你已经备份了原代码
。本文介绍了几种验证文件一致性的办法,能够帮助你找出代码中所有隐藏的后门。
杀死软件时,我们可以注意到下载的压缩包中有一个exe可执行文件和1个文件md5值。这是软件
作者发布软件时用md5算法计算出的exe文件的“矩阵的特征值”。当使用者下载应用时,能够使
用同样的检查优化算法来计算下载的exe文件的矩阵的特征值,并与软件开发人员发布的矩阵的
特征值进行对比。假如2个矩阵的特征值同样,则以为下载的exe文件是准确的。假如2个矩阵的
特征值不同,则以为下载的exe文件已经被篡改。同样的,我们可以一次性计算出所有网站文件
的哈希值并保存。在紧急情况下,我们可以重新计算一次哈希值,并将其与上次保存的哈希值
进行对比,从而输出1个新创建、修改和删除的文件列表。
作者发布软件时用md5算法计算出的exe文件的“矩阵的特征值”。当使用者下载应用时,能够使
用同样的检查优化算法来计算下载的exe文件的矩阵的特征值,并与软件开发人员发布的矩阵的
特征值进行对比。假如2个矩阵的特征值同样,则以为下载的exe文件是准确的。假如2个矩阵的
特征值不同,则以为下载的exe文件已经被篡改。同样的,我们可以一次性计算出所有网站文件
的哈希值并保存。在紧急情况下,我们可以重新计算一次哈希值,并将其与上次保存的哈希值
进行对比,从而输出1个新创建、修改和删除的文件列表。
版本控制软件,比如git,把代码重新上传到git,export+commit+call,之后点开项目,点一下
commissions,查看历史提交版本中的文件变化,就很容易发现代码哪里被篡改了。关键词:代
码比较软件,你会发现很多有用的软件,这里推荐2个功能很好的软件,HeyondCompare和W
fnMerge。HeyondCompare是ScooterSoftware推出的一套文件比较软件。主要目的是对比2个
文件夹或文件,并标注颜色差异。对比区域包含目录、文档内容等。下载地址:http://www.sco
otersoftware.com/download.php软件应用示例,通过文件夹对比,找出文件夹中不同的内容。
1.双击结束对比打开软件主页,选择文件夹对比。除此之外,gitdiff还可以用来对比文件之间
的差异。
commissions,查看历史提交版本中的文件变化,就很容易发现代码哪里被篡改了。关键词:代
码比较软件,你会发现很多有用的软件,这里推荐2个功能很好的软件,HeyondCompare和W
fnMerge。HeyondCompare是ScooterSoftware推出的一套文件比较软件。主要目的是对比2个
文件夹或文件,并标注颜色差异。对比区域包含目录、文档内容等。下载地址:http://www.sco
otersoftware.com/download.php软件应用示例,通过文件夹对比,找出文件夹中不同的内容。
1.双击结束对比打开软件主页,选择文件夹对比。除此之外,gitdiff还可以用来对比文件之间
的差异。