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: | long sendmail timeouts let attacker prevent milter quiesce |
|---|---|
| Date: | Thu, 23 Jun 2005 12:08:34 -0500 (CDT) |
Summary: An attacker that can predict when a milter will need to quiesce input to allow for a reload may hold open an SMTP session for several hours. This will lead to a DoS condition on the mailserver. Background: Sendmail is a popular Mail Transfer Agent (MTA), used in many large sites that require advanced functionality. One feature is that it is extensible through the use of the milter (Mail fILTER) interface. The milter paradigm allows external programs to influence the SMTP session, including rejecting messages based on content. ClamAV is an opensource antivirus program. Unlike commercial solutions, ClamAV takes advantage of community support to acquire virus samples, and therefore can provide signatures for new threats very quickly. In a typical installation, checks for database updates occur every 15 minutes, making uncaught viruses extremely rare. ClamAV comes with a sendmail plugin, clamav-milter, that allows administrators to reject viruses during the SMTP session. Discussion: Some milters require a periodic reload of application data. A simple strategy is to quiesce input (by rejecting connections and waiting for current connections to terminate). Once the connection count drops to zero the reload can take place. Unfortunately, the long default timeouts in sendmail allow a slow sender to keep an SMTP session open for several hours. If the milter is rejecting new connections during this time, the milter on the mailserver is effectively DoSed. Furthermore, if sendmail is configured to require all messages to be scanned by the milter, the DoS may extend to include all mail delivery. As an example, clamav-milter versions 0.84 through 0.85d force the number of child threads to 0 before reloading the antivirus database. When a database update has been made available, an attacker can initiate an SMTP session with a vulnerable server, and simply keep the connection open as long as possible (several hours). The milter will be unable to reload, and (depending on configuration) sendmail may be unable to accept incoming messages. It is therefore possible for an attacker to DoS a mailserver with a single persistent connection. This issue was fixed in clamav-milter 0.85e, which scans new connections with the new database, and keeps the old database until it is finished scanning pre-existing connections. All users of clamav-milter are encouraged to upgrade to clamav-0.86. Those who cannot upgrade soon can mitigate the threat through one or more of the following strategies: - reduce the sendmail timeouts (reduces timespan of potential DoS) - run clamav-milter in --external mode (eliminates possibility of DoS) - run clmilter_watch after freshclam (recovers from an existing DoS) Notes: This threat is not particular to clamav-milter. Any milter that needs to wait for (or force) a quiescent state to reload data files is likely to be vulnerable to a similar attack. Sources of above-mentioned software: - Sendmail MTA : http://www.sendmail.org/ - Clam AntiVirus: http://www.clamav.net/ - clmilter_watch: http://www.itg.uiuc.edu/itg_software/clmilter_watch/ Timeline: May 25, 2005: clamav-milter author informed of the details of the attack May 27, 2005: Vulnerability eliminated in CVS (clamav-milter 0.85e) Jun 14, 2005: Release candidate of patched version (ClamAV 0.86rc1) Jun 20, 2005: Official release of patched version (ClamAV 0.86) Jun 23, 2005: Public disclosure Damian Menscher -- -=#| Physics Grad Student & SysAdmin @ U Illinois Urbana-Champaign |#=- -=#| 488 LLP, 1110 W. Green St, Urbana, IL 61801 Ofc:(217)333-0038 |#=- -=#| 4602 Beckman, VMIL/MS, Imaging Technology Group:(217)244-3074 |#=- -=#| <menscher@uiuc.edu> www.uiuc.edu/~menscher/ Fax:(217)333-9819 |#=- -=#| The above opinions are not necessarily those of my employers. |#=-
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | Vulnerability Statements, Mark Litchfield |
|---|---|
| Next by Date: | [OpenPKG-SA-2005.012] OpenPKG Security Advisory (sudo), OpenPKG |
| Previous by Thread: | Vulnerability Statements, Mark Litchfield |
| Next by Thread: | [OpenPKG-SA-2005.012] OpenPKG Security Advisory (sudo), OpenPKG |
| Indexes: | [Date] [Thread] [Top] [All Lists] |