کانال بایت امن
4.81K subscribers
455 photos
52 videos
37 files
643 links
برگزاری دوره های آموزش برنامه نویسی و امنیت نرم افزار.

https://dword.ir
@YMahmoudnia
Download Telegram
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
#Github #Exploiting #Linux

Linux Kernel Exploitation

🌐 Website

Telegram Channel : @securebyte

Our Public Group : https://t.iss.one/joinchat/8IAKs9HaoGU2NmE0
_
#Article #ReverseEngineering #Linux

📗Reverse Engineering in Linux - The Tools Showcase
By: Levis Nickaster
Pub Date: 2014

🌐 Website

Telegram Channel : @securebyte

Our Public Group : https://t.iss.one/joinchat/8IAKs9HaoGU2NmE0
_
#Article #Exploiting #Linux #Kernel

📗 Linux Kernel Exploitation 0x1 - Smashing Stack Overflows in the Kernel

Hi folks this blog post is part of a series in which I'm running through some of the basics when it comes to kernel exploit development for Linux. I've started off the series with a walk through of how to setup your kernel for debugging and included a simple debug driver to target. The post here carries on from this point and explores some stack security paradigms in the kernel.

🌐 Article Link

Telegram
Channel : @securebyte

Our Public Group : https://t.iss.one/joinchat/8IAKs9HaoGU2NmE0
_
#Article #Exploiting #linux

ROP Emporium

Learn return-oriented programming through a series of challenges designed to teach ROP techniques in isolation, with minimal reverse-engineering or bug hunting.

All challenges updated July 2020

🌐 Article Link

Telegram
Channel : @securebyte

Our Public Group : https://t.iss.one/joinchat/8IAKs9HaoGU2NmE0
_
#Article #Exploiting #linux

heap-exploitation

This book is for understanding the structure of heap memory as well as the different kinds of exploitation techniques related to it. The material provided covers in detail the implementation of glibc's heap and related memory management functions. Next, different types of attacks are discussed.

🌐 Article Link

Telegram
Channel : @securebyte

Our Public Group : https://t.iss.one/joinchat/8IAKs9HaoGU2NmE0
_
Forwarded from OS Internals (Abolfazl Kazemi)
مروری بر پروسه‌های کرنلی لینوکس

در لینوکس برخی از پروسه‌ها بخش user space‌ نداشته و کامل در دل کرنل اجرا می‌شوند. این پروسه‌ها در اجرای کارهای مختلف به سیستم‌عامل کمک کرده و به صورت background کارهایی که نیاز است انجام شوند که لینوکس بتواند سرویس‌دهی موارد مختلف را انجام دهد مدیریت می‌کنند. در این پست و ویدئو برخی از این پروسه‌ها معرفی شده و کاربردهای مختلف آن‌ها شرح داده می‌شود.

اولین پروسه (نخ) کرنلی لینوکس kthreadd است که وظیفه‌ی ایجاد یک interface برای ایجاد و مدیریت پروسه‌های کرنلی در لینوکس را داشته و همیشه با PID‌ برابر ۲ اجرا می‌شود. در کد این نخ یک حلقه‌ی بی‌نهایت وجود دارد که از لیستی به اسم kthread_create_list اطلاعات پروسه‌ی کرنلی که قرار است ایجاد شود را برداشته و آنرا ایجاد می‌کند. تمامی پروسه‌های کرنلی لینوکس از اینجا به بعد فرزندان kthreadd خواهند بود.

پروسه‌ی بعدی که معرفی می‌کنیم migration است. از پروسه‌ی کرنلی migration به تعداد coreهای cpu خواهیم داشت و وظیفه‌ی آن مدیریت پروسه‌هایی است که بر روی یک core اجرا می‌شوند و در صورت زیاد بودن بار بر روی یک core یک پروسه را از روی run_queue یک core بر داشته و بر روی run_queue یک core دیگر قرار می‌دهد.

