آموزش هک برنامه اندروید - نسخه کمربند سیاه

Android App Hacking - Black Belt Edition

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: تبدیل شدن به متخصص اصلی در امنیت برنامه های اندرویدی درک عمیق از ساختار برنامه اندروید نحوه بهره برداری از فعالیت ها، دریافت کننده پخش و ارائه دهنده محتوا (تزریق SQL و پیمایش مسیر) دور زدن تشخیص ریشه (SMALI و FRIDA) دور زدن پین کردن گواهی (SMALI و FRIDA-Perform) حمله در وسط تجزیه و تحلیل-/دستکاری ترافیک شبکه یک برنامه تلفن همراه ایجاد نمودار تماس و جریان برای مهندسی معکوس برنامه های مبهم قوی دستکاری روش های جاوا و C/C++ (FRIDA & SMALI) خواندن-/نوشتن کد SMALI تزریق خود ( سفارشی) کد در برنامه های موجود درک عمیق از مدل مجوز اندروید اصلاح بازی ها (زندگی بی نهایت، امتیاز بالا، نامرئی، شکست ناپذیر) - نوشتن مربی تجزیه و تحلیل اتصالات کم انرژی بلوتوث برخورد با انواع مختلف رمزگذاری (به عنوان مثال AES) اصول اخلاقی و قانونی پیش نیازها :دانش اندروید مورد نیاز نیست (این دوره همه چیز را آموزش می دهد) بدون نیاز به گوشی هوشمند واقعی لپ تاپ/رایانه شخصی

در این دوره کاملاً همه چیز را در مورد هک برنامه اندروید خواهید آموخت. این دوره اصول اخلاقی را به شما می آموزد و شما را قادر می سازد تا در زمینه امنیت اپلیکیشن به متخصص برتر شرکت خود تبدیل شوید. ما حملات واقعا پیچیده را به خنده دارترین شکل ممکن، با هک کردن یک بازی موبایل یاد می گیریم.


نکته حقوقی:

بازی‌ای که می‌خواهیم هک کنیم تحت مجوز GNU GPL است، به این معنی که ما مجاز به انجام چنین تغییراتی هستیم. هک کردن اپلیکیشن ها بدون اجازه نویسنده اکیدا ممنوع! چیزهایی که یاد می گیرید به تحقیقات امنیتی مربوط می شود. من همه اینها را به روشی قانونی و اخلاقی به شما آموزش می دهم.


دوره - ساختار:


در فصل نصب، تنظیمات مختلف گوشی‌های هوشمند، نقاط قوت و ضعف آنها را تحلیل خواهیم کرد. ما قفل دستگاه خود را باز می کنیم و از ویژگی های خاصی استفاده می کنیم تا از قبل شروع به هک کردن اولین برنامه های خود کنیم. ما یاد خواهیم گرفت که چگونه اتصالات کم انرژی بلوتوث را تجزیه و تحلیل کنیم و با پل اشکال زدایی اندروید (ADB) آشنا شویم.


به ساختار برنامه اندروید می رویم. در اینجا ما به درک کاملی از اجزای کلیدی یک برنامه اندرویدی دست می‌یابیم. ما AndroidManifest.xml را تجزیه و تحلیل خواهیم کرد و نحوه بهره برداری از فعالیت ها، گیرنده پخش و ارائه دهنده محتوا را یاد خواهیم گرفت. ما برنامه های کوچک خود را برای سوء استفاده از تزریق SQL و پیمایش مسیر می نویسیم.


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


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


در فصل man-in-the-middle ما یاد خواهیم گرفت که چگونه ترافیک شبکه یک برنامه تلفن همراه را تجزیه و تحلیل کنیم. ما در مورد HTTPS و نحوه تجزیه و تحلیل این اتصالات درک خواهیم کرد. ما یاد خواهیم گرفت که چگونه پین ​​کردن گواهی کار می کند و چندین نوع مختلف از آن را دور می زنیم.


