PROGRAM: JAWmail VENDOR: Rudi Benkovic <email@example.com> et al. HOMEPAGE: http://www.jawmail.org/ VULNERABLE VERSIONS: 1.0-rc1, possibly others IMMUNE VERSIONS: 2.0-rc1 and later LOGIN REQUIRED: no SEVERITY: high
JAWmail (Just Another Web Mail) is a pretty ambitious web mail client project. It is written in PHP, and it is published under the GNU GPL.
There are several cross-site scripting holes in JAWmail that are triggered by reading incoming e-mail messages. An attacker can use them to take over a victim's e-mail account by simply sending certain malicious e-mails to the victim.
1) Read Mail shows the names of attached files without cleaning those names (removing HTML elements).
2) text/html mails are not cleaned at all, when they are shown in a pop-up window.
3) When Read Mail displays text/html mails, they are cleaned with PHP's strip_tags() function with some appropriate parameters. This function removes evil HTML elements, but not nice HTML elements with evil HTML attributes, so you can still perform XSS attacks like:
// Ulf Harnhammar firstname.lastname@example.org http://www.metaur.nu/