Librería PHP para evitar SQL injection y XSS

Algo que debemos tener muy en cuenta cuando realizamos nuestra aplicación web es limpiar la entrada de datos de contenido malicioso, ya sea para SQL injection o cross-site scripting (XSS). Los frameworks suelen tener su propia librería que se encarga de ello, pero para aquellos que no usen framework o hagan una aplicación muy sencilla, esta librería les vendrá muy bien.

// Output an unsafe string, presumably user input
$xss = '';
echo 'If your entered your name as ' . $xss . ', we\'d be in trouble.
' . "\n"; // Sanitize that string, and output it safely $htmlContentContext = sgSanitizer::sanitizeForHTMLContent($xss); echo "But if we sanitize your name, " . $htmlContentContext . ", then all is well.
\n";

Genius Open Source Libraries

Vía / PHPDeveloper.org

SQL injection cheatsheet

Interesante hoja de trucos para evitar SQL Injection en nuestras aplicaciones. La explicación es bastante intensa y no solo se centra en MySQL sino en otros motores como Microsoft SQL Server, ORACLE y PostgreSQL, aunque para estos últimas son pocos los consejos.
SQL Injection Cheat Sheet

GreenSQL: proxy que protege MySQL de SQL injections

GreenSQL es un reverse proxy que se sitúa entre tu aplicación web y la BD de MySQL y evita que se realicen ataques de SQL injection en nuestra BD.
greensql.png
La lógica está basada en la evaluación de los comandos SQL usando una matriz de puntuación de riesgo, a parte de bloquear comandos de administración (DROP, CREATE, …).
Tiene muy buena pinta, claro que habría que hacer unas pruebas de rendimiento para ver si es más eficiente evitar los ataques mediante código o mediante GreenSQL.
GreenSQL