آخرین چیزی که گم شده FRIDA است، که یک چارچوب شگفت انگیز برای انجام دستکاری های زمان اجرا در یک برنامه است. ما به مولد اعداد شبه تصادفی (PRNG) متصل می‌شویم تا یک برنامه تاس را اصلاح کنیم. ما یاد خواهیم گرفت که چگونه حافظه را برای نمونه های خاص اسکن کنیم و چگونه با رشته رابط کاربری یک برنامه تعامل داشته باشیم. ما اشیاء جدیدی ایجاد می کنیم و همه اینها را با نوشتن مربی خودمان برای یک برنامه بازی تمرین می کنیم. گیلاس در بالا، تجزیه و تحلیل تابع c بومی با Ghidra و دستکاری و اصلاح با FRIDA خواهد بود.


بعد از گذراندن تمام این فصل‌ها، برترین متخصص امنیت برنامه‌های اندرویدی شرکت خود خواهید بود. بنابراین، منتظر چه هستید؟ :)


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

نصب و راه اندازی Installation and Setup

  • راه اندازی - تئوری Setup - Theory

  • نصب (سیستم و اندروید استودیو) Installation (System & Android Studio)

  • شبیه ساز - نصب Emulator - Installation

  • شبیه ساز - استفاده (ویژگی های مخفی) Emulator - Usage (Secret Features)

  • ماشین مجازی Androidx86 - راه اندازی Androidx86 Virtual Machine - Setup

  • مفهوم Concept

  • گزینه های توسعه دهنده Developer Options

  • گزینه های توسعه دهنده - اسرار (هک بازی) Developer Options - Secrets ( Game Hacking )

  • گزینه های توسعه دهنده - هک کم انرژی بلوتوث Developer Options - Bluetooth Low Energy Hacking

  • بلوتوث کم انرژی - هک برنامه Furby Bluetooth Low Energy - Furby App Hacking

  • پل اشکال زدایی اندروید - تئوری Android Debug Bridge - Theory

  • Android Debug Bridge (ADB) - HandsOn (سفید - کمربند) Android Debug Bridge (ADB) - HandsOn (White - Belt)

ساختار برنامه App Structure

  • ساختار فایل یک APK Filestructure of an APK

  • دالویک/دکس Dalvik / Dex

  • Classes.dex Classes.dex

  • دیکامپایل - آماده سازی Decompiling - Preperation

  • دیکامپایل - HandsOn Decompiling - HandsOn

  • AndroidManifest.xml AndroidManifest.xml

  • برنامه - مجوزها App - Permissions

  • فعالیت ها Activities

  • فعالیت ها - هک کردن Activities - Hacking

  • فعالیت - پاداش ( دور زدن ورود - برنامه شخصی) Activity - Bonus (Bypassing Login - Own Application)

  • مقاصد Intents

  • مقاصد - مثالها Intents - Examples

  • فعالیت ها و اهداف Activities and Intents

  • گیرنده پخش BroadcastReceiver

  • BroadcastReceiver - هک (برنامه هشدار) BroadcastReceiver - Hacking (Alarm App)

  • BroadcastReceiver - هک کردن از طریق برنامه شخصی BroadcastReceiver - Hacking via own App

  • خدمات Services

  • Content Provider ContentProvider

  • ContentProvider - SQL Injection ContentProvider - SQL Injection

  • ContentProvider - حملات پایگاه داده (SQLi - Permission/Bypass) ContentProvider - Database Attacks (SQLi - Permission / Bypass)

  • ContentProvider - PathTraversal Attack ContentProvider - PathTraversal Attack

  • ContentProvider - پیمایش مسیر ContentProvider - Path Traversal

  • گیرنده پخش و ارائه دهنده محتوا Broadcast Receiver and Content Provider

  • امضای برنامه Application Signing

  • امضای برنامه - شیرجه عمیق Application Signing - Deep Dive

  • آسیب پذیری کلید BlueBox Master (امضا) BlueBox Master Key Vulnerability (Signing)

  • کمربند زرد - چالش Yellow Belt - Challenge

