Basic Linux Exploit Development

  • متوسط
  • مسیر قرمز
  • ۷ درس
ثبت نام سازمانی این دوره
تاریخ شروع
۲۷ دی ۱۳۹۹
طول دوره
ساعت
گواهی‌نامه و آزمون
دارد
ظرفیت
۰ نفر باقی مانده
نوع برگزاری
آنلاین

درباره‌ی این دوره

اخبار مربوط به Exploit سیستم‌عامل‌ها و سرویس‌های پرکاربرد، همواره یکی از چالش برانگیزترین مباحث موجود در زمینه‌ی امنیت سایبری بوده است. چرا که مهاجمین ممکن است تنها با Exploit کردن موفق یک آسیب‌پذیری‌، بتوانند بخش قابل توجهی از تدابیر و لایه‌های امنیتی سازمان‌های قربانی را دور بزنند. Exploitها انواع مختلفی دارند و می‌توانند با اهداف متفاوتی مانند گرفتن دسترسی اولیه، گسترش دسترسی، خراب‌کاری و غیره توسعه داده شوند. اما کشف آسیب‌پذیری جدید در سیستم‌عامل‌ها و نوشتن Exploit برای آن‌ها نیاز به دانش و خلاقیت بالایی دارد و همین نکته سبب شده تا افراد محدودی در این زمینه به موفقیت‌های چشم‌گیری دست یابند. اکسپلویت نویسی لینوکس نیز یکی از مهم‌ترین تخصص‌ها در دنیای اکسپلویت‌نویسی به حساب می‌آید.

اما با توجه به موارد ذکر شده، چرا هکرهای کلاه‌سفید باید این دانش را فرا بگیرند؟‌ از مهم‌ترین دلایل آن می‌توان به شناسایی آسیب‌پذیری‌های موجود قبل از افراد سودجو و خراب‌کار و همچنین دریافت جوایز تعیین شده توسط شرکت‌های ارایه دهنده‌ی این سامانه‌ها اشاره کرد.

شما با گذراندن دوره‌ی آموزشی «اکسپلویت نویسی لینوکس (سطح پایه)»، مبانی کشف آسیب‌پذیری در سیستم‌عامل لینوکس و توسعه‌ی Exploit‌برای آن را فرا خواهید گرفت. از مهم‌ترین موضوعاتی که در این دوره تدریس می‌شود می‌توان به معماری سیستم‌عامل‌ لینوکس، مبانی روش‌های Fuzzing، مهندسی معکوس، توسعه‌ی Shellcode و دور زدن راهکارهای محافظتی موجود در سیستم‌عامل لینوکس اشاره کرد.

این دوره به چه افرادی توصیه می‌شود؟

  • کارشناسان ارشد ارزیابی امنیت/تست نفوذ/تیم قرمز
  • کارشناسان فعال در زمینه‌ی Bug Bounty
  • برنامه‌نویسان علاقه‌مند به توسعه‌ی امن
  • تحلیل‌گران و محققین امنیت سایبری
  • کارشناسان مهندسی معکوس

برای حضور در این دوره چه دانش‌هایی باید داشته باشم؟

  • آشنایی با مفاهیم سیستم‌عامل Linux
  • آشنایی با زبان برنامه‌نویسی Python در سطح متوسط
  • آشنایی با زبان برنامه‌نویسی C یا C++ در سطح متوسط

سرفصل‌های دوره

  • Intro
    • Linux Operation System Architecture
    • Why C/C++ Language is Important?
    • Who to integrate high language with C Lang?
    • What is System Call in Linux?
    • Explanation Type Vulnerability in C Lang
  • Fuzzing
    • What is Fuzzing?
    • Static Fuzzing
    • Dynamic Fuzzing
  • Security Protection
    • PIE
    • PIC
    • NX Bit (MS:DEP)
    • RELRO
    • Canaries
    • ASLR
  • Assembly Language in Linux – x64
    • Assembly Language Code Structure
    • Data Types
    • Develop Hello World Program
    • Stack in Assembly
    • Data Manipulation
    • Data Swapping
    • Load Effective Address
    • Arithmetic Operations
    • Loops
    • Controlling the Flow
    • Operations
  • Reverse Engineering – x64
    • Introduction to the ELF Format
    • Install Python Exploit Assistance (PEDA)
    • Customizing Disassembly with Capstone
    • GDB Debugger
    • PWNGDB (SCWUAPTX)
    • PWNTOOLS
    • GEF
    • GDB Commands
    • Reverse Hello World Program
    • Reverse Function Call
    • Crack Password with GDB
  • Writing Shellcode – x64
    • What is Shellcode?
    • Bad Characters
    • The Relative Address Technique
    • The JMP-CALL Technique
    • The Stack Technique
    • The Execve Syscall
    • TCP Bind Shell
    • Reverse TCP Shell
    • Generating Shellcode Using Metasploit
  • Buffer Overflow Attacks x64
    • Stack Overflow on Linux
    • Inject Shellcode
    • Buffer Overflow Exploit – x64

گواهینامه‌ی دوره

دوره های مشابه