Configurando um Servidor

Page 1

Web Seguro Configurando um servidor WWW seguro Novembro de 1998

Centro de Atendimento a Incidentes de Segurança - CAIS

WebPAL0103 Seguro PAL0103 ©1998 – RNP


Índice: • Introdução • Técnicas recomendadas • Recomendações Gerais • Problemas de segurança com alguns servidores WWW • Referências Web Seguro PAL0103 ©1998 – RNP


Introdução

Introdução •

Qual é o cenário?

O que fazer?

Web Seguro PAL0103 ©1998 – RNP


Introdução

Qual é o cenário? •

Pedidos anônimos;

Usuários não autenticados;

Código fonte complexo;

Em muitos casos, código amplamente divulgado;

Não são poucos os usuários inexperientes em programação CGI. Seu servidor Web se torna um fácil ponto de ataque!! Web Seguro PAL0103 ©1998 – RNP


Introdução

O que fazer? •

Pagar um “servidor seguro”;

Aplicar técnicas recomendadas para tornar o seu servidor mais seguro;

Combinação de ambos.

Web Seguro PAL0103 ©1998 – RNP


Técnicas recomendadas

Técnicas recomendadas

Configurando o User ID / Group ID do servidor

Entendendo a estrutura de diretórios −Permissões −Arquivos de configuração

Escrevendo scripts CGI de maneira segura −Scripts CGI com conhecidos furos de segurança −Scripts CGI: Recomendações Web Seguro PAL0103 ©1998 – RNP


Técnicas recomendadas

Configurando UID/GID do servidor •

Servidor (processo pai) precisa ser inicializado como root, para “ouvir” na porta 80 (padrão)

Já os processos filhos NÃO devem, de maneira alguma, rodar como root (configurável através do arquivo conf/httpd.conf) User http Group http Web Seguro PAL0103 ©1998 – RNP


Técnicas recomendadas

Entendendo a estrutura de diretórios Especial cuidado, no que diz respeito a: •

Permissões de diretórios e arquivos −cgi-bin −conf −htdocs −logs

Arquivos de configuração −access.conf −httpd.conf −srm.conf Web Seguro PAL0103 ©1998 – RNP


Técnicas recomendadas

Estrutura de diretórios: Permissões Esquema 1: drwxr-xr-x drwxr-x---rwx-----drwxrwxr-x drwxrwxr-x drwxr-x---

5 2 1 2 2 2

www www www www www www

www www www www www www

1024 1024 109674 1024 1024 1024

Aug 8 00:01 cgi-bin/ Jun 11 17:21 conf/ May 8 23:58 httpd Aug 8 00:01 htdocs/ Jun 3 21:15 icons/ Aug 8 00:01 htdocs/

Web Seguro PAL0103 ©1998 – RNP


Técnicas recomendadas

Estrutura de diretórios: Permissões (cont.) Esquema 2: drwx--x--x drwx------rwx-----drwxr-xr-x drwxr-xr-x drwx------

5 2 1 2 2 2

root root root root root root

www 1024 Aug 8 00:01 cgi-bin/ www 1024 Jun 11 17:21 conf/ www 109674 May 8 23:58 httpd www 1024 Aug 8 00:01 htdocs/ www 1024 Jun 3 21:15 icons/ www 1024 Aug 8 00:01 htdocs/

Web Seguro PAL0103 ©1998 – RNP


Técnicas recomendadas

Estrutura de diretórios: arquivos de configuração • Permissões: -rw------- 5 access.conf -rw------- 2 -rw------- 1 -rw------- 2

root wheel

954 Aug 6 00:01

root wheel 2840 Aug 6 17:21 httpd.conf root wheel 3290 Aug 6 23:58 myme.types root wheel 4106 Aug 6 00:01 srm.conf

• Especial atenção no que diz respeito a: - Listagem automática de diretórios - Links simbólicos - Server Side Includes (SSI) Web Seguro PAL0103 ©1998 – RNP


Técnicas recomendadas

Escrevendo scripts CGI seguros • O maior problema dos scripts CGI: - podem incluir erros de codificação sutis • Estes erros podem permitir: - vazamento de informações do servidor/sistema - executar comandos arbitrários (INPUT DATA) Web Seguro PAL0103 ©1998 – RNP