مهندسی معکوس برنامه های اندروید Reverse Engineering Android Apps

  • Dex2Jar Dex2Jar

  • Jadx-Gui Jadx-Gui

  • Jadx-Gui HandsOn Jadx-Gui HandsOn

  • ابر سلاح مخفی Secret Super Weapon

  • معکوس کردن برنامه ها Reversing Apps

  • ایجاد CallGraph (CG) Creating a CallGraph (CG)

  • ایجاد یک فلوگراف (FG) Creating a FlowGraph (FG)

  • چالش - مقدمه Challenge - Intro

  • چالش - فعالیت های هک Challenge - Hacking Activities

  • چالش - هک ارائه دهنده محتوا Challenge - Hacking Content Provider

  • چالش - هک گیرنده BroadCast Challenge - Hacking BroadCast Receiver

  • چالش - رمز عبور (رمزگشایی) Challenge - Password (Decryption)

اسمالی Smali

  • خلاصه Recap

  • اسمالی - مقدمه Smali - Introduction

  • اسمالی - وصله زدن Smali - Patching

  • چالش - راه حل Challenge - Solution

  • ثبت می کند Registers

  • انواع Types

  • P0 - ثبت نام کنید P0 - Register

  • اپکدهای دالویک Dalvik Opcodes

  • ساختار فایل Smali Smali File Structure

  • تمرین - اسمالی Practice - Smali

  • تمرین - راه حل Practice - Solution

  • کمربند نارنجی - معرفی Orange Belt - Intro

  • کمربند نارنجی - محلول Orange Belt - Solution

  • IF - مقدمه IF - Intro

  • IF/ELSE/GOTO IF / ELSE / GOTO

  • IF/ELSE/GOTO - تجزیه و تحلیل کد IF / ELSE / GOTO - Code Analysis

  • IF/ELSE/GOTO - بلوک ها IF / ELSE / GOTO - Blocks

  • IF/ELSE/GOTO - تمرین کنید IF / ELSE / GOTO - Practice

  • Smali Patching - چرخاندن منطق Smali Patching - Flipping the logic

  • Smali Patching - حذف کد Smali Patching - Deleting Code

  • Smali Patching - دستورالعمل های پرش Smali Patching - Jump Instructions

  • کمربند سبز - چالش (پچینگ تشخیص ریشه) Green Belt - Challenge (Patching Rooting Detection)

  • Rooting Detection - Intro Rooting Detection - Intro

  • تشخیص ریشه (بای پس) - راه حل Rooting Detection (bypass) - Solution

  • Rooting Detection - Solution2 (پاداش) Rooting Detection - Solution2 (Bonus)

  • اسمالی - اشیاء و روشها Smali - Objects and Methods

  • Smali - روش های استاتیک Smali - Static Methods

  • اسمالی - سلام دنیا (بله، این اواخر) Smali - Hello World (Yes, this late)

  • چاپ اسرار - System.out (نوشته شده به زبان اسمالی) Printing out secrets - System.out (Written in Smali)

  • وصله رمزگذاری XOR Patching XOR encryption

  • یک چالش برای خلاصه کردن همه - مقدمه One challenge to recap all - Intro

  • یک چالش برای خلاصه کردن همه - قسمت 1 One challenge to recap all - Part 1

  • یک چالش برای خلاصه کردن همه - قسمت 2 One challenge to recap all - Part 2

  • یک چالش برای خلاصه کردن همه - قسمت 3 One challenge to recap all - Part 3

  • یک چالش برای خلاصه کردن همه - راه حل One challenge to recap all - Solution

  • Smali Patching - Fire Rate Smali Patching - Fire Rate

  • Smali Patching - Double Shot Smali Patching - Double Shot

  • کمربند آبی - چالش (مقدمه) Blue Belt - Challenge (Intro)

  • کمربند آبی - چالش (نکته) Blue Belt - Challenge (Hint)

  • کمربند آبی - چالش (راه حل) Blue Belt - Challenge (Solution)

  • کمربند سیاه - چالش Black Belt - Challenge

  • اشکال زدایی برنامه های اندروید Debugging Android Applications

