Sitediff
示例场景
您知道客户正在运行App框架,但不清楚是1.0还是1.1版本。版本1.0存在一个可获取root shell的高危漏洞,但如果在版本1.1上运行攻击代码,会导致服务器崩溃。您需要进行一些指纹识别!
首先,下载两个版本的软件包并解压:
|
|
现在,只需调用Sitediff,传入要测试的本地路径(--path app_1.0
然后 app_1.1
)和URL(--url http://sitediff.dev
):
|
|
技术说明
显然,Sitediff对经过服务器解析后才发送的文件效果不佳,因此某些php文件会出现不匹配的情况。但由于大多数框架至少包含少量静态文件,如JavaScript库和样式表,这些足够让Sitediff发挥作用,使您能够做出比肉眼观察更准确的猜测。如果存在大量不匹配,使用--match-only
标志可能有用,仅显示匹配的文件:
|
|
功能特性
我从CeWL借鉴了不少代码,因此Sitediff支持基本认证和摘要认证,所有请求都可以通过代理发送,以便记录操作过程。
可以使用--header
设置额外的头部,格式为header:value
。要设置多个头部,只需重复该参数。要了解更多信息,请运行--help
:
|
|
获取工具
那么,如何获取这个令人惊叹、节省时间的指纹识别神奇工具呢?只需前往Github查看最新版本,或查看发布版本以获取(希望)更稳定的版本。
与我的所有工具一样,如果您有任何问题或疑问,请告诉我,我会尽力提供帮助。
待办事项
总有一些事情需要做,以下是一些计划:
- 允许指定多个本地路径,然后比较每个路径,而无需多次运行。
- 一旦能够处理多个本地路径,为脚本添加一些智能,以便给出分数显示最可能的匹配。
- 添加更多错误检查 - 目前检查很少,因此如果出现问题,请报告。
- 您的想法在这里 - 如果您有想法,请告诉我。如果我喜欢,我会尝试将其添加到下一个版本中。
支持网站
本网站上的任何项目我都没有获得报酬,因此如果您想支持我的工作,可以通过使用下面的联盟链接来实现,我会获得账户积分或现金返还。通常只有几分钱,但它们会积少成多。
所有内容均由Robin Wood创建,除非另有说明。