Informática Numaboa - Tutoriais e Programação
Medidas de Segurança na programação Joomla
Sab 5 Jan 2008 20:46 |
- Detalhes
- Categoria: Joomla
- Atualização: Segunda, 02 Julho 2012 19:22
- Autor: vovó Vicki
- Acessos: 17179
Evitar XSS
XSS vem de Cross Site Scripting e significa executar scripts (por exemplo um Javascript) no browser do visitante. Cuidado para não usar echo em qualquer input de usuário que não tenha sido validado. Uma coisa do tipo
é muito perigosa. Use mosGetParam ou JRequest::getVar para obter o valor porque estas funções já eliminam a maioria das tranqueiras que eventualmente podem estar sendo enviadas. Para garantir mais um pouco, antes de colocar alguma coisa na página, faça mais uma limpeza com
Evitar register_globals
O register_globals é uma configuração do PHP. Quando register_globals está habilitado, o PHP exporta todos os $_GET, $_POST, $_COOKIE e algumas outras variáveis para o escopo global. Isto facilita muito a vida dos programadores, mas infelizmente também facilita a vida dos crackers. Se quisermos um site que tenha um mínimo de segurança, a primeira coisa a fazer é desligar o register_globals e aprender a se virar sem ele.
- Ative as mesnagens de erro do PHP para que ele mostre as variáveis que estão sendo usadas sem terem sido inicializadas.
- Desabilite o register_globals no arquivo php.ini
- Desabilite RG_EMULATION (ponha valor 0) em globals.php. Este arquivo fica no diretório raiz do Joomla.
Se você não tiver acesso às configurações do PHP e o register_globals estiver ativado, entre em contato com seu serviço de hospedagem e peça para que o desabilitem. Se não for atendido, é melhor trocar de hospedagem do que expor seu site a riscos desnecessários
NÃO use:
Troque por:
Checar privilégios de acesso
Controle com cuidado quem é quem no pedaço antes de autorizar uma query. O Joomla classifica os usuários em:
gid = 0 Não logado gid = 1 Usuário registrado gid = 2 Usuário especial
Para evitar que usuários sem os devidos direitos vejam determinadas informações, inclua uma pesquisa de privilégios nas queries. Por exemplo, no Joomla 1.0.x:
No Joomla 1.5 a mesma query seria:
- << Anterior
- Próximo