دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
ویرایش:
نویسندگان: A. P. David
سری:
ISBN (شابک) : 9781800201842, 1800201842
ناشر: Packt Publishing Ltd
سال نشر: 2021
تعداد صفحات: 322
[501]
زبان: English
فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود)
حجم فایل: 21 Mb
در صورت تبدیل فایل کتاب Ghidra Software Reverse Engineering for Beginners: Analyze, identify, and avoid malicious code and potential threats in your networks and systems به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب مهندسی معکوس نرم افزار Ghidra برای مبتدیان: تجزیه و تحلیل ، شناسایی و اجتناب از کدهای مخرب و تهدیدات احتمالی در شبکه ها و سیستم های خود نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
باگ های پتانسیل را در کد یا برنامه خود شناسایی کنید و ابزارهای خود را با استفاده از چارچوب مهندسی معکوس Ghidra توسعه داده شده توسط پروژه NSA توسعه دهید. برنامه های افزودنی برای انجام جداسازی، مونتاژ، حذف و اسکریپت نویسی کشف کنید که چگونه می توانید نیازهای امنیت سایبری خود را با ایجاد وصله ها و ابزارهای سفارشی برآورده کنید. کد کامپایل شده بر روی هر پلتفرمی، خواه لینوکس، ویندوز یا macOS. این کتاب نقطه شروعی برای توسعه دهندگانی است که علاقه مند به استفاده از Ghidra برای ایجاد وصله ها و گسترش قابلیت های ابزار برای رفع نیازهای امنیت سایبری خود هستند. با نصب Ghidra و بررسی ویژگیهای آن شروع میکنید و به تدریج یاد میگیرید که چگونه کارهای مهندسی معکوس را با استفاده از افزونههای Ghidra خودکار کنید. سپس خواهید دید که چگونه یک محیط برای انجام تجزیه و تحلیل بدافزار با استفاده از Ghidra و نحوه استفاده از آن در حالت هدلس تنظیم کنید. همانطور که پیشرفت می کنید، از برنامه نویسی Ghidra برای خودکار کردن کار شناسایی آسیب پذیری ها در باینری های اجرایی استفاده خواهید کرد. این کتاب همچنین موضوعات پیشرفته ای مانند توسعه پلاگین های Ghidra، توسعه رابط کاربری گرافیکی خود، ترکیب معماری های فرآیند جدید در صورت نیاز، و کمک به پروژه Ghidra را پوشش می دهد. در پایان این کتاب Ghidra، مهارتهایی را که برای استفاده از قدرت Ghidra برای تجزیه و تحلیل و اجتناب از آسیبپذیریهای احتمالی در کد و شبکهها نیاز دارید، توسعه خواهید داد. آنچه یاد خواهید گرفت با استفاده از ویژگیها، افزونهها و برنامههای افزودنی Ghidra آشنا شوید بدانید که چگونه میتوانید به Ghidra کمک کنید بر روی بدافزار مهندسی معکوس تمرکز کنید و ممیزی باینری انجام دهید. کارهای مهندسی معکوس را با افزونههای Ghidra بهطور خودکار انجام دهید. برنامههای افزودنی، اسکریپتها و ویژگیهای Ghidra خود کار جستجوی آسیبپذیریها در باینریهای اجرایی با استفاده از برنامهنویسی Ghidra را بیابید نحوه استفاده از Ghidra در حالت هدلس را بیابید این کتاب برای چه کسی است. با درک کمی از ملزومات امنیت سایبری. قبل از شروع کار با این کتاب، دانش قبلی جاوا یا پایتون به همراه تجربه در برنامه نویسی یا توسعه برنامه ها ضروری است.
Detect potentials bugs in your code or program and develop your own tools using the Ghidra reverse engineering framework developed by the NSA project Key Features Make the most of Ghidra on different platforms such as Linux, Windows, and macOS Leverage a variety of plug-ins and extensions to perform disassembly, assembly, decompilation, and scripting Discover how you can meet your cybersecurity needs by creating custom patches and tools Book Description Ghidra, an open source software reverse engineering (SRE) framework created by the NSA research directorate, enables users to analyze compiled code on any platform, whether Linux, Windows, or macOS. This book is a starting point for developers interested in leveraging Ghidra to create patches and extend tool capabilities to meet their cybersecurity needs. You'll begin by installing Ghidra and exploring its features, and gradually learn how to automate reverse engineering tasks using Ghidra plug-ins. You'll then see how to set up an environment to perform malware analysis using Ghidra and how to use it in the headless mode. As you progress, you'll use Ghidra scripting to automate the task of identifying vulnerabilities in executable binaries. The book also covers advanced topics such as developing Ghidra plug-ins, developing your own GUI, incorporating new process architectures if needed, and contributing to the Ghidra project. By the end of this Ghidra book, you'll have developed the skills you need to harness the power of Ghidra for analyzing and avoiding potential vulnerabilities in code and networks. What you will learn Get to grips with using Ghidra's features, plug-ins, and extensions Understand how you can contribute to Ghidra Focus on reverse engineering malware and perform binary auditing Automate reverse engineering tasks with Ghidra plug-ins Become well-versed with developing your own Ghidra extensions, scripts, and features Automate the task of looking for vulnerabilities in executable binaries using Ghidra scripting Find out how to use Ghidra in the headless mode Who this book is for This SRE book is for developers, software engineers, or any IT professional with some understanding of cybersecurity essentials. Prior knowledge of Java or Python, along with experience in programming or developing applications, is required before getting started with this book.
Ghidra Software Reverse Engineering for Beginners Why subscribe? Contributors About the author About the reviewer Packt is searching for authors like you Preface Who this book is for What this book covers To get the most out of this book Download the example code files Code in Action Download the color images Conventions used Get in touch Reviews Section 1: Introduction to Ghidra Chapter 1: Getting Started with Ghidra Technical requirements WikiLeaks Vault 7 NSA release Ghidra versus IDA and many other competitors Ghidra overview Installing Ghidra Overview of Ghidra's features Summary Questions Chapter 2: Automating RE Tasks with Ghidra Scripts Technical requirements Using and adapting existing scripts The script class Script development Summary Questions Chapter 3: Ghidra Debug Mode Technical requirements Setting up the Ghidra development environment Overviewing the software requirements Installing the Java JDK Installing the Eclipse IDE Installing PyDev Installing GhidraDev Debugging the Ghidra code and Ghidra scripts Debugging Ghidra scripts from Eclipse Debugging any Ghidra component from Eclipse Ghidra RCE vulnerability Explaining the Ghidra RCE vulnerability Exploiting the Ghidra RCE vulnerability Fixing the Ghidra RCE vulnerability Looking for vulnerable computers Summary Questions Further reading Chapter 4: Using Ghidra Extensions Technical requirements Installing existing Ghidra extensions Analyzing the code of the Sample Table Provider plugin Understanding the Ghidra extension skeleton Analyzers Filesystems Plugins Exporters Loaders Developing a Ghidra extension Summary Questions Further reading Section 2: Reverse Engineering Chapter 5: Reversing Malware Using Ghidra Technical requirements Setting up the environment Looking for malware indicators Looking for strings Intelligence information and external sources Checking import functions Dissecting interesting malware sample parts The entry point function Analyzing the 0x00453340 function Analyzing the 0x00453C10 function Analyzing the 0x0046EA60 function Analyzing the 0x0046BEB0 function Analyzing the 0x0046E3A0 function By analyzing this function, we notice that the pipe is used for some kind of synchronization. The CreateThread API function receives as parameters the function to execute as a thread and an argument to pass to the function; so, when a thread creation appears, we have to analyze a new function – in this case, lpStartAddress_00449049: Analyzing the 0x004559B0 function Analyzing the 0x004554E0 function Analyzing the 0x0046C860 function Analyzing the 0x0046A100 function Summary Questions Further reading Chapter 6: Scripting Malware Analysis Technical requirements Using the Ghidra scripting API Writing scripts using the Java programming language Writing scripts using the Python programming language Deobfuscating malware samples using scripts The delta offset Translating API hashes to addresses Deobfuscating the hash table using Ghidra scripting Improving the scripting results Summary Questions Further reading Chapter 7: Using Ghidra Headless Analyzer Technical requirements Why use headless mode? Creating and populating projects Performing analysis on imported or existing binaries Running non-GUI scripts in a project Summary Questions Further reading Chapter 8: Auditing Program Binaries Technical requirements Understanding memory corruption vulnerabilities Understanding the stack Stack-based buffer overflow Understanding the heap Heap-based buffer overflow Format strings Finding vulnerabilities using Ghidra Exploiting a simple stack-based buffer overflow Summary Questions Further reading Chapter 9: Scripting Binary Audits Technical requirements Looking for vulnerable functions Retrieving unsafe C/C++ functions from the symbols table Decompiling the program using scripting Looking for sscanf callers Enumerating caller functions Analyzing the caller function using PCode PCode versus assembly language Retrieving PCode and analyzing it Using the same PCode-based script in multiple architectures Summary Questions Further reading Section 3: Extending Ghidra Chapter 10: Developing Ghidra Plugins Technical requirements Overview of existing plugins Plugins included with the Ghidra distribution Third-party plugins The Ghidra plugin skeleton The plugin documentation Writing the plugin code The provider for a plugin Developing a Ghidra plugin Documenting the plugin Implementing the plugin class Implementing the provider Summary Questions Further reading Chapter 11: Incorporating New Binary Formats Technical requirements Understanding the difference between raw binaries and formatted binaries Understanding raw binaries Understanding formatted binaries Developing a Ghidra loader The old-style DOS executable (MZ) parser The old-style DOS executable (MZ) loader Understanding filesystem loaders FileSystem Resource Locator Summary Questions Further reading Chapter 12: Analyzing Processor Modules Technical requirements Understanding the existing Ghidra processor modules Overviewing the Ghidra processor module skeleton Setting up the processor module development environment Creating a processor module skeleton Developing Ghidra processors Documenting processors Identifying functions and code using patterns Specifying the language and its variants Summary Questions Further reading Chapter 13: Contributing to the Ghidra Community Technical requirements Overviewing the Ghidra project The Ghidra community Exploring contributions Understanding legal aspects Submitting a bug report Suggesting new features Submitting questions Submitting a pull request to the Ghidra project Summary Questions Further reading Chapter 14: Extending Ghidra for Advanced Reverse Engineering Technical requirements Learning the basics of advanced reverse engineering Learning about symbolic execution Learning about SMT solvers Learning about concolic execution Using Ghidra for advanced reverse engineering Adding symbolic execution capabilities to Ghidra with AngryGhidra Converting from PCode into LLVM with pcode-to-llvm Summary Questions Further reading Assessments Chapter 1 Chapter 2 Chapter 3 Chapter 4 Chapter 5 Chapter 6 Chapter 7 Chapter 8 Chapter 9 Chapter 10 Chapter 11 Chapter 12 Chapter 13 Chapter 14 Other Books You May Enjoy Leave a review - let other readers know what you think