Técnicas recomendadas

Scripts CGI com conhecidos furos de segurança Script Count.cgi webdist.cgi php.cgi nph-test.cgi nph-publish AnyForm FormMail phf

Versões Afetadas

Uso

1.0-2.3 1.0-1.2 Até 2.0 Todas 1.0-1.1 1.0 1.0 Todas

Contador de página Distribui software Ling. de scripts ? ? Cria formulários Envia dados/e-mail Phone BookWeb Seguro PAL0103 ©1998 – RNP


Técnicas recomendadas

Scripts CGI: recomendações • Colocar todos os scripts num único diretório - configurar no arquivo conf/srm.conf • Usar Tripwire para monitorar mudanças nos scripts • Permissões dos scripts: 755 • Permissão do diretório: 711 • Desativar todos os scripts não usados Web Seguro PAL0103 ©1998 – RNP


Técnicas recomendadas

Scripts CGI: recomendações (cont.) • No que diz respeito à codificação: - Evite dar maiores informações - Não assuma nenhum tamanho de dados de entrada - Analise sempre dados de entrada do usuário (executados por algum comando shell) Ex.: Tem algum “;” no meio? • Invocar programas usando caminhos absolutos Ex.: Em vez de ls -l, utilize: /bin/ls -l Web Seguro PAL0103 ©1998 – RNP


Recomendações gerais

Recomendações gerais • Isolar o servidor Web (firewalls); • Monitorar freqüentemente: • Arquivos de log Ex.: Pedidos de URL muito longas • Usando Tripwire Ex.: Alterações não autorizadas

• Para quem usa autenticação via Web, garanta que o arquivo de senhas não esteja acessível a usuários Web Seguro comuns PAL0103

©1998 – RNP


Recomendações gerais

Recomendações gerais (cont.) • Seja ciente dos possíveis problemas de integrar serviços Web e Ftp: nada de uploads! • Acompanhe os alertas de segurança.

Web Seguro PAL0103 ©1998 – RNP


Problemas de segurança com alguns servidores WWW

Problemas de segurança com alguns servidores WWW • Netscape Communicator para NT (versão 1.12) Netscape Commerce para NT (versão 1.12) • Microsoft IIS (versões anteriores a 05/03/96) - É possível fazer download de scripts e lê-los

Microsoft IIS (versão 3.0) - Vulnerável a ataque DoS (URL longa)

Web Seguro PAL0103 ©1998 – RNP


Problemas de segurança com alguns servidores WWW

Problemas de segurança com alguns servidores WWW (cont.) • Servidor NCSA - Buffer overflow em versões anteriores a 1.4 - cgi_src/util.c e src/util.c nas versões 1.5a e anteriores permitem executar comandos remotos

• Servidor Apache - Módulo “mod_cookies” na versão 1.1.1 (Buffer overflow) - cgi_src/util.c e src/util.c nas versões 1.02 e anteriores permitem executar comandos remotos Web Seguro PAL0103 ©1998 – RNP


Problemas de segurança com alguns servidores WWW

Problemas de segurança com alguns servidores WWW (cont.) - Vulnerabilidade na versão 1.1.1 que permite a listagem automática de diretórios, mesmo com o arquivo index.html presente!

• Servidor Netscape para Unix - Sistema de criptografia no NS Commerce foi “crackeado” - Sistema de geração de chaves é quase previsível

Web Seguro PAL0103 ©1998 – RNP


Referências

Referências • Links: - http://www.go2net.com/people/paulp/cgi-security - http://hoohoo.ncsa.uiuc.edu/cgi/security.html - http://www.cs.purdue.edu/coast/hotlist.html#securi01

• FAQs: - http://www.w3.org/Security/Faq

Web Seguro PAL0103 ©1998 – RNP


Referências

Referências (cont.) • Listas: - www-security: Enviar e-mail para www-security-request@nsmx.rutgers.edu colocando na mensagem o seguinte: subscribe www-security < seu e-mail >

• Livros: - Practical Unix & Internet Security - 2nd. Edition Simsom Garfunkel and Gene Spafford O’Reilly & Associates Web Seguro PAL0103 ©1998 – RNP


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.