• Wyszukiwanie zaawansowane
  • Kategorie
  • Kategorie BISAC
  • Książki na zamówienie
  • Promocje
  • Granty
  • Książka na prezent
  • Opinie
  • Pomoc
  • Załóż konto
  • Zaloguj się

Foundations of Linux Debugging, Disassembling, and Reversing: Analyze Binary Code, Understand Stack Memory Usage, and Reconstruct C/C++ Code with Inte » książka

zaloguj się | załóż konto
Logo Krainaksiazek.pl

koszyk

konto

szukaj
topmenu
Księgarnia internetowa
Szukaj
Książki na zamówienie
Promocje
Granty
Książka na prezent
Moje konto
Pomoc
 
 
Wyszukiwanie zaawansowane
Pusty koszyk
Bezpłatna dostawa dla zamówień powyżej 20 złBezpłatna dostawa dla zamówień powyżej 20 zł

Kategorie główne

• Nauka
 [2946912]
• Literatura piękna
 [1852311]

  więcej...
• Turystyka
 [71421]
• Informatyka
 [150889]
• Komiksy
 [35717]
• Encyklopedie
 [23177]
• Dziecięca
 [617324]
• Hobby
 [138808]
• AudioBooki
 [1671]
• Literatura faktu
 [228371]
• Muzyka CD
 [400]
• Słowniki
 [2841]
• Inne
 [445428]
• Kalendarze
 [1545]
• Podręczniki
 [166819]
• Poradniki
 [480180]
• Religia
 [510412]
• Czasopisma
 [525]
• Sport
 [61271]
• Sztuka
 [242929]
• CD, DVD, Video
 [3371]
• Technologie
 [219258]
• Zdrowie
 [100961]
• Książkowe Klimaty
 [124]
• Zabawki
 [2341]
• Puzzle, gry
 [3766]
• Literatura w języku ukraińskim
 [255]
• Art. papiernicze i szkolne
 [7810]
Kategorie szczegółowe BISAC

Foundations of Linux Debugging, Disassembling, and Reversing: Analyze Binary Code, Understand Stack Memory Usage, and Reconstruct C/C++ Code with Inte

ISBN-13: 9781484291528 / Angielski / Miękka / 2023 / 190 str.

Dmitry Vostokov
Foundations of Linux Debugging, Disassembling, and Reversing: Analyze Binary Code, Understand Stack Memory Usage, and Reconstruct C/C++ Code with Inte Vostokov, Dmitry 9781484291528 Apress - książkaWidoczna okładka, to zdjęcie poglądowe, a rzeczywista szata graficzna może różnić się od prezentowanej.

Foundations of Linux Debugging, Disassembling, and Reversing: Analyze Binary Code, Understand Stack Memory Usage, and Reconstruct C/C++ Code with Inte

ISBN-13: 9781484291528 / Angielski / Miękka / 2023 / 190 str.

Dmitry Vostokov
cena 209,01
(netto: 199,06 VAT:  5%)

Najniższa cena z 30 dni: 208,44
Termin realizacji zamówienia:
ok. 16-18 dni roboczych
Dostawa w 2026 r.

Darmowa dostawa!

