--------------------------------
| GuppY makes XSS attacks easy |
--------------------------------PROGRAM: GuppY
VULNERABLE VERSIONS: All versions under 2.4p1
IMMUNE VERSIONS: 2.4p1
SEVERITY: highTested version
==============
GuppY 2.4 on the official GuppY website.Description
============
"GuppY é um pequeno portal de web, pretendido estar fácil
para usar ao usuário de fim que você está, e que
não requer um banco de dados para run.This arquitetura permite
então para instalar isto em quase todo hosters dos sites de web
Internet (ou quase não menos do que eles), o unicamente preriquisite
sendo que seu hoster tem fornecer a facilidade de língua do PHP
scripting." - GuppY website
GuppY usa o postguest.php arquiva para seu forum e módulos do
guestbook. Este arquivo contem buracos do XSS, um attacker pode executar
código desde[c=codecolor]text[/c] has no filter.POSTGUEST.PHP
=============
Problems come from this part:
Line 196: $ptxt = preg_replace("/(\[c=(.*?)\])(.*?)(\[\/c\])/i",
"<font style=\"color:\\2\">\\3</font>",$ptxt);
Line 197: $ptxt = preg_replace("/(\[c=(.*?)\])(.*?)(\[\/C\])/i",
"<font style=\"color:\\2\">\\3</font>",$ptxt);
Line 198: $ptxt = preg_replace("/(\[C=(.*?)\])(.*?)(\[\/c\])/i",
"<font style=\"color:\\2\">\\3</font>",$ptxt);
Line 199: $ptxt = preg_replace("/(\[C=(.*?)\])(.*?)(\[\/C\])/i",
"<font style=\"color:\\2\">\\3</font>",$ptxt);
Um ruimmente membro disposto pode postar uma mensagem contendo código
realmente facilmente em forum e módulos do guestbook. Exemplo:
(Esta prova-de-conceito vontade mostra uma janela que pode congelar
seu computador se usando Internet Explorer assim toma atenção)
[c=expression(alert('unsecure'))]texte[/c]Solution
========
Para Que evita a vulnerabilidade, soma um filtrar que bloqueará
;<>*()"'] caracters to lines 196 to 199:
Line 196: $ptxt = preg_replace("/(\[c=([#a-zA-Z0-9]*)\])(.*?)(\[\/c\])/i",
"<font style=\"color:\\2\">\\3</font>",$ptxt);
Line 197: $ptxt = preg_replace("/(\[c=([#a-zA-Z0-9]*)\])(.*?)(\[\/C\])/i",
"<font style=\"color:\\2\">\\3</font>",$ptxt);
Line 198: $ptxt = preg_replace("/(\[C=([#a-zA-Z0-9]*)\])(.*?)(\[\/c\])/i",
"<font style=\"color:\\2\">\\3</font>",$ptxt);
Line 199: $ptxt = preg_replace("/(\[C=([#a-zA-Z0-9]*)\])(.*?)(\[\/C\])/i",
"<font style=\"color:\\2\">\\3</font>",$ptxt);Vendor
status
==============
Time do GuppY developper tem sido contactado, um remendo tem estado
liberado hoje à noite que fixa o problema. Graças A aldweb
(freeguppy.org webmaster) para ele rápido answer.Links
=====
GuppY: http://www.freeguppy.org
Patch: http://www.freeguppy.org/file/guppy_patch2.zip
Version 2.4p1: http://www.freeguppy.org/file/guppy.zipThis vulnerability's
orginal paper can be found here: http://www.echu.org/articles/alertes/echu-alert4.txtDavid
Suzanne (dAs)
das[a]echu.org
http://www.echu.org -----------------------------------------------------------------
ECHU.ORG está não responsável ao empregado mal
da informação nós
forneça através de nosso advisories de segurança.
Esses advisories são um
serviço à comunidade de segurança profissional.
Em nenhum evento shall
ECHU.ORG está responsável para quaisquer consequências
qualquer que subindo fora de
ou em conexão com o uso ou espalha desta informação.
-----------------------------------------------------------------
Cracks's S.A