用于检测Web应用程序使用的技术的工具。

wad的Python项目详细描述


Build StatusPyPI

wad允许您分析给定的url并检测web使用的技术 URL后面的应用程序,从OS和Web服务器级别,到 编程平台和框架,以及服务器端和客户端 应用程序、工具和库。

例如,扫描服务器的结果可能包括:

  • 操作系统:Windows、Linux…
  • 网络服务器:apache、nginx、iis…
  • 编程平台:php、python、ruby、java…
  • 内容管理系统:Drupal、WordPress…
  • 框架:angularjs、ruby on rails、django…
  • 各种数据库、分析工具、javascript库、cdn, 评论系统,搜索引擎和许多其他。

工作原理

wad是作为一个独立的应用程序构建的,使用 Wappalyzer的检测 规则。它向给定的url发送get请求并分析两个http 响应头和正文(HTML页),查找 探索使用的网络技术。

检测结果可能包括有关技术版本的信息 使用,例如Linux发行版或Apache版本。结果是 根据技术类型分类(无论是CMS还是 数据库等)。现在有超过700种技术可以 使用WAD发现。

安装

WAD is available via PyPI,所以 要安装它,只需运行以下命令:

pip install wad

用法

使用wad -h打印帮助文本。默认情况下,json用于 格式化输出数据,但也可以使用其他格式与-f一起使用 选择。###使用场景命令示例: wad -uhttps://pypi.python.org/

输出:

{
    "https://pypi.python.org/pypi": [
        {
            "type": "cache-tools",
            "app": "Varnish",
            "ver": null
        },
        {
            "type": "web-servers",
            "app": "Nginx",
            "ver": "1.6.2"
        }
    ]
}

wad和wappalyzer之间的差异

尽管大多数规则匹配功能只是一个python wappalyzer的javascript实现的端口,有一些键 项目之间的差异。

首先,wappalyzer(作为一个扩展)运行在web浏览器之上, 这意味着扫描站点上的脚本已经运行,所以变量和 对象被创建并可访问。不幸的是,这不是也不会 为韦德辩护。wad解析原始站点内容(由http提供 响应),而不在浏览器上下文中运行它。后果 很简单-我们不能用wappalyzer的规则来搜索 javascript环境中的变量和对象。

其次,该项目已经并将继续与 wappalyzer的代码库。我们不打算一对一 Wappalyzer项目,并打算将其美化为Dom 检查员(而不是盲目地用regex解析网站),我们不会 在任何情况下都能保证相同的行为。

最后,添加到wad项目中的其他特性不会移植到 与此同时,瓦帕莱泽。

更改日志

0.3.4(2015-08-25)

  • 添加了额外的检查方法,允许进一步自定义 探测器等级

0.3.3(2015-08-17)

  • 修复了python中导致ssl证书不匹配崩溃的错误>;。= 2.7.9

0.3.2(2015-08-17)

  • 修复了如果网站有波兰语(.pl)则导致检测Perl的错误。 顶级域
  • 测试重构(将代码复制到方法中)

0.3.1(2015-08-17)

  • 包现在应该是线程安全的
  • 对HumanReadableOutput的细微更改

0.3.0(2015-08-13)

  • 添加了结果分组功能

0.2.0(2015-08-10)

  • 多种输出格式(添加了可读文本,CSV)
  • 从检测器检测方法中提取的一些方法。
  • 小错误修复

作者

(希望完成)参与此项目的人员列表:

  • 塞巴斯蒂安i
  • 皮奥特·利佐恩茨克
  • 文森特·布里劳特
  • 法扎内莫格达姆
  • 安东尼奥·佩雷斯·佩雷斯
  • 乔瓦诺斯基夫人

特别感谢《瓦帕莱泽》的作者艾伯特·艾利斯。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何将jaxb插件扩展与gradlejaxbplugin一起使用   java Hibernate列表<Object[]>到特定对象   java使用多态性显示arraylist的输出   java水平堆叠卡,带有一定偏移量   java错误:找不到符号方法liesInt()   java客户机/服务器文件收发中的多线程流管理   在java中可以基于访问重载方法吗?   包含空元素的java排序数组   swing Java按钮/网格布局   java BottomNavigationView getmaxitemcount   java空指针异常字符串生成器   java Xamarin升级导致“类文件版本错误52.0,应为50.0”错误   java我正在尝试打印它,而不只是对每一行进行println   Tomcat7中的java是否需要复制上下文。将xml转换为conf/Catalina/locahost以使其生效   带有注入服务的java REST端点在何处引发自定义WebServiceException?   在Java中使用GPS数据   java如何将JFreeChart ChartPanel导出到包含添加的CrosshairOverlay的图像对象?   内置Eclipse期间的Java 8堆栈溢出   java在GWT编译的JavaScript中如何表示BigDecimal