Review topics ranging from Intel x64 assembly language instructions and writing programs in assembly language, to pointers, live debugging, and static binary analysis of compiled C and C++ code. This book is ideal for Linux desktop and cloud developers.Using the latest version of Debian, you’ll focus on the foundations of the diagnostics of core memory dumps, live and postmortem debugging of Linux applications, services, and systems, memory forensics, malware, and vulnerability analysis. This requires an understanding of x64 Intel assembly language and how C and C++ compilers generate code, including memory layout and pointers.This book provides the back­ground knowledge and practical foundations you’ll need in order to master internal Linux program structure and behavior. It consists of practical step-by-step exercises of increasing complexity with explanations and ample diagrams. You’ll also work with the GDB debugger and use it for disassembly and reversing.By the end of the book, you will have a solid understanding of how Linux C and C++ compilers generate binary code. In addition, you will be able to analyze such code confidently, understand stack memory usage, and reconstruct original C/C++ code.Foundations of Linux Debugging, Disassembling, and Reversingis the perfect companion toFoundations of ARM64 Linux Debugging, Disassembling, and Reversingfor readers interested in the cloud or cybersecurity.What You'll LearnReview the basics of x64 assembly languageExamine the essential GDB debugger commands for debugging and binary analysisStudy C and C++ compiler code generation with and without compiler optimizationsLook at binary code disassembly and reversing patternsSee how pointers in C and C++ are implemented and usedWho This Book Is ForSoftware support and escalation engineers, cloud security engineers, site reliability engineers, DevSecOps, platform engineers, software testers, Linux C/C++ software engineers and security researchers without Intel x64 assembly language background, beginners learning Linux software reverse engineering techniques, and engineers coming from non-Linux environments.

Review topics ranging from Intel x64 assembly language instructions and writing programs in assembly language, to pointers, live debugging, and static binary analysis of compiled C and C++ code. This book is ideal for Linux desktop and cloud developers. Using the latest version of Debian, you’ll focus on the foundations of the diagnostics of core memory dumps, live and postmortem debugging of Linux applications, services, and systems, memory forensics, malware, and vulnerability analysis. This requires an understanding of x64 Intel assembly language and how C and C++ compilers generate code, including memory layout and pointers. This book provides the back­ground knowledge and practical foundations you’ll need in order to master internal Linux program structure and behavior. It consists of practical step-by-step exercises of increasing complexity with explanations and ample diagrams. You’ll also work with the GDB debugger and use it for disassembly and reversing.  By the end of the book, you will have a solid understanding of how Linux C and C++ compilers generate binary code. In addition, you will be able to analyze such code confidently, understand stack memory usage, and reconstruct original C/C++ code. Foundations of Linux Debugging, Disassembling, and Reversing is the perfect companion to Foundations of ARM64 Linux Debugging, Disassembling, and Reversing for readers interested in the cloud or cybersecurity.