پروسه‌ی دیگری که در ویدئو در مورد آن صحبت شده است kcompactd است که وظیفه‌ی آن جلوگیری از ایجاد fragmentation‌ در حافظه و کمک به کنارهم قرار گرفتن pageهای مرتبط در حافظه است.

یک پروسه‌ی جالب دیگر oom_reaper است که در صورتیکه سیستم‌عامل با کمبود حافظه مواجه شود دست به کار شده و با kill کردن یک پروسه فضای لازم را برای کار مابقی پروسه‌ها فراهم می‌کند.

در ویدئو در مورد پروسه‌های بیشتری صحبت شده است که می‌توانید با مشاهده‌ی آن از این پروسه‌ها اطلاع پیدا کنید.

لینک ویدئو در یوتیوب:
https://youtu.be/PsZ5GZhzvqE
لینک ویدئو در آپارات:
https://aparat.com/v/obt29c7

پ.ن ۱:‌ برای اطلاع از جزئیات پروسه‌های ابتدایی لینوکس پست زیر را مشاهده کنید:
https://t.iss.one/OxAA55/133

پ.ن ۲: برای اطلاع از جزئیات پروسه و نخ در لینوکس پست زیر را مشاهده کنید:
https://t.iss.one/OxAA55/124

#ShortLinuxInternals #linux #internals #programming #kernel #memory #threads #processes #kernel_threads
🔥163
Forwarded from OS Internals (Abolfazl Kazemi)
ساعتی با حافظه‌ی مجازی در لینوکس

یکی از کارهایی که سیستم‌های عامل از جمله لینوکس انجام می‌دهند مدیریت حافظه و ایجاد یک لایه‌ی Abstraction برای پروسه‌هاست که به کمک آن هر پروسه‌ای تصور می‌کند کل حافظه‌ی موجود در سیستم، معمولا ۳ گیگ در مدل ۳۲بیتی و ۱۲۸ترابایت در مدل ۶۴بیتی، را در اختیار داشته و از اینکه واقعا چه مقداری حافظه در سیستم موجود بوده و داده بر روی RAM یا Disk ذخیره می‌شود اطلاعی نخواهد داشت.

دریافت حافظه از سیستم‌عامل و نگاشت آن در فضای آدرس دهی پروسه‌ها نیز در واحدهایی به اسم Page و به کمک فراخوانی سیستمی mmap انجام می‌شود که پیش‌فرض مقدار 4KB داشته و از یک Page Table برای مشخص کردن اینکه چه فضایی از پروسه در کجای RAM/Disk قرار گرفته است استفاده می‌شود.

در این ویدئو مفاهیم مربوط به آدرس‌دهی مجازی Virtual Addressing در لینوکس و بخش‌هایی که در آن دخیل بوده شرح داده شده و به کمک چند نمونه کد مفاهیم تست می‌شوند.

برخی از مواردی که در مورد آن‌ها صحبت می‌کنم به شرح زیر است:
• مقدمه‌ای بر حافظه مجازی و دلیل استفاده از Virtual Addressing
• نحوه نگاشت Page و Frame
• مفهوم Page Table و نقش آن در نگاشت آدرس‌ها
• بررسی فایل proc/iomem/ و نحوه نگاشت حافظه در RAM
• تفاوت Page Fault‌های Major و Minor و نحوه مدیریت آن‌ها
• آشنایی با Zone‌های حافظه در لینوکس
• معرفی Slab Allocator و مفهوم کش‌های حافظه
• مقایسه روش‌های تخصیص حافظه در کرنل kmalloc vs vmalloc
• بررسی اطلاعات در حافظه‌ مجازی و RAM به کمک Qemu

لینک ویدئو در یوتیوب:
https://youtu.be/2bjuqRLFaHc
لینک ویدئو در آپارات:
https://aparat.com/v/xqj64rn

