HTML Purifier 3

htmlpurifier.pngHTML Purifier es un filtro en PHP que elimina código XSS de HTML y hace que sea estándar. Acaba de sacar la versión 3.0 y entre las novedades nos encontramos con:

  • Requiere PHP5.
  • Las propiedades CSS no son sensibles a mayúsculas o minúsculas.
  • Elimina las etiquetas <style> (necesita CSSTidy).
  • Mejoras en el motor de estilos.

HTML Purifier

Pixy: localiza XSS y SQL Injection en tu PHP

Pixy es una aplicación Java que rastreará nuestro código PHP en busca de vulnerabilidades XSS y SQL Injection.
Encuentrq vulnerabilidades que normalmente se encuentran en auditorías manuales, salvo que estas pueden pasar por encima algunas. Pixy tan solo es válido para código PHP4, aún no es compatible con PHP5. Realiza informes sobre los puntos vulnerables del código, para lo cual toma el programa PHP como entrada y acto seguido lo analiza.
Pixy
Vía / VT’s Tech Blog

XSS mediante HTML no estándar

Cuando se quieren evitar ataques XSS, normalmente en PHP se usan las funciones htmlspecialchars o htmlentities.

Ahora veo un ejemplo en el que un ataque puede evitar estas funciones cuando se crea la página con HTML no estándar. Tenemos el típico ejemplo de un texto que se introduce por un formulario y se presenta como un enlace.

$dato = htmlentities($_GET['dato'], ENT_QUOTES);
echo "<a href=pagina.php?dato=$dato>Enlace</a>";

Si os fijáis bien veréis que el enlace está mal formado y no tiene las comillas en el href. Si metieramos como dato de entrada lo siguiente: ” onclick=alert(null)” (sin las comillas), nuestra página sufriría un ataque XSS y mostraría un mensaje alert.

Non-Standard HTML Fuels XSS Attacks