下一代网络扫描程序。 识别网站使用的技术。
WhatWeb识别网站。 目的是回答“什么是该网站?”这个问题。 WhatWeb可识别Web技术,包括内容管理系统(CMS),博客平台,统计/分析包,JavaScript库,Web服务器和嵌入式设备.WhatWeb拥有1800多个插件,每个插件可识别不同的东西.WhatWeb还可识别版本号,电子邮件地址 ,帐户ID,Web框架模块,SQL错误等。
WhatWeb可以隐秘而快速,或者彻底但缓慢。 WhatWeb支持一个攻击级别来控制速度和可靠性之间的平衡。 当您使用浏览器访问网站时,交易中会包含许多提示,这些信息提示了哪些网站技术正在推动该网站的发展。有时,一次访问网页就包含了足以识别网站的信息,但如果没有,则WhatWeb可以进一步查询该网站。 默认的攻击级别称为“被动”,是最快的,只需要一个网站的HTTP请求即可。 这适用于扫描公共网站。 为渗透测试开发了更积极的模式。
大多数WhatWeb插件都很详尽,可以识别从微妙到明显的各种提示。 例如,大多数WordPress网站可以通过meta HTML标签进行标识,例如 '<meta name =“ generator” content =“ WordPress 2.6.5”>',但是少数WordPress网站删除了此标识标签,但这不会阻止WhatWeb。 WordPress WhatWeb插件有15项测试,其中包括检查favicon,默认安装文件,登录页面以及检查相对链接中的“ / wp-content /”。
特点:
*超过1800个插件
*控制速度/隐身性和可靠性之间的权衡
*性能调整。 控制要同时扫描的网站数量。
*多种日志格式:简要(可摘要),详细(人类可读),XML,JSON,MagicTree,RubyObject,MongoDB,SQL。
*代理支持,包括TOR
*自定义HTTP标头
*基本的HTTP身份验证
*控制网页重定向
* IP地址范围
*模糊匹配
*结果确定性意识
*在命令行上定义的自定义插件
* IDN(国际域名)支持
原文:
SYNOPSIS
whatweb [options] <URLs>
意译:
目标选择
<目标>
以CIDR,x.x.x-x或x.x.x.x-x.x.x.x格式输入URL,主机名,IP地址,文件名或IP范围。
--input-file=FILE -i
识别在FILE中找到的URL
目标修改
--url-prefix
为目标网址添加前缀
--url-suffix
向目标URL添加后缀
--url-pattern
将目标插入URL。 需要--input-file,例如www.example.com/%insert%/robots.txt
攻击性
攻击级别控制速度/隐身性和可靠性之间的权衡。
--aggression -a=LEVEL
设置攻击级别。默认值:1。
每个目标发出一个HTTP请求,并遵循重定向。
如果匹配1级插件,将提出其他请求。
每个目标发出大量HTTP请求。 尝试所有插件的URL。
HTTP选项
--user-agent, -U=AGENT
标识为AGENT而不是WhatWeb / 0.4.9。
--header, -H
添加一个HTTP标头。 例如“ Foo:Bar”。 指定默认标题将替换它。 指定一个空值,例如 “用户代理:”将删除它。
--follow-redirect=WHEN
控制何时进行重定向。 何时可能是“从不”,“仅http”,“仅元”,“相同站点”或“总是”。 默认值:始终。
--max-redirects=NUM
最大重定向数。 默认值:10
身份认证
--user, -u=<user:password>
HTTP基本认证。
--cookie, -c=COOKIES
使用Cookie,例如 '名称=值; name2 = value2'。
代理
--proxy <hostname[:port]>
设置代理主机名和端口。 默认值:8080
--proxy-user <username:password>
设置代理用户和密码。
插件
--list-plugins, -l
列出所有插件。
--info-plugins, -I=[SEARCH]
列出所有带有详细信息的插件。 (可选)使用逗号分隔列表中的关键字搜索。
--search-plugins=STRING
在插件中搜索关键字。
--plugins, -p=LIST
选择插件。 LIST是一组以逗号分隔的选定插件。 默认为全部。 每个元素可以是目录,文件或插件名称,并且可以有选择地使用修饰符+/-。
例子: +/tmp/moo.rb,+/tmp/foo.rb
title,md5,+./plugins-disabled/
-p + is a shortcut for -p +plugins-disabled.
--grep, -g=STRING|REGEXP
搜索STRING或正则表达式。 仅显示匹配的结果。
例子: --grep "hello"
--grep "/he[l]*o/"
--custom-plugin=DEFINITION
定义一个名为Custom-Plugin的自定义插件,
例子: ":text=>'powered by abc'"
":version=>/powered[ ]?by ab[0-9]/"
":ghdb=>'intitle:abc
":md5=>'8666257030b94d3bdb46e05945f60b42'"
"{:text=>'powered by abc'}"
--dorks=PLUGIN
列出所选插件的Google问题。
输出
--verbose, -v
详细输出包括插件描述。 使用两次进行调试。
--colour,--color=WHEN
控制是否使用颜色。 何时可能是“从不”,“总是”或“自动”。
--quiet, -q
不要显示到STDOUT的简要日志记录。
--no-errors
禁止显示错误消息。
记录
--log-brief=FILE
记录简短的单行输出。
--log-verbose=FILE
日志详细输出。
--log-errors=FILE
记录错误。
--log-xml=FILE
日志XML格式。
--log-json=FILE
记录JSON格式。
--log-sql=FILE
记录SQL INSERT语句。
--log-sql-create=FILE
创建SQL数据库表。
--log-json-verbose=FILE
记录JSON详细格式。
--log-magictree=FILE
记录MagicTree XML格式。
--log-object=FILE
记录Ruby对象检查格式。
--log-mongo-database
MongoDB数据库的名称。
--log-mongo-collection
MongoDB集合的名称。 默认值:whatweb。
--log-mongo-host
MongoDB主机名或IP地址。 默认值:0.0.0.0
--log-mongo-username
MongoDB用户名。 默认值:无。
--log-mongo-password
MongoDB密码。 默认值:无。
--log-elastic-index
存储结果的索引名称。 默认值:whatweb
--log-elastic-host
弹性http界面的host:port。 默认值:127.0.0.1:9200s
性能与稳定性
--max-threads, -t
并发线程数。 默认值:25
--open-timeout
时间以秒为单位。 默认值:15
--read-timeout
时间以秒为单位。 默认值:30
--wait=SECONDS
在连接之间等待SECONDS。 使用单线程时,这很有用。
HELP & MISCELLANEOUS
--short-help
简短的使用帮助。
--help, -h
完整的使用帮助。
--debug
引发插件错误。
--version
显示版本信息。
用法示例
扫描example.com。
./whatweb example.com
使用详细的插件说明扫描reddit.com slashdot.org。
./whatweb -v reddit.com slashdot.org
对wired.com进行的主动扫描可以检测WordPress的确切版本。
./whatweb -a 3 www.wired.com
快速扫描本地网络并抑制错误。
whatweb --no-errors 192.168.0.0/24
扫描局域网中的https网站。
whatweb --no-errors --url-prefix https://192.168.0.0/24
在Alexa Top 1000中扫描跨域策略。
./whatweb -i plugin-development/alexa-top-100.txt --url-suffix /crossdomain.xml -p crossdomain_xml