Menu

Como proteger meus scripts contra ataques de SQL Injection?

SQL InjectionSegurançavulnerabilidadessegurança de sites
SQL Injection é uma técnica de invasão que se aproveita da programação utilizada para consultar tabelas do banco de dados para acessar, excluir ou alterar informações indevidamente.

SQL Injection é uma técnica de invasão que se aproveita da programação utilizada para consultar tabelas do banco de dados para acessar, excluir ou alterar informações indevidamente.

Qualquer site que monta suas páginas com base no conteúdo de um banco de dados, como gerenciadores de conteúdo (CMS), está sujeito a receber este tipo de ataque, que pode resultar na alteração de conteúdo, incluindo a inserção de códigos maliciosos, ou no acesso a informações sigilosas.

A vulnerabilidade está presente nos scripts em que a entrada de dados do usuário, seja via formulário ou URI, usando os métodos GET ou POST, não é devidamente filtrada, permitindo o uso de comandos específicos do banco de dados. Como resultado, o invasor consegue alterar as consultas (queries) definidas pelo programador para acesso a bancos como: MySQL, SQL Server, PostgreSQL, Access, etc.

A proteção contra SQL Injection requer que o programador trate todos os parâmetros recebidos por scritps que acessam o banco de dados, com o objetivo de filtrar strings potencialmente perigosas, como:

' (aspas simples)
" (aspas duplas)
< (menor que)
> (maior que)
-- (duplo sinal de menos)
# (cerquilha)
* (asterisco)
& (e comercial)

Comandos SQL como:

DECLARE
EXEC
SET
CAST
INSERT
DELETE
UPDATE

Os seguintes artigos trazem mais informações sobre SQL Injection (os sites serão abertos em uma nova janela):

Wikipedia - SQL Injection (português)
Wikipedia - SQL Injection (inglês)

 
 

Outros textos

+ posts

Mais lidos

Tags

2010AndroidBrucEntourageGolpesHTMLIOSIpadIphoneLimitesMacMail.appOSXOutlookSQL InjectionSegurançaSmartphoneThunderbirdVulnerabilidadesWindows Phoneassinaturaatrairbrucclientescriaçãocrisedesenvolvimentodesigndicase-commercee-mailecommerceemailfraudeshtmlimageminternetinvasão de sitesmarketingmicrosoftmobileoutlookoutlook2013responsivosegurançasegurança de sitessitessoluçõesspamsql injectionssltamanhotendênciasvendasvulnerabilidadeswebwebmail