دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
ویرایش: [1 ed.]
نویسندگان: A. P. David
سری:
ISBN (شابک) : 9781800207974
ناشر: Packt Publishing
سال نشر: 2021
تعداد صفحات: 322
زبان: English
فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود)
حجم فایل: 6 Mb
در صورت تبدیل فایل کتاب Ghidra Software Reverse Engineering for Beginners به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب مهندسی معکوس نرم افزار Ghidra برای مبتدیان نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
باگ های پتانسیل را در کد یا برنامه خود شناسایی کنید و ابزارهای خود را با استفاده از چارچوب مهندسی معکوس Ghidra توسعه یافته توسط پروژه NSA توسعه دهید. ویژگی های کلیدی از Ghidra در پلتفرم های مختلف مانند Linux، Windows و macOS نهایت استفاده را ببرید از انواع پلاگین ها و افزونه ها برای انجام جداسازی، مونتاژ، دیکامپایل و اسکریپت استفاده کنید. کشف کنید که چگونه می توانید نیازهای امنیت سایبری خود را با ایجاد وصله ها و ابزارهای سفارشی برآورده کنید توضیحات کتاب Ghidra، یک چارچوب مهندسی معکوس نرمافزار منبع باز (SRE) که توسط اداره تحقیقات NSA ایجاد شده است، به کاربران امکان میدهد کدهای کامپایل شده را بر روی هر پلتفرمی، اعم از لینوکس، ویندوز یا macOS تجزیه و تحلیل کنند. این کتاب نقطه شروعی برای توسعه دهندگانی است که علاقه مند به استفاده از Ghidra برای ایجاد وصله ها و گسترش قابلیت های ابزار برای رفع نیازهای امنیت سایبری خود هستند. با نصب Ghidra و بررسی ویژگیهای آن شروع میکنید و به تدریج یاد میگیرید که چگونه کارهای مهندسی معکوس را با استفاده از افزونههای Ghidra خودکار کنید. سپس خواهید دید که چگونه یک محیط برای انجام تجزیه و تحلیل بدافزار با استفاده از Ghidra و نحوه استفاده از آن در حالت هدلس تنظیم کنید. همانطور که پیشرفت می کنید، از برنامه نویسی Ghidra برای خودکار کردن کار شناسایی آسیب پذیری ها در باینری های اجرایی استفاده خواهید کرد. این کتاب همچنین موضوعات پیشرفته ای مانند توسعه پلاگین های Ghidra، توسعه رابط کاربری گرافیکی خود، ترکیب معماری های فرآیند جدید در صورت نیاز، و کمک به پروژه Ghidra را پوشش می دهد. در پایان این کتاب Ghidra، مهارتهایی را که برای استفاده از قدرت Ghidra برای تجزیه و تحلیل و اجتناب از آسیبپذیریهای احتمالی در کد و شبکهها نیاز دارید، توسعه خواهید داد. آنچه خواهید آموخت با استفاده از ویژگیها، افزونهها و برنامههای افزودنی Ghidra آشنا شوید درک کنید که چگونه می توانید به Ghidra کمک کنید روی بدافزار مهندسی معکوس تمرکز کنید و حسابرسی باینری را انجام دهید کارهای مهندسی معکوس را با افزونه های Ghidra به صورت خودکار انجام دهید با توسعه برنامه های افزودنی، اسکریپت ها و ویژگی های Ghidra خود به خوبی آشنا شوید کار جستجوی آسیب پذیری ها در باینری های اجرایی با استفاده از برنامه نویسی Ghidra را خودکار کنید. نحوه استفاده از Ghidra در حالت هدلس را بیاموزید این کتاب برای چه کسی است این کتاب SRE برای توسعهدهندگان، مهندسان نرمافزار یا هر متخصص فناوری اطلاعات که تا حدودی از ملزومات امنیت سایبری آگاهی دارد، است. قبل از شروع کار با این کتاب، دانش قبلی جاوا یا پایتون به همراه تجربه در برنامه نویسی یا توسعه برنامه ها ضروری است. فهرست مطالب شروع کار با Ghidra خودکارسازی وظایف RE با اسکریپت های 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. Table of Contents Getting Started with Ghidra Automating RE Tasks with Ghidra Scripts Ghidra Debug Mode Using Ghidra Extensions Reversing Malware Using Ghidra Scripting Malware Analysis Using Ghidra Headless Analyzer Auditing Program Binaries Scripting Binary Audits Developing Ghidra Plugins Incorporating New Binary Formats Analyzing Processor Modules Contributing to the Ghidra Community Extending Ghidra for Advanced Reverse Engineering
Cover Title Page Copyright and Credits Dedicated About Packt Contributors Table of Contents Preface 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 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 Other Books You May Enjoy Index