0Day.Today | Learn Exploit | Zero World | Dark web | – Telegram
0Day.Today | Learn Exploit | Zero World | Dark web |
22K subscribers
1.26K photos
140 videos
494 files
1.32K links
☝️Iп Tнε Nαмε Oғ GOD☝️

Web Exploiting
& Server Hacking
Shell & Admin panel Access

priv8 Google hacking Dorks
new vul & bugs discovering & Tut


❗️0 day is today❗️

تبلیغات : @LearnExploitAds

IR0Day.Today
Download Telegram
یکی از مهم ترین پیش نیاز های هک بدون شک یادگیری لینوکس و آشنایی با دستورات اون هستش.در این دوره آموزشی بصورت کامل از صفر تا صد با دستورات لینوکس در زمینه های شبکه ، جمع آوری اطلاعات ، پروتکل های مختلف شبکه ، ابزار های مختلف تست نفوذ و ... بصورت کاملا عملی اشنا خواهید شد .


💌جهت دریافت دوره به پیوی تلگرام پیام بدید
@mk3em

https://hakfa.com/product/linux-essentials-for-hackers/
1🔥1
👁 ربات Red Watch آماده شد ❤️ رباتی برای اوسینت، اکانت اینستاگرام، ایمیل و یوزرنیم


قسمت جستجو پیشرفته برای اکانت های اینستاگرام | ساخت ترکیب های مختلف ایمیل از طریق قسمت فراموشی رمز و یوزرنیم پیج ، تست روی تمامی دیتابیس های پخش شده در اینترنت (کامل ترین دیتابیس با بالای ۱۲ میلیارد اطلاعات)


جستجو یوزرنیم به صورت تکی | سرچ یوزرنیم داده شده در تمامی دیتابیس های موجود


جستجو ایمیل | سرچ ایمیل داده شده در تمامی دیتابیس های موجود



اطلاعاتی که ربات به شما میده : پسورد لو رفته، شماره موبایل و... که اگر اطلاعاتی باشه نشون میده

⭕️  برای استفاده ربات رو استارت کنید👇

