9 comments on “DoS? Then Who Was Phone?

  1. I don’t think you can say this is the fault of alloca.
    The programmer made the decision to trust user supplied data in memory manipulating operations. Even if the implementation of alloca checked the size argument in the same manner fgets does this bug, introduced by the programmer, would still result in at least a denial of service condition.

  2. Pingback: Kritische Schwachstellen in Asterisk | Edv-Sicherheitskonzepte.de – News Blog aus vielen Bereichen

  3. Pingback: Kritische Schwachstellen in Asterisk | virtualfiles.net

  4. Pingback: IT Secure Site » Blog Archive » Critical vulnerabilities in Asterisk

  5. Fantastic exploit and writeup! Thanks for taking the time to explain everything so well.

    The general approach reminds me a bit of Jon Oberheide’s half-nelson.c, which involves colliding two Linux kernel stacks.

    > I found it interesting that the code looks as though it may have been written with memory management issues in mind, as the check to ensure content_length is not zero would catch an integer overflow caused by adding one to the value.

    I think they’re just checking that content_length got set within the for loop. At any rate, content_length is a signed int, so overflow behavior is undefined — of course, many developers don’t know this.

  6. Pingback: Weekendowa Lektura | Zaufana Trzecia Strona

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s