What You'll Learn
  • Review the basics of x64 assembly language
  • Examine the essential GDB debugger commands for debugging and binary analysis 
  • Study C and C++ compiler code generation with and without compiler optimizations 
  • Look at binary code disassembly and reversing patterns
  • See how pointers in C and C++ are implemented and used
        Who This Book Is For
        Software support and escalation engineers, cloud security engineers, site reliability engineers, DevSecOps, platform engineers, software testers, Linux C/C++ software engineers and security researchers without Intel x64 assembly language background, beginners learning Linux software reverse engineering techniques, and engineers coming from non-Linux environments.

        Kategorie:
        Informatyka, Bazy danych
        Kategorie BISAC:
        Computers > Programming - Open Source
        Computers > Operating Systems - General
        Wydawca:
        Apress
        Język:
        Angielski
        ISBN-13:
        9781484291528
        Rok wydania:
        2023
        Dostępne języki:
        Ilość stron:
        190
        Oprawa:
        Miękka
        Dodatkowe informacje:
        Wydanie ilustrowane

        Chapter One - x64.1: Memory, Registers, and Simple Arithmetic 11
        Memory and Registers inside an Idealized Computer 11
        Memory and Registers inside Intel 64-bit PC 12
        “Arithmetic” Project: Memory Layout and Registers 13
        “Arithmetic” Project: A Computer Program 14
        “Arithmetic” Project: Assigning Numbers to Memory Locations 15
        Assigning Numbers to Registers 17
        “Arithmetic” Project: Adding Numbers to Memory Cells 18
        Incrementing/Decrementing Numbers in Memory and Registers 21
        Multiplying Numbers 24

        Chapter Two - x64.2: Code Optimization 27
        “Arithmetic” Project: C/C++ Program 27
        Downloading GDB 28
        GDB Disassembly Output – No Optimization 29
        GDB Disassembly Output – Optimization 32

        Chapter Three - x64.3: Number Representations 33
        Numbers and Their Representations 33
        Decimal Representation (Base Ten) 34
        Ternary Representation (Base Three) 35
        Binary Representation (Base Two) 36
        Hexadecimal Representation (Base Sixteen) 37
        Why are Hexadecimals Used? 38

        Chapter Four - x64.4: Pointers 41
        A Definition 41
        “Pointers” Project: Memory Layout and Registers 42
        “Pointers” Project: Calculations 43
        Using Pointers to Assign Numbers to Memory Cells 44
        Adding Numbers Using Pointers 50
        Incrementing Numbers Using Pointers 53
        Multiplying Numbers Using Pointers 56

        Chapter Five - x64.5: Bytes, Words, Double, and Quad Words 61
        Using Hexadecimal Numbers 61
        Byte Granularity 62
        Bit Granularity 63
        Memory Layout 64

        Chapter Six - x64.6: Pointers to Memory 67
        Pointers Revisited 67
        Addressing Types 68
        Registers Revisited 73
        NULL Pointers 74
        Invalid Pointers 75
        Variables as Pointers 76
        Pointer Initialization 77
        Initialized and Uninitialized Data 78
        More Pseudo Notation 79
        “MemoryPointers” Project: Memory Layout 80

        Chapter Seven - x64.7: Logical Instructions and RIP 89
        Instruction Format 89
        Logical Shift Instructions 90
        Logical Operations 91
        Zeroing Memory or Registers 92
        Instruction Pointer 93
        Code Section 95

        Chapter Eight - x64.8: Reconstructing a Program with Pointers 97
        Example of Disassembly Output: No Optimization 97
        Reconstructing C/C++ Code: Part 1 99
        Reconstructing C/C++ Code: Part 2 101
        Reconstructing C/C++ Code: Part 3 103
        Reconstructing C/C++ Code: C/C++ program 104
        Example of Disassembly Output: Optimized Program 105

        Chapter Nine - x64.9: Memory and Stacks 107
        Stack: A Definition 107
        Stack Implementation in Memory 108
        Things to Remember 110
        PUSH Instruction 111
        POP instruction 112
        Register Review 113
        Application Memory Simplified 115
        Stack Overflow 116
        Jumps 117
        Calls 119
        Call Stack 121
        Exploring Stack in GDB 123

        Chapter Ten - x64.10: Frame Pointer and Local Variables 127
        Stack Usage 127
        Register Review 128
        Addressing Array Elements 129
        Stack Structure (No Function Parameters) 130
        Function Prolog 131
        Raw Stack (No Local Variables and Function Parameters) 132
        Function Epilog 134
        “Local Variables” Project 135
        Disassembly of Optimized Executable 138

        Chapter Eleven - x64.11: Function Parameters 139
        “FunctionParameters” Project 139
        Stack Structure 140
        Function Prolog and Epilog 142
        Project Disassembled Code with Comments 144
        Parameter Mismatch Problem 147

        Chapter Twelve - x64.12: More Instructions 149
        CPU Flags Register 149
        The Fast Way to Fill Memory 150
        Testing for 0 152
        TEST - Logical Compare 153
        CMP – Compare Two Operands 154
        TEST or CMP? 155
        Conditional Jumps 156
        The Structure of Registers 157
        Function Return Value 158
        Using Byte Registers 159

        Chapter Thirteen - x64.13: Function Pointer Parameters 161
        “FunctionPointerParameters” Project 161
        Commented Disassembly 162

        Chapter Fourteen - x64.14: Summary of Code Disassembly Patterns 169
        Function Prolog / Epilog 169
        LEA (Load Effective Address) 171
        Passing Parameters 172
        Accessing Parameters and Local Variables 173

        Dmitry Vostokov is an internationally recognized expert, speaker, educator, scientist, inventor, and author. He is the founder of the pattern-oriented software diagnostics, forensics, and prognostics discipline (Systematic Software Diagnostics), and Software Diagnostics Institute (DA+TA: DumpAnalysis.org + TraceAnalysis.org). Vostokov has also authored books on software diagnostics, anomaly detection and analysis, software and memory forensics, root cause analysis and problem solving, memory dump analysis, debugging, software trace and log analysis, reverse engineering, and malware analysis. He has over 25 years of experience in software architecture, design, development, and maintenance in various industries, including leadership, technical, and people management roles. In his spare time, he presents various topics on Debugging.TV and explores Software Narratology, its further development as Narratology of Things and Diagnostics of Things (DoT), Software Pathology, and Quantum Software Diagnostics. His current interest areas are theoretical software diagnostics and its mathematical and computer science foundations, application of formal logic, artificial intelligence, machine learning, and data mining to diagnostics and anomaly detection, software diagnostics engineering and diagnostics-driven development, diagnostics workflow, and interaction. Recent interest areas also include cloud native computing, security, automation, functional programming, and applications of category theory to software development and big data. He is based out of Dublin, Ireland.

        Review topics ranging from Intel x64 assembly language instructions and writing programs in assembly language, to pointers, live debugging, and static binary analysis of compiled C and C++ code. This book is ideal for Linux desktop and cloud developers. 

        Using the latest version of Debian, you’ll focus on the foundations of the diagnostics of core memory dumps, live and postmortem debugging of Linux applications, services, and systems, memory forensics, malware, and vulnerability analysis. This requires an understanding of x64 Intel assembly language and how C and C++ compilers generate code, including memory layout and pointers.

        This book provides the back­ground knowledge and practical foundations you’ll need in order to master internal Linux program structure and behavior. It consists of practical step-by-step exercises of increasing complexity with explanations and ample diagrams. You’ll also work with the GDB debugger and use it for disassembly and reversing.  

        By the end of the book, you will have a solid understanding of how Linux C and C++ compilers generate binary code. In addition, you will be able to analyze such code confidently, understand stack memory usage, and reconstruct original C/C++ code. Foundations of Linux Debugging, Disassembling, and Reversing is the perfect companion to Foundations of ARM64 Linux Debugging, Disassembling, and Reversing for readers interested in the cloud or cybersecurity.


        You will:
        • Review the basics of x64 assembly language
        • Examine the essential GDB debugger commands for debugging and binary analysis 
        • Study C and C++ compiler code generation with and without compiler optimizations 
        • Look at binary code disassembly and reversing patterns
        • See how pointers in C and C++ are implemented and used



              Udostępnij

              Facebook - konto krainaksiazek.pl



              Opinie o Krainaksiazek.pl na Opineo.pl

              Partner Mybenefit

              Krainaksiazek.pl w programie rzetelna firma Krainaksiaze.pl - płatności przez paypal

              Czytaj nas na:

              Facebook - krainaksiazek.pl
              • książki na zamówienie
              • granty
              • książka na prezent
              • kontakt
              • pomoc
              • opinie
              • regulamin
              • polityka prywatności

              Zobacz:

              • Księgarnia czeska

              • Wydawnictwo Książkowe Klimaty

              1997-2025 DolnySlask.com Agencja Internetowa

              © 1997-2022 krainaksiazek.pl
                   
              KONTAKT | REGULAMIN | POLITYKA PRYWATNOŚCI | USTAWIENIA PRYWATNOŚCI
              Zobacz: Księgarnia Czeska | Wydawnictwo Książkowe Klimaty | Mapa strony | Lista autorów
              KrainaKsiazek.PL - Księgarnia Internetowa
              Polityka prywatnosci - link
              Krainaksiazek.pl - płatnośc Przelewy24
              Przechowalnia Przechowalnia