@RedWatchbot
32
Forwarded from 0Day.Today | Learn Exploit | Zero World | Dark web | (Root@SiR-D4niAl)
0Day.Today | Learn Exploit | Zero World | Dark web |
👁 ربات Red Watch آماده شد ❤️ رباتی برای اوسینت، اکانت اینستاگرام، ایمیل و یوزرنیم قسمت جستجو پیشرفته برای اکانت های اینستاگرام | ساخت ترکیب های مختلف ایمیل از طریق قسمت فراموشی رمز و یوزرنیم پیج ، تست روی تمامی دیتابیس های پخش شده در اینترنت (کامل ترین…
نمونه قدرت این ربات که پسورد قبلی پیج ایران اینترنشنال رو در آورده👇:
+++ 1 Security Event(s) Found for: iranintltv

. Database Name: Unknown Source (1 item(s))
- Security Item
* Source Name: Stealer Logs
* Event Date: None
* Unverified: No
* Passwordless: No
* Compilation: Yes
Extracted Data:
* Password: Q9t0*Pz^*VvYX*KwKqs4
* Username: iranintltv
* Origin:
- www.instagram.com
- instagram.com
منظور_از_شل_shell_چیست_و_چه_کاربردی_در_تست_نفوذ_دارد.pdf
231.6 KB
🔻شل چیه و چه کاربردی داره ؟ | راهنمای جامع استفاده از Shell در تست نفوذ

@Hakfateam
🔥1
Forwarded from *KurtL4rCyb3rLab*
🎁 VIP WebH4cking Channel 🏆

🔍 15 years of experience in one educational package

u can be a pro h4cker with my vip channel

💎 Valuable training set to become a professional
We will teach you to investigate and infiltrate the most powerful websites in less than 10 minutes

Contact: @Bvrce

🖥  Video + Tools + Expl0it

📕 U Can Start With any Knowledge

💊 This IS BeST OF G0verment And Pro H4cking Source

vipKurtLar Telegram Channel For More info about this product (@VIPvipkurt09)



Btc/usdt/eth OK

Vip Acce3s LifeTime

💵 PM TO Buy : @Bvrce

t.me/KurtLarCyberLab
1
ویدیو جدید امروز داخل کانال یوتیوب آپلود میشه
منتظر باشید😉❤️
🔥1
Forwarded from فولدر
دوستان تبلیغ نیست، متن زیر رو حتما بخونید ! 🗣

طی حرف هایی که بین مالکین چنل های که در زمینه کرک و هک فعالیت مفیدی دارند تصمیم گرفتیم فولدر ای رو برای راحتی شماها و دسترسی بهتر شماها بسازیم ..

دیگ نیاز نیست دو ساعت دنبال چنل کرک و هک و دوره و غیره باشی...

آپدیت : 1404/09/21 - جمعه ۲۱ آذر، چندین کانال جدید اضاف شدند !
لینک فولدر :
https://news.1rj.ru/str/addlist/M2Rd7AJWVgFkYjZk
Forwarded from VIP - KurtLar Cyber Lab
Media is too big
VIEW IN TELEGRAM
هک سایت وردپرسی با باگ Arbitrary File Upload

t.me/KurtLar0101
❤‍🔥3
وقتی HarmonyOS هک می‌شود! تست تهاجمی اپ‌های HarmonyOS NEXT با Harm0nyz3r

در این ارائه، امنیت HarmonyOS NEXT به‌صورت عملی زیر ذره‌بین رفته؛ جایی که با استفاده از فریم‌ورک اختصاصی Harm0nyz3r و اپلیکیشن آسیب‌پذیر DVHA، سطح حمله اپ‌ها شناسایی شده و اکسپلویت‌ها به‌صورت زنده اجرا می‌شن. نگاهی واقعی به تهدیدات، ضعف‌ها و آینده امنیت اکوسیستم HarmonyOS.



#HarmonyOS
#HarmonyOS_NEXT
#Mobile_Security
#Offensive_Security
#BlackHat2025
#AppSec
#Pentest
#ReverseEngineering
#Exploit


@LearnExploit
@IR0DayBax
1
Breaking_Harmony_NEXT.pdf
12.2 MB
وقتی HarmonyOS هک می‌شود! تست تهاجمی اپ‌های HarmonyOS NEXT با Harm0nyz3r

در این ارائه، امنیت HarmonyOS NEXT به‌صورت عملی زیر ذره‌بین رفته؛ جایی که با استفاده از فریم‌ورک اختصاصی Harm0nyz3r و اپلیکیشن آسیب‌پذیر DVHA، سطح حمله اپ‌ها شناسایی شده و اکسپلویت‌ها به‌صورت زنده اجرا می‌شن. نگاهی واقعی به تهدیدات، ضعف‌ها و آینده امنیت اکوسیستم HarmonyOS.



#HarmonyOS
#HarmonyOS_NEXT
#Mobile_Security
#Offensive_Security
#BlackHat2025
#AppSec
#Pentest
#ReverseEngineering
#Exploit


@LearnExploit
@IR0DayBax
1
𝗥 ‌ ‌ ‌ ‌𝗬 ‌ ‌‌ ‌ 𝗦 ‌‌ ‌ ‌ 𝗢 ‌ ‌‌ ‌ 𝗡

IN THE NAME OF DARK JUSTICE


Part 3


ببین خب برد ESP زیاد داریم برای مثال همون ESP32 رو براتون تحلیل میکنیم ،
ببین esp32 دیگه داستانش یکم سخت تره ،
کلا لیست پایین فایل هاییه که به صورت نهایی روی esp وجود داره
ROM Bootloader (داخل خوده چیپه)
Bootloader : 0x1000
partition-table : 0x8000
ota_data_initial : 0xE000
factory app : 0x10000
ota_0 همون app0 : 0x210000
ota_1 همون app1 : 0x410000
nvs : 0x9000
spiffs : 0x610000
nvs_keys : طبقه جدوله
phy_init_data : داخل پارتیشن PHY
coredump : پارتیشن جداست یا متغیره
littlefs : همون جای SPIFFS
fatfs partition : متغیره
storage : متغیره
efuse_emulation : متغیره
secure_bootloader : 0x0 / 0x1000
encrypted partition : متغیره

حالا توی شل کد در مورد این حافظه ها خیلی بیشتر صحبت میکنیم
حالا ترتیب نقشه فلش کردن
0x0000      ---- ROM Boot (خب این غیرقابل تغییره)
0x1000 ---- bootloader
0x8000 ---- partition table
0xE000 ---- ota_data_initial

0x10000 ---- factory app
0x210000 ---- ota_0
0x410000 ---- ota_1

0x610000 ---- spiffs / littlefs / fatfs
0x7FFFFF ---- اخر فلش کردنمون

که معمولا اینا رو خودشون دارن به صورت پیشفرض و ما باید سه تا فایل بوتلودر ، پارتیشن و اپ رو فلش کنیم
حالا توضیحات توی پارت بعدی
End PART
3🤝21
𝗥 ‌ ‌ ‌ ‌𝗬 ‌ ‌‌ ‌ 𝗦 ‌‌ ‌ ‌ 𝗢 ‌ ‌‌ ‌ 𝗡

IN THE NAME OF DARK JUSTICE

Part 4

حالا توضیحات هر فایل که کاراییش چیه و چه کار میکنه :

1 : ROM Bootloader
که داخل خوده چیپه
ببین این کد به‌صورت سخت‌افزاری داخل ماسک-ROM خود ESP32 قرار داده شده و هیچ‌وقت قابل تغییر نیستش و اولین چیزیه که بعد از روشن شدن ران می‌شه حتا قبل از بوت‌لودر، حالا وظیفش اینه که فلش خارجی رو چک کنه وضعیت بوت را بخونه و کنترل رو به بوت‌لودر.bin بده
2 : bootloader
ببین میتونیم بگیم بوت‌لودر برنامه‌ریز چرا چون اولین فایل قابل‌فلش که ESP32 اجرا می‌کنه و ادرسش همیشه 0x1000 هست
و کارش چیه ؟ جدول پارتیشن رو می‌خونه تا تصمیم بگیره که کدوم برنامه (factory یا ota_0 یا ota_1) اجرا بشه حالا اگه سیستم OTA فعال باشه بوت‌لودر آخرین اسلات سالم رو پیدا و بوت می‌کنه و در صورت فعال بودنه Secure Boot امضای دیجیتال رو چک می‌کنه
3 : partition-table
همون جدول پارتیشن ها
یه فایل مهمی که ساختار کامل فلش رو مشخص می‌کنه مثل نقشه شهر برای حافظه، و اینکه تعیین می‌کنه که هر پارتیشن از کجا شروع بشه و چه اندازه داره و نوعش چیه مثل app / data / nvs / spiffs و ...
و نکته مهم اینه که بدون وجود این فایل بوت‌لودر نمیدونه که فریمورها، NVS، فایل‌سیستم و … کجا هستن پس فایل مهمیه
4 : ota_data_initial
این فایل همون اطلاعات OTA هست و توی ادرس 0xE000 هسشت و وضعیت اخرین فریمور سالم رو سیو میکنه و تو زمان اپدیت OTA ، این بخش مشخص می‌کنه که آقا بعد از ریستش ، کدوم پارتیشن app بوت بشه، حالا اگه تو آپدیت جدید مشکلی رخ بده بوت‌لودر با کمک این پارتیشن می‌تونه به نسخه قبلی بک بزنه
5 : factory app
این اصلی ترین فایله میتونیم توی دو کلمه ی اپلیکیشن کارخونه یا برنامه اصلی خلاصش کنیم و این اولین فریمور قابل‌اجرای فرده که بعد از بوت‌لودر اجرا می‌شه و اگه OTA وجود نداشته باشه همیشه همین اپلیکیشن اجرا می‌شه و محتویاتش شامل کد برنامه، دستورات CPU، داده‌ها، جداول، کتابخانه‌ها و پروتکل‌ها و ... هستش
6 : app0 / ota_0
این نسخه دوم برنامه فرد موقع استفاده از سیستم OTA هستش و وقتی اپدیت می‌دیم برنامه جدید از اینجا فلش می‌شه و بعد از ریست اجرا میشه حالا اگه اجرای اون با کرش یا خطا مواجه بشه بوت‌لودر به نسخه factory یا ota1 بک میزنه
7 : app1 / ota_1
نسخه سوم برنامه برای داشتن حالت سه اسلات (factory + ota0 + ota1) دقیقا این سه تا و برای اپدیت‌ های پشت‌سرهم که نیاز به فضای دو نسخه قبلی دارند کاملا مفیده و کمک میکنه و بوت‌لودر به کمک ota_data تصمیم می‌گیره که اقا کدام اسلات سالمه
8 : NVS
رسیدیم به NVS یا همون Non-Volatile Storage ، ببین این حافظه KV همون کلید و مقداره که تنظیمات دائمی تو اون سیو میشن
و مواردی که توش سیو میشن شامل WiFi SSID، رمزها، توکن، کالیبراسیون سنسورها و هر داده‌ و اطلاعاتیه که برنامه سیو میکنه
ساختار داخلیش هم مبتنی بر WAL و Journal که دیتا رو از خرابی و قطعی محافظت میکنه
9 : NVS Keys
ببین این کلید های رمزگذاری NVS هست که
مختص Secure NVS و شامل کلیدهای AES است همون چیزایی که توی مقاله ی وای فای wpa ها و... خوندیم 😂
اگه NVS رمزگذاری بشه این پارتیشن باید وجود داشته باشه و امنیت داده‌های حساس مثل توکن API یا پسورد را افزایش می‌ده
10 : phy_init_data
این همون داده‌های PHY وای‌فایو بلوتوثه که شامل پارامترهای تنظیمات سخت‌افزار RF برای وای‌فای و BLE هستش و تعیین می‌کنه که فرستنده و گیرنده چجوری تنظیم بشه همون قدرت، فیلتر و کالیبره ،، و بدون این پارتیشن، WiFi اتصال پیدا نمی‌کنه یا بسیار ناپایدار می‌شه
11 : coredump
این ریپورتره در اصل کارش گزارش کرش سیستمه و در صورت فعال‌سازیش زمانی که ESP32 کرش میکنه وضعیت CPU و حافظه را در این پارتیشن ذخیره می‌کنه و بیشتر برای دیباگ تخصصی با ابزارهایی مثل gdb استفاده می‌شه و در اصل بخوام بگم اینجوریه که به توسعه‌دهنده اجازه می‌ده که بفهمه دقیقن تو لحظه کرش چه اتفاقی افتاده
12 : spiffs
این فایل‌سیستمه SPIFFS هستش که یه فایل‌سیستمیه سبک برای ذخیره فایل‌های کوچیک مثل HTML، CSS، JSON، عکس و دیتای سنسوره و به‌صورت Raw تو یه پارتیشن نوشته می‌شه که معمولا از 0x610000 به بالاعه دیگه ، ولی برای ذخیره داده‌های استاتیک وب‌سرور و فایل‌های پیکربندی عالیه
13 : littlefs
اینم فایل‌ سیستم LITTLEFS هست که جایگزین SPIFFS با سرعت و دوام بیشتره و از نظر ساختار، Map-Based و مقاوم در برابر خاموشی ناگهانیه میتونیم بگیم که برای پروژه‌های مهم و نوشته‌های زیاد بهتر از SPIFFS یه و از این استفاده بشه بهتره
2🤝21
14 : FATFS partition
این پارتیشن فته (FAT) که برای ذخیره‌سازی حجم زیاد و امکان خوندن با ویندوز و لینوکسه و مناسب برای SDcard درون‌ فلش یا داده‌های زیاد مثل صدا و ویدیوعه ببین این طراحی استاندارد FAT16 و FAT32عه و ابزارهای زیادی از اون ساپورت میکنن
15 : storage partition
پارتیشن ذخیره سازی عمومیه که بخش خالی داده‌ای که برنامه میتونه ازادانه استفاده بکنه و معمولا برای دیتابیس‌ها، فایل‌های بزرگ یا کش استفاده می‌شه و اندازه و موقعیت اون تو partition table قابل تنظیمه
16 : efuse_emulation
اگر efuse سخت‌افزاری محدود باشه ESP32 برخی داده‌ها رو‌ توی پارتیشن مخصوص شبیه‌سازی می‌کنه و تا حدودی میتونیم بگیم مثل حافظه دائمی امضاها و کلیدهای امنیتی عمل می‌کنه اینم بگم که برای Secure Boot و Flash Encryption خیلی مهمه
17 : secure_bootloader
ببین این یه نوع چسی اومدنه 😂😂
من که نمیزنم ولی خب این ی نسخه امن و رمزگذاری‌شده ی bootloader.bin برای دستگاه‌های حرفه‌ایه و کاراییش اینه که قبل از اجرا، امضای دیجیتال برنامه‌ها را چک می‌کنه و مانع از اجرای برنامه‌های غیرمجاز یا دستکاری‌شده می‌شه
18 : encrypted app partitions
این اینکریپتد اپ پارتیشن نسخه رمزگذاری‌ شده ی فریمورهای برنامه زمانی که Flash Encryption فعاله هستش و موقع بوت، به‌صورت on-the-fly رمزگشایی می‌شه که خیلی خوبه و اگر کسی فلش رو بخونه فقط و فقط داده رمز شده می‌بینه که‌ اونم بعدا راحت دیکریپت میشه😂😂
❤‍🔥21👍1🆒1
سلام خدمت دوستداران علم ، معرفی نمیکنم ولی متخصص الکترونیک و سایبری هستم نرم افزار در کنار سخت افزار قراره از این به بعد علاوه بر تیم عدالت تاریک و چنل خودم ، توی اینجا هم آموزش و آسیب پذیری هایی که کمتر پاب شده رو چه به صورت مقاله چه با ویدیو ارائه بدم، ری اکشنتون انرژی زیادی برای ادامه ی این مسیر میده ، و تشکر ویژه از اونر چنل که باهاشون همکاری داشتیم ، چنل دوباره قراره بره اولای لیست تلگرام پس حمایت فراموش نشه ،
ME : @XCEE_H3R
@LearnExploit
@MR_RYSON
❤‍🔥422🔥1👏1
𝗟 𝗲 𝗮 𝗿 𝗻 ‌ ‌ 𝗘 𝘅 𝗽 𝗹 𝗼 𝗶 𝘁
𝗥 ‌ ‌ ‌𝗬 ‌ ‌‌ 𝗦 ‌‌ ‌ 𝗢 ‌ ‌‌ 𝗡

رسیدیم دیگه به آخر داستان یعنی RAM ،
بیشتر نفوذ ها از همین جلو می‌ره ، حالا اصلا رم چی هست ؟ یه قطعه‌ی سخت‌افزاریه که روی مادربورد نصب میشه ، حالا چون توی گوشی قضیه فرق میکنه و مدار یکه هست روی مدار خورده شده ، و ظرفیتشون 4GB، 8GB، 16GB و… و این همون حافظه هست که برنامه‌ ها موقع اجرا استفاده می‌کنن ببین تو وقتی یه برنامه ای رو اجرا میکنی سیستم‌ عامل برنامه رو از حافظه داخلی همون استورج می‌خونه و اون رو داخل RAM کپی میکنه و CPU و GPU فقط از RAM داده‌ها رو می‌خونن، حالا برات سواله چرا اصلا رم ؟ چرا اس اس دی یا هارد یا چیز دیگه ای نه ؟ اگر سیستم بخواد مستقیم از حافظه داخلی کار بکنه برنامه‌ها چندین ثانیه تا یه دقیقه برای هر عملیات مکث می‌کردن و گوشی و کامپیوتر عملا غیرقابل‌ استفاده میشد ، حالا براتون سواله که SSD که سریعه ، ولی رم در لحظه چند ده نانو ثانیه سرعتشه و نکته دوم رم برای داده های لحظه ایه که در لحظه باید حساب شن در اصل RAM مثل یه دفتر یادداشت موقت سی پی یو هست و اطلاعاتی که در لحظه نیاز داریه ولی حافظه ی داخلی برای ذخیره سازی همیشگی و لحظه ای نیست و یعنی سرعت بالای RAM نتیجه همینه که داده رو موقت نگه میداره و بعد از خاموش شدن همه چی پاک میشه ولی storage باید داده رو برای همیشه نگه داره و این کار سرعت رو خیلی پایین میاره بعدشم اس اس دی یه حافظه بلند مدته و سرعتش کمتره این کاربرد و تعریف رم
حالا موقعی که ما یه برنامه رو ران میکنیم رم قسمتی از خودشو مثلا یه حجمی رو ، به اون برنامه میده برای بخش های مختلف برنامه ، توی ویندوز این قسمت ها به :
Thread Stack
Private Heap
Process Heap
Virtual Address Space
Code Segment (Text)
Initialized Data Segment
Uninitialized Data Segment (BSS)
PE Image Mapping
DLL Mapped Sections
Memory-mapped Files
Shared Memory Sections
Paged Pool
Non-Paged Pool
Kernel Stack
System Cache
Pagefile-backed Memory
Working Set
Session Space

و توی اندروید به :
Stack (Java)
Stack (Native)
Java Heap
Native Heap
Code Segment (Text)
Data Segment
BSS Segment
Memory-mapped Area (mmap)
Shared Libraries
Binder Buffers
Ashmem
ION Buffers
Gralloc Buffers
DMA Buffers
JIT Cache
ART / Dalvik Metadata
Zygote Shared Pages
Page Cache
Kernel Memory
Slab Allocator
vmalloc Area

اینا هر کدوم کارای بهش های مختلف اپلیکیشن و تابع هاشونو و ... هر کدوم کار خاص خودش رو میکنه اما کدوم مورد خطر شل کده ؟
توی اندروید فقط با
Native Stack
Native Heap

کار داریم و توی ویندوز فقط با
Thread Stack
Process Heap

کار داریم ، حالا این بخش هایی که در بالا گفتم در اصل زیرمجموعه ی 6 بخش هستند که در پارت بعدی میبینیم

@LearnExploit
@MR_RYSON
#LearnExploit
#RYSON
#shell
4❤‍🔥1
𝗟 𝗲 𝗮 𝗿 𝗻 ‌ ‌ 𝗘 𝘅 𝗽 𝗹 𝗼 𝗶 𝘁
𝗥 ‌ ‌ ‌𝗬 ‌ ‌‌ 𝗦 ‌‌ ‌ 𝗢 ‌ ‌‌ 𝗡

Part 2

ما توی اندروید 6 تا بخش رو داریم از جمله:
Text Segment
Data Segment
Heap
Memory-mapped Area
Stack
Kernel space

که کرنل اسپیس داخل فضای ادرس نیست ولی مصرف RAM سیستم هست
حالا این 6 بخش اصلی هر کدوم زیر مجموعه ای دارن که توی لیست زیر میتونید کل قسمت های رم رو نگاه کنید :

1 : Text Segment :
‌‌ ‌‌ ‌ ‌*App Code‌ ‌‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌‌ ‌‌ ‌ ‌ ‌
‌‌ ‌ ‌ ‌ ‌ ‌ ‌*Shared Libraries
‌‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌*ART / JIT Code
‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌*Read-Only Data (RODATA)
2 : Data Segment همون Global / Static
‌‌ ‌ ‌ ‌*Initialized Data
‌‌ ‌ ‌ ‌ ‌*BSS
‌ ‌ ‌ *Read-Only Data (RODATA)

3 : Heap
‌‌ ‌ ‌ ‌*Java Heap
‌‌ ‌ ‌ ‌ *Native Heap

4 : Memory-mapped Area
‌ ‌*mmap
‌‌ ‌ ‌*Ashmem
‌ ‌ ‌*Binder Buffers
‌ ‌ ‌‌ ‌ ‌ ‌*ION / DMA / Gralloc
‌‌ ‌ ‌ ‌ ‌ ‌ ‌‌ ‌*Zygote Shared Pages
‌‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌*Page Cache
‌‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ *JIT Cache

5 : Stack
‌ ‌*Java Stack
‌ ‌ ‌ ‌‌ ‌ ‌*Native Stack

6 : Kernel Space جزو فضای ادرس نیست
‌*Kernel Memory
‌‌ ‌ ‌ ‌*Slab Allocator
‌‌ ‌ ‌ ‌ ‌ ‌ *vmalloc Area

برای ویندوز هم شبیه اندرویده حالا باید توضیحات این 6 رو بدونید که هر کدوم چیه و چه کار میکنه و . . .
توی پارت بعدی
@LearnExploit
@MR_RYSON
#LearnExploit
#RYSON
#shell
#RAM
#RAMoverflow
3
𝗟 𝗲 𝗮 𝗿 𝗻 ‌ ‌ 𝗘 𝘅 𝗽 𝗹 𝗼 𝗶 𝘁
𝗥 ‌ ‌ ‌𝗬 ‌ ‌‌ 𝗦 ‌‌ ‌ 𝗢 ‌ ‌‌ 𝗡

اول از همه شما باید 6 بخش اصلی رم رو بشناسید ، حالا زیرمجموعه هاشو توضیح بدم طولانی میشه ولی کاری که هر بخش انجام میده رو خیلی ساده میگم

بخش کد برنامه Text Segment چیه وقتی برنامه تبدیل به صفر و یک میشه همون کد ماشین و باینری این کد ها باید جایی تو RAM قرار بگیرن تا CPU اونارو اجرا کنه پس سیستم‌عامل اونارو تو یه بخش ثابت از RAM میزاره و کارش خلاصه اینه که CPU از اینجا دستور می‌خونه و این بخش تنها بخش قابل اجرا است حالا این برنامه ای که میگیم چیه یه سری دستوره که به گوشی و کامپیوتر میگه چه کاری انجام بده مثل برو جلو و برگرد عقب و عددها رو جمع کن و متن چاپ کن و رنگ صفحه رو عوض کن و .... این دستورها باید توسط CPU اجرا بشن حالا این بخش سه چهار تا گذینه داره که رید اونلی دیتا رو بدونید بد نیست ، بخش Read-Only Data همون چیز های ثابته مثلا : GAME OVER یا Version 1.0 این‌ها قرار نیست تغییر کنن پس سیستم میزارشون تو بخشی که فقط قابل خوندنه مثل نوشتن یک متن با خودکار روی یک کاغذ که پاک نمیشه ، حالا توی برنامه ها و بازی ها همینه ، همیشه توی همشون متن هایی تعریف شدن که قرار نیست تغییر کنن
حالا Data Segment چیه ببین یه بخش از حافظه‌ ی برنامست که مخصوص متغیرهای global و static ساخته میشه ، متغیرهای global / static اگه برنامه‌ای داشته باشی که یه عدد همیشه نگه داشته‌ بشه مثلا تعداد امتیاز = ۰ یا اسم کاربر = "Ali" این‌ها باید از اول تا آخر کار برنامه زنده بمونن و پویا باشن پس سیستم‌عامل این‌ها رو در بخشی ذخیره می‌کند که همیشه موجوده
حالا دیتا سگمنت دو تا بخش داره:
بخش Initialized Data برای متغیرهایی که مقدار اولیه دارن
و بخش BSS که برای متغیرهایی که مقدار اولیه ندارن در اصل سیستم خودش صفرشون میکنه
حالا هیپ چیه ؟ ، هیپ ناحیه‌ای از حافظست برای داده‌هایی که طول عمرشون و اندازشون معلوم نیست میخواد بمونه یا نه مثلا وقتی توی اینستا یه عکس باز می‌کنی اندازه‌اش معلوم نیست و بزرگه و عکسا دائم میان و میرن پس باید توی یه جای بزرگی ذخیره بشن که اونم هیپه ، و داده هایی که بین بخش‌های مختلف برنامه به اشتراک گذاشته میشن و اینم بگیم که اختصاص و ازادسازی حافظه روی هیپ دستی انجام میشه و هیپ انعطاف‌پذیره و بزرگ‌تر از استکه، ولی کندتر و مستعد fragmentation و memory leak هست و عمر داده مستقل از فراخونی توابعه
استک چیه ؟ استک حافظه ایه که به ازای هر فراخوانی تابع استفاده میشه و هر بار که تابع صدا زده می‌شه، یک Stack Frame ساخته می‌شه که شامل متغیرهای محلی و پارامترها و ادرس بازگشت میشه ، و وقتی وقتی تابع تموم می‌شه، کل فریم یک‌جا آزاد و پاک میشه ، و مدیریتش کاملا خودکاره، خیلی سریع و اندازه‌اش محدوده و به‌صورت LIFO رشد و جمع می‌شه و معمولا به سمت ادرس‌ های پایین‌تر رشد میکنه خیلی ساده برات بگم استک جای داده‌های کوچک و موقتیه مثل جمع دو عدد توی توابع یه بازی این‌ها فقط در لحظه استفاده میشن و چند میلی‌ثانیه بعد پاک می‌شن پس می‌رن روی استک یه فضای سریع و کوچیک ،
بخش Memory-mapped Area
که همون ناحیه‌ ی map شدست و این بخش جاییه که برنامه می‌تونه فایل‌ها یا منابع خارجی رو مستقیم به حافظه خودش وصل کنه و به زبون ساده فرض کن یه فایل داری مثلا یه عکس یا کتابخونه ی سیستمی ، به‌ جای اینکه کلش رو بخونی و توی RAM کپی کنی، سیستم‌ عامل میگه که اقا باشه، من این فایل رو مثل یه تیکه از حافظه بهت نشون می‌دم و این کار باعث میشه برنامه خیلی سریع‌ تر و بهینه‌ تر به داده‌ها دسترسی داشته باشه
بخش فضای کرنل ، Kernel Space
این بخش مخصوص خود سیستم‌ عامله، نه برنامه‌ ها و ساده بگم سیستم‌عامل همون کرنل باید کنترل کامل روی سخت‌افزار و مدیریت حافظه داشته باشه برای همین یه بخش جدا از حافظه داره که فقط خودش می‌تونه بهش دسترسی داشته باشه و برنامه‌های معمولی نمی‌تونن مستقیم وارد کرنل اسپیس بشن، چون خطرناکه و ممکنه کل سیستم کرش کنه حالا چرا جزو ۶ بخش حافظست ولی از رم جداست ؟ چون برای سیستم عامل کرنل هست و برنامه های مثل هیپ نمیتونن بهش دسترسی داشته باشن
اگر حافظه بندی تلگرام رو مثل بزنیم میتونیم بگیم
کدهای خود تلگرام میشه قسمتی از Text
کتابخونه های libwebp و libjpeg میشن جزوی از Memory-mapped
چت‌ها و نام‌ها و ... جزوی از Data/Heap هستن و عکس‌هایی که باز میشه از بخش Heap هست و متغیرهای موقت داخل توابع تلگرام جزوی از Stack هستن
توی پارت بعدی میریم سراغ مفاهیم ، اصطلاح ها ، انواع حمله و ....
@LearnExploit

@MR_RYSON

#LearnExploit
#RYSON
#shell
#RAM
#RAM_overflow
3
𝗟 𝗲 𝗮 𝗿 𝗻 ‌ ‌ 𝗘 𝘅 𝗽 𝗹 𝗼 𝗶 𝘁
𝗥 ‌ ‌ ‌𝗬 ‌ ‌‌ 𝗦 ‌‌ ‌ 𝗢 ‌ ‌‌ 𝗡

Part 3

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

ببین حالا Buffer Overflow چیه اینجوری بگم که وقتی داده‌ای که وارد بافر می‌کنی بیشتر از ظرفیتش باشه باعث میشه که داده از بافر سرریز کنه و وارد بخش‌های دیگه‌ ی حافظه بشه اقا مثل اینکه بافر مثل یه لیوانه و داده زیاد همون آب اضافست وقتی بریزی سرریز میشه و این سرریز می‌تونه داده‌های دیگر برنامه یا حتی جریان اجرای برنامه رو خراب کنه پس بافراور فلو یعنی سرریز شدن داده و بیشتر شدنش از اون حافظه ای که براش تعیین شده یه مثال بزنم از بافر اورفلو
مثلا یه بافر ده بایتی داریم مثلا :
[A][B][C][D][E][F][G][H][I][J]
اگر 30 بایت داخلش بریزیم
[A][B][C][D][E][F][G][H][I][J][X][X][X][X]و...
این ۲۰ بایت اضافه وارد بخشای دیگه ی RAM می‌شه، مثل متغیرهای دیگر یا حتی ادرس‌ های استک این همون سرریز دیتا توی حافظه ی رمه،،
حالا ما دو نوع اورفلو داریم که در زیرتمومش رو توضیخ میدیم
1 : Buffer Overflow

* : Stack Buffer Overflow
همونطور که از اسمش معلومه روی Stack اتفاق میوفته جایی که متغیرهای محلی و پارامترهای تابع ذخیره میشن حالا دقیقا چه اتفاقی میوفته ؟ ببین وقتی داده‌ای بیشتر از اندازه‌ی بافر مثلا آرایه ، روی استک نوشته بشه، داده‌های اضافی می‌تونن روی بخش‌های دیگه‌ی استک مثل آدرس برگشت تابع که در ادامه میگیمش ، بریزن و وقتی ریخته شد ما میتونیم مسیر اجرای برنامه رو تغییر بدیم مثلا مسیر اجرای کد مخرب اگر هم بخوام براتون مثال بزنم این کد سی رو نگاه کن

char buf[10];
gets(buf); همینجا اگه بیشتر از ده تا کاراکتر وارد بشه باعث بافر اورفلو میشه

* : Heap Buffer Overflow
این حمله هم روی Heap اتفاق میوفته جایی که حافظه‌ی دینامیک با malloc/new گرفته میشه و وقتی داده‌ای بیشتر از اندازه‌ی حافظه‌ی تعیین شده نوشته بشه، داده‌های اضافی می‌تونن روی بخش‌های دیگه‌ی Heap یا Metadata بریزن و باعث خراب شدن ساختار مدیریت حافظه یا دسترسی به داده‌های دیگه میشه کد C زیر رو نگاه کن

char *buf = malloc(10);
strcpy(buf, "خب اگر نگاه کنی میفهمی که اینجا این رشته خیلی طولانیه"); که در نهایت باعث بافر اورفلو میشه

* Global / Static Overflow
این نوع بافر اورفلو روی Data Segment اتفاق میوفته جایی که متغیرهای global و static ذخیره میشن حالا اگه داده‌ ای بیشتر از اندازه‌ی تعریف‌شده برای متغیر global/static نوشته بشه، می‌تونه روی داده‌های دیگه تو Data Segment که قبلا توضیح دادیم بریزه و باعث تغییر داده‌های مهم برنامه یا ایجاد رفتار غیرمنتظره مثل

static char msg[5] = "ry";
strcpy(msg, "Ryson"); اینجا باعث بافر اورفلو روی بخش استاتیک میشه

* : Off-by-One Overflow
ببین وقتی برنامه‌نویس به اشتباه یه واحد بیشتر یا کمتر از اندازه‌ی واقعی آرایه یا بافر استفاده کنه بهش Off-by-One میگن که در واقع یه خطای مرزی به نام Boundary Error هست که این خطا می‌تونه باعث بشه حتی فقط ی بایت خارج از محدوده نوشته بشه و همین یک بایت اضافه می‌تونه داده‌های مجاور رو خراب کنه این نوع خطا معمولا روی Stack یا Heap اتفاق میوفته چون بافرها اغلب اونجا ذخیره میشن به این صورت :

char buf[10];
for (int i = 0; i <= 10; i++) {
buf[i] = 'A';
}

اینجا اشتباهه
چون اندیس‌های مجاز این بافر از 0 تا 9 هستن
و شرط حلقه باید کمتر از اندازه‌ی واقعی بافر باشه
@LearnExploit

@MR_RYSON

#LearnExploit
#RYSON
#shell
#RAM
#RAM_overflow
2🔥1