WPScan é um software de teste de caixa-preta (black box) para escanear possíveis vulnerabilidades em instalações WordPress e seus complementos (temas e plugins). A ferramenta é escrita na linguagem Ruby, de código aberto e muito utilizada por profissionais de segurança e administradores de sites em WordPress para analisar, testar e garantir a segurança da aplicação.
As funcionalidades do WPScan
Com o uso do WPScan é possível realizar uma série de análises e testes para garantir a segurança para WordPress. Algumas das possibilidades são as seguintes:
- Análise de vulnerabilidade não intrusiva;
- Pesquisa e listagem dos nomes de usuários em uso;
- Simulação de ataque de força bruta (brute force);
- Verificação de senhas fracas em uso;
- Análise da versão do WordPress, plugins e temas em uso;
- Listagem dos plugins em uso;
- Miscelânia de verificações em instalações WordPress.
Na página do projeto é possível consultar todos os comandos e argumentos suportados pelo WPScan e por conseguinte seu potencial de uso.
Sobre as vulnerabilidades analisadas
As vulnerabilidades analisadas no WordPress, plugins e temas pelo WPScan estão disponíveis on-line e de forma navegável através do projeto WPScan Vulnerability Database. Esse banco de dados foi compilado pelo time do WPScan e outros colaboradores desde o lançamento da ferramenta.
Como instalar o WP Scan em sua máquina
Se você faz uso do Mac OSX ou Linux conseguirá fazer uso da ferramenta em sua máquina. Aos usuários de Windows, sinto muito, mas não há suporte para vocês. Antes da instalação é necessário os seguintes pré-requisitos:
- Ruby >= 1.9.2. A recomendação é a versão 2.2.3;
- CURL >= 7.2.1. A recomendação é a versão mais recente;
- Última versão da RubyGems;
- Git.
O passo-a-passo dos processos de instalação estão disponíveis na página do projeto. Abaixo replico o processo de instalação no Mac OSX.
Instalando o WPScan no Mac OSX
Além dos pré-requisitos informados acima é necessário também o Apple Xcode, libffi e a interface de linha de comando. Para a instalação do FFI gem consulte http://stackoverflow.com/questions/17775115/cant-setup-ruby-environment-installing-fii-gem-error.
git clone https://github.com/wpscanteam/wpscan.git
cd wpscan
sudo gem install bundler && sudo bundle install --without test
Exemplos práticos de uso do WPScan
A imagem acima é uma ilustração e exemplo de análise não intrusiva de um site em WordPress analisado pelo WPScan. Abaixo alguns comandos de exemplo.
Análise de vulnerabilidade não intrusiva no WordPress com o WPScan
ruby wpscan.rb --url exemplo-de-url.com
Listagem dos plugins através do WPScan
ruby wpscan.rb --url exemplo-de-url.com --enumerate p
Simulação de ataque de força bruta sob o nome de usuário “admin”
ruby wpscan.rb --url exemplo-de-url.com --wordlist banco-de-senhas.lst --username admin
O WPScan é uma ferramenta incrível e seu uso regular lhe permite verificar as possíveis vulnerabilidades em seu site WordPress. Considere a instalação, uso frequente e atue nas ocorrências quando encontradas para garantir um WordPress seguro.