Limit imaplib.IMAP4_SSL.readline()

The imaplib module doesn’t limit the amount of read data in its call to IMAP4_SSL.readline(). An erroneous or malicious IMAP server can trick the imaplib module to consume large amounts of memory.

  • Disclosure date: 2012-09-25 (Python issue bpo-16039 reported)

Fixed In

Python issue

imaplib: unlimited readline() from connection.

  • Python issue: bpo-16039
  • Creation date: 2012-09-25
  • Reporter: Christian Heimes

CVE-2013-1752

** REJECT ** Various versions of Python do not properly restrict readline calls, which allows remote attackers to cause a denial of service (memory consumption) via a long string, related to (1) httplib - fixed in 2.7.4, 2.6.9, and 3.3.3; (2) ftplib - fixed in 2.7.6, 2.6.9, 3.3.3; (3) imaplib - not yet fixed in 2.7.x, fixed in 2.6.9, 3.3.3; (4) nntplib - fixed in 2.7.6, 2.6.9, 3.3.3; (5) poplib - not yet fixed in 2.7.x, fixed in 2.6.9, 3.3.3; and (6) smtplib - not yet fixed in 2.7.x, fixed in 2.6.9, not yet fixed in 3.3.x. NOTE: this was REJECTed because it is incompatible with CNT1 “Independently Fixable” in the CVE Counting Decisions.

Timeline

Timeline using the disclosure date 2012-09-25 as reference: