Re: [Linux] klogd 1.3-22 buffer overflow

From: Martin Schulze (joeyat_private)
Date: Tue Nov 17 1998 - 13:45:44 PST

  • Next message: Matt M. Morris: "Re: ISS Security Advisory: Hidden community string in SNMP"

    --J2SCkAp4GZ/dPZZf
    Content-Type: text/plain; charset=us-ascii
    Content-Transfer-Encoding: quoted-printable
    
    I'm the co-maintainer of the Linux sysklogd package which contains the
    klogd program for which a buffer overrun has been reported last week.
    
    First of all I'd like to complain about two things:
    
     a) The reports weren't made against the current version of the
        package.  The source for it is well known on sunsite.unc.edu as
        well as various mirrors.
    
        When reporting security related bugs you should *always* try to
        use the current version of a package instead of an ancient old
        one.
    
     b) Again the authors/maintainers of the package in question weren't
        notified and had to be informed through third parties.  This is
        not a good style.  (however I could imagine that this could be due
        to a))
    
    Now returning to the main problem.
    
    Michal Zalewski <lcamtufat_private> has found a buffer overrund in a
    version of klogd.  I have investigated this last week and wasn't able
    to reproduce it nor able to find the problematic piece of code.
    Instead of that I found a well thought parser with an anti-overrun
    mechanism.
    
    Going through the changelog entries I also found a note about a
    possible overrun at the location Michal has reported.  I dare to say,
    but this bug was fixed *two* years ago:
    
     * Tue Nov 19 10:15:36 PST 1996: Leland Olds <oldsat_private>
     *      Corrected vulnerability to buffer overruns by rewriting LogLine
     *      routine.  Obscenely long kernel messages will now be broken up
     *      into lines no longer than LOG_LINE_LENGTH.
     *
     *      The last version of LogLine was vulnerable to buffer overruns:
     *      - Kernel messages longer than LOG_LINE_LENGTH caused a buffer
     *        overrun.
     *      - If a line was determined to be shorter than LOG_LINE_LENGTH,
     *        the routine "ExpandKadds" could cause the line grow by
     *        an unknown amount and overrun a buffer.
     *      I turned these routines into a little parsing state machine that
     *      should not have these problems.
    
    Whith this information I've contacted Michal without receiving an
    answer as well as some of the contributors who seem to have found /
    fixed the bug.  I'm ashamed to admit that resposes were fare less than
    I would have expected.
    
    Anyway, the current version of klogd which comes with sysklogd is
    *not* vulnerable to the overrun in question.
    
    You'll find current versions of the sysklogd package at=20
    
            ftp://ftp.infodrom.north.de/pub/people/joey/sysklogd/
    
    Additionally the most recent stable version may also be found on
    SunSITE at
    
            ftp://sunsite.unc/edu/pub/Linux/system/daemons/
    
    Thanks for the attention,
    
            Joey
    
    --=20
    GNU GPL: "The source will be with you... always."
    
    --J2SCkAp4GZ/dPZZf
    Content-Type: application/pgp-signature
    
    -----BEGIN PGP SIGNATURE-----
    Version: 2.6.3ia
    
    iQCVAwUBNlHuiBRNm5Suj3z1AQGVBQQAiz7Ew7KtTbPxn6cS9GeDCUZk6iL+nbbl
    qlI7OGHideY1PCeHglLj+/OAXPdf+USUhbomCs8tPA5VlQiwnZLFB6ojc8bv5FYH
    K+f4mfdKjJXy7ggH+eWRFt2O/8sxULqiPz6s2HtplqoDJEv3Kxc+297iBGyrlRGi
    QWkHg/EZ+9w=
    =eO0A
    -----END PGP SIGNATURE-----
    
    --J2SCkAp4GZ/dPZZf--
    



    This archive was generated by hypermail 2b30 : Fri Apr 13 2001 - 14:23:43 PDT