[TOOL] HOON, an AT&T to Shellcode

From: SecuriTeam (support_at_securiteam.com)
Date: 08/12/03

  • Next message: SecuriTeam: "[NT] Directory Traversal Vulnerability in 121 WAM! Server"
    To: list@securiteam.com
    Date: 12 Aug 2003 14:38:00 +0200
    
    

    The following security advisory is sent to the securiteam mailing list, and can be found at the SecuriTeam web site: http://www.securiteam.com
    - - promotion

    Get Thawte's New Step-by-Step SSL Guide for MSIIS

    In this guide you will find out how to test, purchase, install
    and use a Thawte Digital Certificate on your MSIIS web server.
    Throughout, best practices for set-up are highlighted to help you
    ensure efficient ongoing management of your encryption keys and digital
    certificates. Get your copy of this new guide now:
    http://ad.doubleclick.net/clk;5903126;8265119;j

    - - - - - - - - -

      HOON, an AT&T to Shellcode
    ------------------------------------------------------------------------

    DETAILS

    HOON is a python shellcode creator. It does not just create shellcode, it
    can parse AT&T's syntax assembler and create the shellcode from that.

    HOON is a product of not having a decent PUBLIC shellcode creator and it
    works pretty well too. Some things to note though, it does not have a huge
    instruction/opcode database and this will be fixed in future releases. It
    also does not handle jump/call's very well or addressing (movl (%eax),%esi
    for example) these are minor issues. Most definitely have a look at the
    tokening system - if someone can port this to Intel syntax, it would be
    great.

    To add more entries, go to the init (not __init__) method and use
    self.addreg (ignore the name ;)) with the instruction/format of
    instruction/opcode. Opcode will need a base (commonly \xc0) if it's all
    register instruction.

    single instruction:
    self.addreg("int3",self.format["single"],"\xcc")
    instruction with format instruction reg,reg
    self.addreg("movl",self.format["insregreg"],"\xc7\xc0")

     * note, Python (not ActivePython) doesn't like values with it's strips()
    so change that will a replace(self.null,"")

    ADDITIONAL INFORMATION

    Download the tool from the following location:
    <http://felinemenace.org/~nd/HOON.tar.bz2>
    http://felinemenace.org/~nd/HOON.tar.bz2

    The information has been provided by <mailto:nd@felinemenace.org> ned.

    ========================================

    This bulletin is sent to members of the SecuriTeam mailing list.
    To unsubscribe from the list, send mail with an empty subject line and body to: list-unsubscribe@securiteam.com
    In order to subscribe to the mailing list, simply forward this email to: list-subscribe@securiteam.com

    ====================
    ====================

    DISCLAIMER:
    The information in this bulletin is provided "AS IS" without warranty of any kind.
    In no event shall we be liable for any damages whatsoever including direct, indirect, incidental, consequential, loss of business profits or special damages.


  • Next message: SecuriTeam: "[NT] Directory Traversal Vulnerability in 121 WAM! Server"

    Relevant Pages