CVE-2010-3493: Race Condition
A race condition was found in the way Python's SMTP proxy module (smtpd.py) processed retrieving of remote IP address the socket was connected to (the other end could close the connection sooner before the requester could get the peername). A remote, unauthenticated user could use this flaw to cause the running python SMTP instance to terminate with uncaught exception by issuing sequence of connection requests within short time interval.
References: [1] http://bugs.python.org/issue9129
Upstream patch: [2] http://svn.python.org/view?view=rev&revision=84289
Other sources
Multiple race conditions in smtpd.py in the smtpd module in Python 2.6, 2.7, 3.1, and 3.2 alpha allow remote attackers to cause a denial of service (daemon outage) by establishing and then immediately closing a TCP connection, leading to the accept function having an unexpected return value of None, an unexpected value of None for the address, or an ECONNABORTED, EAGAIN, or EWOULDBLOCK error, or the getpeername function having an ENOTCONN error, a related issue to CVE-2010-3492.
— Launchpad
Affected Software
Remediation
Patch Available
Patch Available
Event History
Frequently Asked Questions
What is CVE-2010-3493?
CVE-2010-3493 is a vulnerability in the smtpd module in Python 2.6, 2.7, 3.1, and 3.2 alpha that allows remote attackers to cause a denial of service (daemon outage) by establishing and then immediately closing a TCP connection, leading to the accept function having an unexpected return value of None.
What is the severity of CVE-2010-3493?
CVE-2010-3493 has a severity rating of medium with a CVSS score of 4.3.
How does CVE-2010-3493 affect Python 2.6 and 2.7?
CVE-2010-3493 affects Python 2.6 and 2.7 by allowing remote attackers to cause a denial of service by establishing and then immediately closing a TCP connection, leading to the accept function having an unexpected return value of None.
How does CVE-2010-3493 affect Python 3.1 and 3.2 alpha?
CVE-2010-3493 affects Python 3.1 and 3.2 alpha by allowing remote attackers to cause a denial of service by establishing and then immediately closing a TCP connection, leading to the accept function having an unexpected return value of None.
What is the solution for CVE-2010-3493?
The solution for CVE-2010-3493 is to update to a patched version of Python or apply the appropriate patch provided by the vendor.