مردی در وسط Man in the Middle

  • پروتکل حل آدرس (ARP) Adress Resolution Protocol (ARP)

  • MitM - راه اندازی MitM - Setup

  • رهگیری - نظریه Intercepting - Theory

  • BurpSuite - راه اندازی BurpSuite - Setup

  • تنظیمات را مجدداً تنظیم کنید Reset the Setup

  • HTTPS - نمای فنی HTTPS - Technical View

  • نصب گواهی Installing a Certificate

  • راه اندازی MitM - ماشین مجازی (VM) MitM Setup - Virtual Machine (VM)

  • سنجاق گواهی - تئوری Certificate Pinning - Theory

  • پین کردن گواهی - OpenSSL (پاداش) Certificate Pinning - OpenSSL (Bonus)

  • سنجاق گواهی - وصله اثر انگشت Certificate Pinning - Patching Fingerprint

  • Certificate Pinning - Patching Certificate Certificate Pinning - Patching Certificate

  • پین کردن گواهی - اعتراض (بای پس) Certificate Pinning - Objection (Bypass)

فریدا FRIDA

  • معرفی Introduction

  • نصب Install

  • هوکینگ - تئوری Hooking - Theory

  • بازی Dize - HandsOn Dize Game - HandsOn

  • برنامه Dize - تجزیه و تحلیل Dize App - Analysis

  • برنامه Dize - مشاهده پارامترها Dize App - Observing Parameters

  • برنامه Dize - تغییر پارامترها Dize App - Modifying Parameters

  • عملکرد بیش از حد Function Overloading

  • PRNG برنامه dize را دستکاری کنید Manipulate the PRNG of the dize application

  • زمان بندی (هوکینگ) Timing (Hooking)

  • چالش - تشخیص ریشه (بای پس) Challenge - Rooting Detection (bypass)

  • چالش - شناسایی ریشه (راه حل) Challenge - Rooting Detection (solution)

  • فراخوانی فعال یک متد Actively calling a method

  • کار با نمونه ها Working with Instances

  • دست در HandsOn

  • HandsOn - راه حل HandsOn - Solution

  • نمونه به عنوان یک پارامتر Instance as a parameter

  • نمونه موجود به عنوان یک پارامتر Existing instance as a parameter

  • چالش - چندین عکس بازیکن ایجاد کنید Challenge - Create multiple player shots

  • چالش - ضربات چند بازیکن (راه حل) Challenge - Mulitple player shots (solution)

  • قلاب کردن سازنده Constructor hooking

  • دستکاری UI Thread Manipulating UI Thread

  • نوشتن یک مربی Writing a trainer

  • Hooking the Native Development Kit (NDK) Hooking the Native Development Kit (NDK)

  • NDK hooking - راه آسان NDK hooking - Easy Way

  • NDK hooking - راه سخت NDK hooking - Hard way

  • قلاب کردن NDK - زمان بندی NDK hooking - timing

  • دستکاری روش های NDK (بازنویسی) Manipulating NDK methods (overwriting)

  • Reversing C - عملکرد در ghidra (پاداش) Reversing C - function in ghidra (Bonus)

  • Hooking C - عملکرد در فریدا (پاداش) Hooking C - function in frida (Bonus)

  • کمربند قرمز - چالش (فینال) Red Belt - Challenge (FINAL)

  • FRIDA بدون ROOT (FRIDA GADGET) FRIDA without ROOT (FRIDA GADGET)

فایل های اضافی Additional Files

  • برگه تقلب CheatSheet

نمایش نظرات

آموزش هک برنامه اندروید - نسخه کمربند سیاه
جزییات دوره
51 hours
128
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
973
- از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar