AntiSamy es una API en Java para limpiar posible codigo malicioso HTML/CSS que proviene desde la web (user input). Su configuracion se basa en politicas de limpieza las cuales son muy sencillas (tags permitidos y no, etc).
AntiSamy fue inspirado en un muchacho llamado Samy que hizo un worm JS/CSS en MySpace aprovechando falencias de Internet Explorer para ejecutar codigo malicioso logrando juntar un par de millones de amiguis en 2 dias. Aqui la historia.
Para empezar hay que bajarse el project desde Google Code
Elegir entre las politicas disponibles de seguridad.
antisamy-slashdot.xml antisamy-ebay.xml antisamy-myspace.xml antisamy-anythinggoes.xml
Yo Utilizo la de Slahsdot la cual es super estricta, limpia todo lo no HTML y solo deja poner P tags.
Ahora solo resta llamar al codigo y limpiar el bendito HTML.
import org.owasp.validator.html.*;
Policy policy = Policy.getInstance("/home/yo/antisamy-slashdot.xml");
AntiSamy as = new AntiSamy();
CleanResults cr = as.scan(dirtyInput, policy);
String cleanText = cr.getCleanHTML();
Eso es todo. Saludos
R




