Thursday, September 7, 2017

ebook gratuito Programming Linux Anti Reversing Techniques

ebook gratuito Programming Linux Anti Reversing Techniques


Programming Linux Anti-Reversing Techniques es un libro gratuito de Jacob Baines que muestra al lector c�mo programar y analizar las t�cnicas m�s conocidas de anti-reversing en Linux. El libro muestra c�mo un reverser analiza un binario con herramientas como IDA, Radare2, GDB, readelf y m�s. El c�digo es presentado al lector listo para que pueda compilarlo y analizarlo por s� mismo.

Tabla de contenidos

    Preface
        Why Read This Book?
        Topics Not Covered
        Prerequisites
        Code and Command Output
    Chapter 1: Introductions
        Introducing �Trouble�
        Using CMake
        The Code
        Compiling
        Executing
        Accessing the Shell
    Chapter 2: Compiler Options
        -g
            Recovering the Bind Shell Password with Hexdump
            Recovering the Bind Shell Password with GDB
            The Debugging Information in IDA
            Removing the Debugging Information
            Case Study: XOR DDOS
        -s
            SYMTAB vs. DYNSYM
            Finding the Bind Shell Password Using .symtab
            Case Study: The FILE Symbol
            Examing Trouble After -s
        -fvisibility
            Looking at FUNC symbols
            Hiding FUNC symbols
        -O
            Corrected Block Tiny Encryption Algorithm (XXTEA)
            -Os
            -O3
            -funroll-loops
        -static
            Resolving Functions at Runtime
            ltrace
            LD_PRELOAD
            Using musl
    Chapter 3: File Format Hacks
        The Strip Utility
        Removing the Section Headers Table
        Little Endian or Big Endian?
        The Sections Are a Lie
            Flipping the Executable Bit
            Lying with .init
            Hiding the Entry Point
        Mixing the Symbols
    Chapter 4: Fighting Off String Analysis
        Code Reorganization
        Stack Strings
        XOR Stack String
        Function Encryption
            Computing the Function�s Size Using a Linker Script
            Decryption Logic
            Encryption Logic
        Creating a Cryptor
            Implementing the Cryptor
            Analyzing the Cryptor
    Chapter 5: Obstructing Code Flow Analysis
        Indirect Function Calls
        Signals
        Early Return
        Jump Over an Invalid Byte
        Jump! Jump!
        Always Follow the Conditional
        Overlapping Instructions
    Chapter 6: Evading the Debugger
        Trace Me
        Trapping the Debugger
        Becoming Attached
        madvise
        prctl
        Detection Before main()
        Computing Function Checksums
    Conclusion: All That We Fall For
    Notes

Proyecto: https://github.com/antire-book


download file now