Beruflich Dokumente
Kultur Dokumente
Sumrio
Capitulo 1 ............................................................................................................................... 4
1.
Introduo .................................................................................................................. 5
2.
2.1.
2.2.
2.3.
2.4.
2.5.
2.6.
2.7.
3.
Capitulo 2 ............................................................................................................................. 10
4.
4.1.
WebAppScans........................................................................................................... 13
Capitulo 3 ............................................................................................................................. 16
6.
7.
Suhosin ..................................................................................................................... 19
7.1.
8.
9.
10.
11.
12.
OSSEC .................................................................................................................... 33
13.
Mysql..................................................................................................................... 35
Capitulo 1
1. Introduo
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.
2. 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 7, codinome Wheezy, como base e instalaremos os pacotes
existentes em seu repositrio padro, posto que assim que muitos servidores
so instalados e configurados
# vi /etc/hosts
127.0.0.1
192.168.x.x
localhost
oys-lamp-inseguro.oys.local
oys-lamp-inseguro
Vamos editar o arquivo /etc/hostname, para a mquina ter o nome completo com
domnio:
# vi /etc/hostname
oys-lamp-inseguro.oys.local
Aps a instalao dos pacotes, vamos setar uma senha para o root do MySQL:
/etc/apache2/sites-enable
(para
virtual
hosts
habilitados)
O diretrio raiz do apache2 /var/www. Agora vamos criar um arquivo chamado info.php
nesse diretrio e cham-lo em um navegador. O arquivo exibir vrios detalhes da verso
do PHP instalado.
# vi /var/www/info.php
<?php
phpinfo();
?>
Mais uma vez, podemos checar em http://ip/info.php os mdulos php recm instalados.
Aps ter executado os passos acima, o nosso LAMP server, com suas configuraes
padro e sem proteo estar funcional.
3. Wacko Picko
Vamos utilizar a aplicao Web WackoPicko. WackoPicko uma aplicao em PHP escrita
por Adam Doup. Ela contm as mais conhecidas e comuns vulnerabilidades (XSS, SQL
Injection, command-line injection, SessionID, File Inclusion, parameters Manipulation,
etc). WackoPicko foi desenvolvido com as bsicas funes de uma aplicao comum,
como um blog de imagens. Ela possui as seguintes funes:
Autenticao
Upload de Imagens
Compra de Imagens
Busca
Livro de Visitas
rea de Administrao
Com essa aplicao, vamos conseguir visualizar um cenrio real, com um servidor
inseguro, e um seguro, quais as diferenas que a proposta do curso lhe proporciona para
segurana. Para instalar o WackoPicko vamos precisar de uma database no banco MySQL,
porem a aplicao j possui um script que faz a criao e importao dos dados para o
MySQL.
#
#
#
#
#
#
#
#
#
#
cd /tmp
wget https://github.com/adamdoupe/WackoPicko/archive/master.zip
apt-get install unzip
unzip X master.zip
cd WackoPicko-master
mysql u root p senha < current.sql
cd website
cp Rf . /var/www
cd /var/www
chmod 777 R uploads/