#ShortLinuxInternals #linux #internals #VirtualMemory #MemoryManagement #KernelProgramming #PageTable #PageFault #SlabAllocator #kmalloc #vmalloc #SystemProgramming #EmbeddedLinux
16👍5
Forwarded from OS Internals (Abolfazl Kazemi)
📢 انتشار فصل اول دوره توسعه اکسپلویت در لینوکس

📚 این فصل شامل ۷ ویدئو می‌باشد و در آن با مفاهیم بنیادین اجرای برنامه‌ها در سیستم‌عامل لینوکس آشنا می‌شوید؛ از مروری بر برنامه‌نویسی و ساختار فایل‌های اجرایی گرفته تا نحوه‌ی ایجاد و اجرای پروسه‌ها و مدیریت حافظه. این فصل پایه‌ای محکم برای درک مباحث پیشرفته‌تری ایجاد می‌کند که در فصل‌های آینده به آن‌ها خواهیم پرداخت.

✍️ لینک ویدئوهای فصل در یوتیوب:
00) Course Introduction
P01-01) Programming Review
P01-02) ELF Intro
P01-03) Process Execution
P01-04) Heap Investigation
P01-05) Process Address Space
P01-06) Virtual Memory
P01-07) Syscalls Intro

✍️ لینک ویدئوهای فصل در آپارات:
https://aparat.com/v/qxvin87
https://aparat.com/v/fwd0751
https://aparat.com/v/ljqz0v8
https://aparat.com/v/pdw1xkk
https://aparat.com/v/nct8m83
https://aparat.com/v/eak4pvp
https://aparat.com/v/lbuc0q0
https://aparat.com/v/sfb8398

#linux #exploitdev #internals #programming #security
21🔥13🤩1
Forwarded from OS Internals (Abolfazl Kazemi)
📢 انتشار فصل پنجم دوره Linux Exploit Development

ℹ️ مقدمات توسعه اکسپلویت ۶۴بیتی

📚 این فصل شما را با مقدمات اکسپلویت در معماری ۶۴ بیتی آشنا می‌کند. از معرفی محیط‌های CTF و انجام مثال عملی ازPicoCTF شروع می‌کنیم، سپس اسمبلی ۶۴ بیتی و قواعد اجرای توابع در این معماری را بررسی می‌کنیم و در نهایت اولین Buffer Overflow را روی باینری‌های ۶۴ بیتی پیاده‌سازی می‌کنیم. هدف فصل این است که پل بین مفاهیم ۳۲ بیتی و دنیای ۶۴ بیتی را برای شما برقرار کند تا آماده تکنیک‌های پیشرفته‌تر و ROP شوید.

✍️ لینک ویدئوهای فصل ۵ در یوتیوب:
P05-01) CTF Intro
P05-02) PicoCTF 2022 BOF3
P05-03) x64 Assembly Intro
P05-04) Investigating x64 Calling Convention
P05-05) First Buffer Overflow in x64

✍️ لینک ویدئوهای فصل ۵ در آپارات:
https://aparat.com/v/hxtp970
https://aparat.com/v/xfw4xda
https://aparat.com/v/pfgbp4h
https://aparat.com/v/tjqijuo
https://aparat.com/v/xhio798

#linux #exploitdev #gdb #buffer_overflow #format_string #x64 #PicoCTF #CTF
124🔥5👍1
Forwarded from OS Internals (Abolfazl Kazemi)
📢 انتشار فصل ششم دوره Linux Exploit Development

ℹ️ مقدمات برنامه‌نویسی ROP

📚 در این فصل وارد دنیای Return Oriented Programming (ROP) می‌شویم؛ تکنیکی قدرتمند برای دور زدن مکانیزم‌های امنیتی مدرن مثل NX، ASLR و PIE. با یادگیری ROP می‌توانیم بدون نیاز به اجرای مستقیم شل‌کد، با استفاده از «گجت»‌های موجود در باینری یا کتابخانه‌ها، جریان اجرای برنامه را کنترل کنیم و به اهداف دلخواه برسیم.

