Вы находитесь на странице: 1из 10

Segurana em

Servidores WEB

http://hackproofing.blogspot.com

-2

Sumrio
Captulo 1
Primeiro captulo........................................................................................................................ 4
1.1. Instalao e Configurao de um servidor WEB.............................................................5
1.1.1. Instalao e Configurao do Apache2 .................................................................................5
1.1.2. Instalao do PHP5................................................................................................................ 6
1.1.3. Instalao e Configurao do MySQL ...................................................................................7

1.2. Instalao da aplicao WEB para testes.......................................................................9


Captulo 2
Ataques servidores WEB....................................................................................................... 11
2.1. Tipos de ataques........................................................................................................... 12
2.1.1. DoS ..................................................................................................................................... 12
2.1.2. DDoS ................................................................................................................................... 12

2.2. Fingerprint em Web Server .......................................................................................... 13


2.2.1. Httprint ............................................................................................................................... 14

2.3. Descobrindo Vulnerabilidades com Nikto ....................................................................14


2.4. Auditoria e Explorao de Web Servers com W3AF.....................................................16
2.5. Online Scanner.............................................................................................................. 16
2.6. Teste com pgina maliciosa.......................................................................................... 18
Captulo 3
Protegendo seu servidor WEB................................................................................................. 19
3.1. Ambiente seguro com chroot........................................................................................ 20
3.1.1. Instalao e configuao do chroot.....................................................................................20

3.2. Instalao do Apache no chroot e configurao...........................................................22


3.2.1. Instalao do Apache no chroot........................................................................................... 22
3.2.2. Procedimentos bsicos de segurana no Apache2..............................................................23

3.3. Instalando e configurando o PHP5 + Suhosin no chroot..............................................25


3.3.1. Instalando o PHP5+Suhosin................................................................................................ 26
3.3.2. Configurando o Suhosin...................................................................................................... 27
3.3.3. Configuraes de segurana no PHP5:................................................................................30

Captulo 4
Segurana Avanada no Apache.............................................................................................. 33
4.1. Mod_security................................................................................................................. 34
4.1.1. Instalao do Mod_security................................................................................................. 35
4.1.2. Regras do Mod_security...................................................................................................... 36

4.2. Mod_evasive.................................................................................................................. 37

-3
4.2.1. Instalao do Mod_evasive.................................................................................................. 38
4.2.2. Configurando o mod_evasive............................................................................................... 39

4.3. Mod_qos........................................................................................................................ 40
4.3.1. Instalao do mod_qos......................................................................................................... 41
4.3.2. Configurao e ativao do mod_qos...................................................................................42

4.4. Mod_limitipconn............................................................................................................ 44
4.4.1. Instalao do mod_limitipconn............................................................................................ 44
4.4.2. Configurao do mod_limitipconn.......................................................................................44

4.5. OSSEC........................................................................................................................... 45
4.5.1. Instalando o OSSEC HIDS Server.......................................................................................46
4.5.2. Instalando o OSSEC-WUI (Web Interface)...........................................................................48

REFERNCIAS
BIBLIOGRFICAS.................................................................................................................... 52

ndice de tabelas
ndice de Figuras

Captulo 1 Ambientao e compreenso do cenrio - 4

Captulo 1
Ambientao e compreenso do
cenrio

Captulo 1 Ambientao e compreenso do cenrio - 5


Atualmente a maioria das aplicaes esto migrando para o ambiente WEB. E
com o crescimento dessas aplicaes on-line, a demanda por segurana tambm
aumenta, pois antes as bases de dados ficavam restritas ao acesso vindo de dentro da
empresa, entretanto agora, com as aplicaes WEB, as bases de dados, bem como
servidores pblicos que possuem acesso rede interna, esto expostos ao acesso
externo, muitas vezes sem controle de quem acessa.
Por conta desse cenrio, precisamos saber como se comporta um servidor
WEB configurado de maneira padro, bem como os riscos que corremos, e como
possvel aumentar sua segurana, dificultando as exploraes e comprometimentos.
Sabemos que no caso de uma aplicao PHP, muito do que consideramos como
segurana, est vinculado s boas prticas de programao. Entretanto, no
podemos deixar de lado a importncia que h na configurao correta, levando em
conta a segurana, de um servidor Apache e do prprio PHP, com as devidas
alteraes no php.ini e aplicao de patchs de segurana.

