WhatWeb在CentOS的部署与使用

2023-02-27 20:44:49 浏览数 (3)

WhatWeb是一个识别网站CMS的工具,其在KALI上是内置的,无需安装,但如果你想在自己的vps上安装这玩意,那我这篇文章你可以继续看下去了。WhatWeb是基于ruby语言开发的,所有在安装该工具之前我们需要先安装rubygems与bundler。

gems && bundler 介绍

gems : RubyGems 是 Ruby 的一个包管理器,它提供一个分发 Ruby 程序和库的标准格式,还提供一个管理程序包安装的工具,它可以方便地管理 gem 安装的工具,以及用于分发 gem 的服务器。这类似于 Ubuntu 下的apt-get, Centos 的 yum,Python 的 pip。这很生动形象吧! bundler : bundler是一个很好的管理ruby项目gems的工具。当然也是一个ruby gem。使用bundler可以为你的ruby project提供统一的构建环境(无论是production, development, 还是staging),因为bunder可以很好的跟踪和安装指定的和预期的gem。

环境部署

安装ruby环境

代码语言:javascript复制
yum updata
yum install ruby ruby-devel rubygems
ruby -v # 查看ruby版本
gem -v  # 查看ruby的gem包管理器版本

安装bundler,这里主要安装bunder需要指定ruby的版本,不然会安装失败!!!这里是ruby官网,这里你可以选择相关版本:rubygems.org

代码语言:javascript复制
gem install bundler -v 1.17.3
bundler -v  # 查看该版本  

部署whatweb

代码语言:javascript复制
midir whatweb
cd whatweb
wget https://github.com/urbanadventurer/WhatWeb/archive/refs/tags/v0.5.5.tar.gz
tar -xzvf whatweb
cd whatweb
bundler install
./whatweb --version  # 查看版本,看是否安装成功
./whatweb --help  # 查看相关使用方法

相关使用参数列表

代码语言:javascript复制
Usage: whatweb [options] <URLs>

TARGET SELECTION:
  <TARGETs>         Enter URLs, hostnames, IP addresses, filenames or
                IP ranges in CIDR, x.x.x-x, or x.x.x.x-x.x.x.x
                format.
  --input-file=FILE, -i     Read targets from a file. You can pipe
                hostnames or URLs directly with -i /dev/stdin.

TARGET MODIFICATION:
  --url-prefix          Add a prefix to target URLs.
  --url-suffix          Add a suffix to target URLs.
  --url-pattern         Insert the targets into a URL.
                e.g. example.com/%insert%/robots.txt

AGGRESSION:
The aggression level controls the trade-off between speed/stealth and
reliability.
  --aggression, -a=LEVEL    Set the aggression level. Default: 1.
  1. Stealthy           Makes one HTTP request per target and also
                follows redirects.
  3. Aggressive         If a level 1 plugin is matched, additional
                requests will be made.
  4. Heavy          Makes a lot of HTTP requests per target. URLs
                from all plugins are attempted.

HTTP OPTIONS:
  --user-agent, -U=AGENT    Identify as AGENT instead of WhatWeb/0.5.5.
  --header, -H          Add an HTTP header. eg "Foo:Bar". Specifying a
                default header will replace it. Specifying an
                empty value, e.g. "User-Agent:" will remove it.
  --follow-redirect=WHEN    Control when to follow redirects. WHEN may be
                `never', `http-only', `meta-only', `same-site',
                or `always'. Default: always.
  --max-redirects=NUM       Maximum number of redirects. Default: 10.

AUTHENTICATION:
  --user, -u=<user:password>    HTTP basic authentication.
  --cookie, -c=COOKIES      Use cookies, e.g. 'name=value; name2=value2'.
  --cookie-jar=FILE     Read cookies from a file.

PROXY:
  --proxy           <hostname[:port]> Set proxy hostname and port.
                Default: 8080.
  --proxy-user          <username:password> Set proxy user and password.

PLUGINS:
  --list-plugins, -l        List all plugins.
  --info-plugins, -I=[SEARCH]   List all plugins with detailed information.
                Optionally search with keywords in a comma
                delimited list.
  --search-plugins=STRING   Search plugins for a keyword.
  --plugins, -p=LIST        Select plugins. LIST is a comma delimited set
                of selected plugins. Default is all.
                Each element can be a directory, file or plugin
                name and can optionally have a modifier,  /-.
                Examples:  /tmp/moo.rb, /tmp/foo.rb
                title,md5, ./plugins-disabled/
                ./plugins-disabled,-md5
                -p   is a shortcut for -p  plugins-disabled.
  --grep, -g=STRING|REGEXP  Search for STRING or a Regular Expression. Shows
                only the results that match.
                Examples: --grep "hello"
                --grep "/he[l]*o/"
  --custom-plugin=DEFINITION    Define a custom plugin named Custom-Plugin,
                Examples: ":text=>'powered by abc'"
                ":version=>/powered[ ]?by ab[0-9]/"
                ":ghdb=>'intitle:abc "powered by abc"'"
                ":md5=>'8666257030b94d3bdb46e05945f60b42'"
                "{:text=>'powered by abc'}"
  --dorks=PLUGIN        List Google dorks for the selected plugin.

OUTPUT:
  --verbose, -v         Verbose output includes plugin descriptions.
                Use twice for debugging.
  --colour,--color=WHEN     control whether colour is used. WHEN may be
                `never', `always', or `auto'.
  --quiet, -q           Do not display brief logging to STDOUT.
  --no-errors           Suppress error messages.

LOGGING:
  --log-brief=FILE      Log brief, one-line output.
  --log-verbose=FILE        Log verbose output.
  --log-errors=FILE     Log errors.
  --log-xml=FILE        Log XML format.
  --log-json=FILE       Log JSON format.
  --log-sql=FILE        Log SQL INSERT statements.
  --log-sql-create=FILE     Create SQL database tables.
  --log-json-verbose=FILE   Log JSON Verbose format.
  --log-magictree=FILE      Log MagicTree XML format.
  --log-object=FILE     Log Ruby object inspection format.
  --log-mongo-database      Name of the MongoDB database.
  --log-mongo-collection    Name of the MongoDB collection.
                Default: whatweb.
  --log-mongo-host      MongoDB hostname or IP address.
                Default: 0.0.0.0.
  --log-mongo-username      MongoDB username. Default: nil.
  --log-mongo-password      MongoDB password. Default: nil.
  --log-elastic-index       Name of the index to store results. Default: whatweb
  --log-elastic-host        Host:port of the elastic http interface. Default: 127.0.0.1:9200

PERFORMANCE & STABILITY:
  --max-threads, -t     Number of simultaneous threads. Default: 25.
  --open-timeout        Time in seconds. Default: 15.
  --read-timeout        Time in seconds. Default: 30.
  --wait=SECONDS        Wait SECONDS between connections.
                This is useful when using a single thread.

HELP & MISCELLANEOUS:
  --short-help          Short usage help.
  --help, -h            Complete usage help.
  --debug           Raise errors in plugins.
  --version         Display version information.

使用示例:

代码语言:javascript复制
# 详细输出该网站cms信息及细节
./whatweb https://tommonkey.cn --verbose

———————————————-

噢,对了,如果你不是CentOS,而是Ubantu的话,那更加简单,一条命令就全搞定:

apt-get install whatweb

over!!! good night, everyone!!!

1 人点赞