Results 1 to 5 of 5

Thread: Reverse engineering tools

  1. #1
    Join Date
    Jun 2006
    Location
    India
    Posts
    14
    Thanks
    2
    Qt products
    Qt3 Qt4
    Platforms
    Windows

    Exclamation Reverse engineering tools

    hi

    are there any open source tools (compatible with QT & win XP), that perform reverse engineering.

    I have found a very good software (Imagix 4D) , but unfortunately , it is commertial (Costs around $2k, eval version for 2 weeks only). can any one suggest me free tools similar to Imagix 4D(for reverse engineering process).



    thanks in advance
    vvbkumar

  2. #2
    Join Date
    Jan 2006
    Location
    Warsaw, Poland
    Posts
    33,359
    Thanks
    3
    Thanked 5,015 Times in 4,792 Posts
    Qt products
    Qt3 Qt4 Qt5 Qt/Embedded
    Platforms
    Unix/X11 Windows Android Maemo/MeeGo
    Wiki edits
    10

    Default Re: Reverse engineering tools

    Quote Originally Posted by vvbkumar
    are there any open source tools (compatible with QT & win XP), that perform reverse engineering.
    I think you should start by stating what exactly do you want to reverse eng. I mean, what results do you expect to achieve.

  3. #3
    Join Date
    Sep 2010
    Posts
    4
    Thanks
    2
    Qt products
    Qt3 Qt4
    Platforms
    MacOS X

    Default Re: Reverse engineering tools

    The best reverse engineering tools are all shell based:

    - nm <binary> returns all symbols used by the app
    - strings <binary> returns all strings inside the binary
    - lsof -p <pid> monitors files, sockets and files used by the application
    - dtrace <process>
    - strace <process>
    - ltrace <process> all do more or less the same. monitor the calls of the app
    - dtruss (mac)
    - gdb -atacched to process-
    - You can rewrite also standard C/C++ functions used by the application. This is known as method swizzling. Use LD_PRELOAD on linux and DYLD on mac.

  4. #4
    Join Date
    Sep 2010
    Posts
    145
    Thanks
    1
    Thanked 18 Times in 17 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11 Windows

    Default Re: Reverse engineering tools

    On Windows, you can exploit the way that Windows loads dynamic link libraries. Let's say, for example, that App(X) loads dll(Y). By creating your own dll (Z) of the same name and binary interface, you can have the application load Z instead of Y, with all of your calls being forwarded to Y. This allows you access to the parameters. The same data can be seen with a debugger, but this way allows you to create more readable/custom output via logging. Your options, overall, vary greatly with how the application is structured and the (non)existence of encryption/compression (upx compression and bogus PE header data can really screw alot of debuggers up).

  5. #5
    Join Date
    Sep 2009
    Location
    UK
    Posts
    2,447
    Thanks
    6
    Thanked 348 Times in 333 Posts
    Qt products
    Qt4
    Platforms
    Windows

    Default Re: Reverse engineering tools

    At work, I use Hex-Rays IDA Pro, but it's commercial, and they even refuse to sell it to individuals - you must be an established company with a known history.

    At home, I typically use the free Ollydbg with lots of other tools, some of which I've created myself.

    For DLL exploitation, a decent utility is WinAPIOverride. It can analyse function calls, and even replace functions with your own.

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Digia, Qt and their respective logos are trademarks of Digia Plc in Finland and/or other countries worldwide.