1.1. Instalao e Configurao de um servidor WEB


Para iniciarmos nossa prtica, precisamos instalar e configurar um servidor
WEB que considerado o padro LAMP (Linux + Apache + MySQL + PHP).
Utilizaremos um Debian Linux, na verso 6 (Squeeze), como base e
instalaremos os pacotes existentes em seu repositrio padro, posto que assim que
muitos servidores so instalados e configurados.

1.1.1. Instalao e Configurao do Apache2

1 - Instale o Apache2:

# aptitude install apache2

2 - Edite o arquivo de configurao do apache2 e defina um FQDN:

Captulo 1 Ambientao e compreenso do cenrio - 6

# vim /etc/apache2/apache2.conf
ServerName 192.168.x.x

3 - Reinicie o Apache2:

# /etc/init.d/apache2 restart

4 Faa um teste acessando a pgina do seu servidor pelo browser:

http://192.168.200.x

1.1.2. Instalao do PHP5

1 - Instale o PHP5 e alguns mdulos necessrios:


# aptitude install php5
# aptitude install php5-mysql
# aptitude install libapache2-mod-php5

2 - Edite o arquivo php.ini do Apache2 e descomente a seguinte linha para dar


suporte ao MySQL:
# vim /etc/php5/apache2/php.ini
; Example lines:
extension=mysql.so

Captulo 1 Ambientao e compreenso do cenrio - 7

1.1.3. Instalao e Configurao do MySQL

1 - Instale o mysql-server:
# aptitude install mysql-server

2 - Verifique se o MySQL est rodando e se os sockets esto ativos:


# ps aux | grep mysql
# netstat -nlpt

3 Se na instalao no for definido uma senha do usurio root do MySQL,


pode-se fazer com o seguinte comando:
# mysqladmin -u root password nova_senha

Para manter a segurana no acesso da base de dados que ser criada,


necessrio criar um usurio comum para ser o dono dessa base, no comprometendo
a segurana de todo o banco de dados.
4 Crie um usurio chamado snort no banco de dados:
# mysql -u root -p
mysql> grant all privileges on aplicacao_php.* to aluno@192.168.200.X
identified by "123456";
mysql> grant all privileges on aplicacao_php.* to aluno@localhost identified
by "123456";
mysql> quit

Dessa maneira, o usurio snort ser criado e ter acesso a base snort atravs
do IP da mquina e do hostname.

Captulo 1 Ambientao e compreenso do cenrio - 8


5 - Agora, conecte no MySQL com o usrio snort e crie a base de dados
snort:
# mysql -u aluno -p
mysql> show databases;
mysql> create database aplicacao_php;
mysql> quit

Com esses procedimentos feitos, j temos um servidor web no ar e


funcionando com suas configuraes padres. Como muita gente fala que em time
que est ganhando no se mexe, na maioria das vezes o processo de instalao e
configurao de um servidor web fica por aqui mesmo e j colocado em produo.
Vamos agora ao procedimento de instalao de uma aplicao web feita em
PHP.

Captulo 1 Ambientao e compreenso do cenrio - 9

1.2. Instalao da aplicao WEB para testes


1 Copiar o arquivo compactado da aplicao para /var/www/aplicacao:
# mkdir /var/www/aplicacao
# cp aplicacao_php.tar.gz /var/www/aplicacao/

2 Descompactar o arquivo para disponibiliz-lo no Apache:


# cd /var/www/aplicacao
# tar -xzvf aplicacao_php.tar.gz

3 Criao da base de dados no MySQL:


# cat banco.sql | mysql -u aluno -p aplicacao_php
# mysql -u aluno -p
mysql> show databases;
mysql> use aplicacao_php;
mysql> show tables;
mysql> quit

4 Configurao da base de dados na aplicao:


# cd /var/www/aplicacao
# nano autoloader.php
'servidor' => 'localhost',
'banco' => 'aplicacao_php',
'usuario' => 'aluno',
'senha' => '123456'

Com essas configurao voc deve conseguir acessar a aplicao web atravs

Captulo 1 Ambientao e compreenso do cenrio - 10


do seguinte endereo:
http://localhost/aplicacao/

Estando tudo ok e a aplicao web acessvel, vamos agora para os testes e


ataques ao nosso servidor para vermos como ele se comporta.

Вам также может понравиться