• Benjamin Peterson's avatar
    [3.6] bpo-32981: Fix catastrophic backtracking vulns (GH-5955) · c9516754
    Benjamin Peterson yazdı
    * Prevent low-grade poplib REDOS (CVE-2018-1060)
    
    The regex to test a mail server's timestamp is susceptible to
    catastrophic backtracking on long evil responses from the server.
    
    Happily, the maximum length of malicious inputs is 2K thanks
    to a limit introduced in the fix for CVE-2013-1752.
    
    A 2KB evil response from the mail server would result in small slowdowns
    (milliseconds vs. microseconds) accumulated over many apop calls.
    This is a potential DOS vector via accumulated slowdowns.
    
    Replace it with a similar non-vulnerable regex.
    
    The new regex is RFC compliant.
    The old regex was non-compliant in edge cases.
    
    * Prevent difflib REDOS (CVE-2018-1061)
    
    The default regex for IS_LINE_JUNK is susceptible to
    catastrophic backtracking.
    This is a potential DOS vector.
    
    Replace it with an equivalent non-vulnerable regex.
    
    Also introduce unit and REDOS tests for difflib.
    Co-authored-by: 's avatarTim Peters <tim.peters@gmail.com>
    Co-authored-by: Christian Heimes <christian@python.org>.
    (cherry picked from commit 0e6c8ee2)
    c9516754
Adı
Son kayıt (commit)
Son güncelleme
..
NEWS.d Loading commit data...
ACKS Loading commit data...
HISTORY Loading commit data...
Porting Loading commit data...
README Loading commit data...
README.AIX Loading commit data...
README.coverity Loading commit data...
README.valgrind Loading commit data...
SpecialBuilds.txt Loading commit data...
coverity_model.c Loading commit data...
gdbinit Loading commit data...
indent.pro Loading commit data...
python-config.in Loading commit data...
python-config.sh.in Loading commit data...
python-wing3.wpr Loading commit data...
python-wing4.wpr Loading commit data...
python-wing5.wpr Loading commit data...
python.man Loading commit data...
python.pc.in Loading commit data...
svnmap.txt Loading commit data...
valgrind-python.supp Loading commit data...
vgrindefs Loading commit data...