Damn Vulnerable Web Application (DVWA) é uma aplicação web PHP / MySQL que é extremamente vulnerável. Seu principal objetivo é ajudar os profissionais de segurança a testar suas habilidades e ferramentas em um ambiente legal, ajudar os desenvolvedores da Web a entender melhor os processos de segurança de aplicativos da web e auxiliar estudantes e professores a aprender sobre a segurança das aplicações web em uma classe controlada ambiente ambiente.
O objetivo do DVWA é praticar algumas das vulnerabilidades da web mais comuns , com vários níveis de dificuldade , com uma simples interface direta. Por favor, note que há duas vulnerabilidades documentadas e indocumentadas com este software. Isso é intencional. Você é incentivado a tentar descobrir o maior número possível de problemas.
ATENÇÃO!
O aplicativo da Web de Damn Vulnerable é extremamente vulnerável! Não carregue na pasta pública html do seu provedor de hospedagem ou em qualquer servidor voltado para a Internet , pois eles serão comprometidos. É recomendável usar uma máquina virtual (como VirtualBox ou VMware ), que está configurada para o modo de rede NAT. Dentro de uma máquina convidada, você pode baixar e instalar o XAMPP para o servidor web e banco de dados.

Faça o download e instale-o como um recipiente docker

Certifique-se de que está usando aufs devido a problemas anteriores do MySQL. Execute docker infopara verificar o seu driver de armazenamento. Se não é aufs, mude-o como tal. Existem guias para cada sistema operacional sobre como fazer isso, mas são bastante diferentes, então não vamos abordar isso aqui.

Download
DVWA está disponível como um pacote que será executado em seu próprio servidor web ou como um Live CD:

Instalação
Verifique se o arquivo config / config.inc.php existe. Só ter um config.inc.php.dist não será suficiente e você terá que editá-lo para se adequar ao seu ambiente e renomeá-lo para config.inc.php. O Windows pode ocultar a extensão posterior. 

Vídeos de instalação

 

Windows + XAMPP
A maneira mais fácil de instalar o DVWA é baixar e instalar o XAMPP se você ainda não possui uma configuração do servidor web.
O XAMPP é muito fácil de instalar o Apache Distribution para Linux, Solaris, Windows e Mac OS X. O pacote inclui o servidor web Apache, MySQL, PHP, Perl, um servidor FTP e phpMyAdmin.
O XAMPP pode ser baixado de: https://www.apachefriends.org/pt_BR/xampp.html
Basta descompactar dvwa.zip, colocar os arquivos descompactos em sua pasta pública html e, em seguida, aponte seu navegador para: http://127.0.0.1 /dvwa/setup.php 

Pacotes de Linux
Se você estiver usando uma distribuição Linux baseada em Debian, você precisará instalar os seguintes pacotes (ou seu equivalente) :
apt-get -y install apache2 mysql-server php php-mysqli php-gd

Configuração de banco de dados
Para configurar o banco de dados, basta clicar no Setup DVWAbotão no menu principal e, em seguida, clicar no Create / Reset Databasebotão. Isso irá criar / redefinir o banco de dados para você com alguns dados.
Se você receber um erro ao tentar criar seu banco de dados, verifique se as credenciais da base de dados estão corretas dentro ./config/config.inc.phpIsso difere de config.inc.php.dist, que é um arquivo de exemplo. 
As variáveis ​​são definidas como padrão por padrão:

$_DVWA[ 'db_user' ] = 'root';
$_DVWA[ 'db_password' ] = 'p@ssw0rd';
$_DVWA[ 'db_database' ] = 'dvwa';

Note, se você estiver usando o MariaDB em vez do MySQL (o MariaDB é padrão no Kali), então você não pode usar o usuário raiz do banco de dados, você deve criar um novo usuário do banco de dados. Para fazer isso, conecte-se ao banco de dados como usuário raiz, use os seguintes comandos:

mysql> create database dvwa;
Query OK, 1 row affected (0.00 sec)

mysql> grant all on dvwa.* to dvwa@localhost identified by 'xxx';
Query OK, 0 rows affected, 1 warning (0.01 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

Outras configurações
Dependendo do seu sistema operacional, bem como a versão do PHP, você pode querer alterar a configuração padrão. A localização dos arquivos será diferente em cada máquina.
Permissões de pasta :

  • ./hackable/uploads/ – Precisa ser gravável pelo serviço da web (para o Upload de arquivos).
  • ./external/phpids/0.6/lib/IDS/tmp/phpids_log.txt – Precisa ser gravável pelo serviço da Web (se desejar usar o PHPIDS).

Configuração PHP :

  • allow_url_include = on– Permite inclusão de arquivos remotos (RFI) [ allow_url_include ]
  • allow_url_fopen = on– Permite inclusão de arquivos remotos (RFI) [ allow_url_fopen ]
  • safe_mode = off– (Se PHP <= v5.4) Permite Injeção SQL (SQLi) [ safe_mode ]
  • magic_quotes_gpc = off– (Se PHP <= v5.4) Permite Injeção SQL (SQLi) [ magic_quotes_gpc ]
  • display_errors = off– (Opcional) Oculta mensagens de aviso PHP para torná-lo menos detalhado [ display_errors]

Arquivoconfig/config.inc.php ::

Credenciais padrão Nome de 
usuário padrão = admin
Senha padrão = password
… pode ser facilmente forçado bruto;)
URL de login: http://127.0.0.1/dvwa/login.php 

Solução de problemas
Para obter as informações mais recentes sobre solução de problemas, visite: https://github.com / ethhack3r / DVWA / issues
+ Q. SQL Injection não funcionará no PHP v5.2.6.
-A.Se você estiver usando o PHP v5.2.6 ou acima, você precisará fazer o seguinte para que a injeção de SQL e outras vulnerabilidadesfuncionem.
Em .htaccess:
Substituir (por favor note que pode dizer mod_php7):

<IfModule mod_php5.c>
    php_flag magic_quotes_gpc off
    #php_flag allow_url_fopen on
    #php_flag allow_url_include on
</IfModule>

Com:

<IfModule mod_php5.c>
    magic_quotes_gpc = Off
    allow_url_fopen = On
    allow_url_include = On
</IfModule>

+ Q. A Injeção de Comando não funcionará.
-UMA. O Apache pode não ter privilégios suficientes para executar comandos no servidor da Web. Se você estiver executando o DVWA no Linux, certifique-se de que está logado como root. Em Windows, faça o login como Administrador. Homepage de

Links
http://www.dvwa.co.uk/
Project Home: https://github.com/ethicalhack3r/DVWA 
Criado pelo time DVWA

Download