در این فصل ابتدا با فلسفهٔ ROP و اینکه چرا اصلاً به آن نیاز داریم آشنا می‌شویم، سپس یک مثال کلاسیک را بررسی می‌کنیم، یاد می‌گیریم چگونه با ترکیب GDB و Pwntools یک ROP chain بسازیم و در نهایت با حل چند چالش واقعی ۳۲ و ۶۴بیتی مهارت‌های ROP خود را تثبیت می‌کنیم.

✍️ لینک ویدئوهای فصل ۶ در یوتیوب:
P06-01) Why and What of Return Oriented Programming
P06-02) ROP Example from the Slides
P06-03) Using GDB with PwnTools
P06-04) Solving PicoCTF 2022 BOF2 x64 Using ROP
P06-05) Solving PicoCTF 2022 ropfu - x86 ROP

✍️ لینک ویدئوهای فصل ۶ در آپارات:
https://aparat.com/v/jvk1197
https://aparat.com/v/qrmoa1w
https://aparat.com/v/mduh9nw
https://aparat.com/v/ebe78jn
https://aparat.com/v/qne1782

#linux #exploitdev #gdb #rop #buffer_overflow #x64 #PicoCTF #CTF
19👍2🔥2
Forwarded from OS Internals (Abolfazl Kazemi)
📢 انتشار فصل هفتم دوره Linux Exploit Development

ℹ️ جزئیات ساختار فایل‌های ELF. مشاهده‌ی این فصل به علاقه‌مندان به Internal لینوکس نیز توصیه می‌شود.

📚 در این فصل به‌صورت عمیق با ساختار فایل‌های ELF آشنا می‌شویم؛ فرمت استانداردی که تمام باینری‌ها، کتابخانه‌ها و ابزارهای لینوکسی بر پایه آن ساخته شده‌اند.
درک صحیح ELF نه‌ تنها برای تحلیل آسیب‌پذیری‌ها و نوشتن اکسپلویت‌ها ضروری است، بلکه برای علاقه‌مندان Linux Internals و متخصصان امنیت نیز یک مهارت کلیدی محسوب می‌شود.

📚در این فصل بخش‌های مختلف ELF شامل سرآیندها، جدول‌های رشته، Program Headerها و Section Headerها را بررسی می‌کنیم و سپس وارد دنیای لینک‌دهی پویا می‌شویم. در نهایت نحوه‌ی عملکرد GOT/PLT و اینکه سیستم‌عامل چگونه توابع کتابخانه‌ای را هنگام اجرا resolve می‌کند را یاد می‌گیرید — دانشی که پایه‌ی بسیاری از تکنیک‌های تحلیل و اکسپلویت‌نویسی پیشرفته است، مثل ret2plt و ret2got.

✍️ لینک ویدئوهای فصل ۷ در یوتیوب:
P07-01) ELF Introduction
P07-02) ELF Header
P07-03) ELF Entrypoint
P07-04) Program Headers
P07-05) Playing with Program Headers
P07-06) String Table
P07-07) Section Headers
P07-08) Dynamic Linking
P07-09) GOT and PLT
P07-10) Resolving library functions using PLT GOT

✍️ لینک ویدئوهای فصل ۷ در آپارات:
https://aparat.com/v/ajsd66x
https://aparat.com/v/wzj6d2e
https://aparat.com/v/lyi132n
https://aparat.com/v/oxp9p38
https://aparat.com/v/mql32hk
https://aparat.com/v/uidj0gv
https://aparat.com/v/axwxxgp
https://aparat.com/v/rjwj757
https://aparat.com/v/flg5k5l
https://aparat.com/v/awd2k2c

#linux #exploitdev #gdb #ELF #binary_analysis #internals #got #plt #linking
12👍3🔥3