Offensive Security
ریپوی زیر یک رودمپ خوب و عملی برای یادگیری C ارائه میده؛ از پروژههای کوچک تا مفاهیم عمیق. برای رسیدن به جایگاه سنیور در ردتیمینگ، تسلط روی یه زبان سطح پایین یک الزام واقعیه. اگر از امروز شروع کنی، تا پایان سال ۴۰۴ به درک قابلقبولی از زبانهای سطحپایین…
تو یادگیری C با گرایش offensive، تمرکز اصلی روی systems programming و exploit development هستش.
چندتا مثال از مباحثیهایی که باید بلد باشید میزنم ولی قطعا کامل نیست و باید برید دنبالش و خودتون تهشو دربیارید اما بهتون یک دید نسبی میده.
1) Memory Management and Pointers
• مدل حافظه: stack، heap، data segments
• ساختار stack frame و چیدمان متغیرها
• pointer arithmetic و مدیریت ایمن پوینتر
• انواع خطاهای حافظه: UAF، OOB، double free، heap corruption
• رفتار allocatorها: glibc malloc، ptmalloc، Windows Heap
• اصول PIC و کدنویسی غیر وابسته به آدرس
• ASLR bypass
• DEP bypass
• ROP chain basics
2) Syscalls and Direct Kernel Interaction
• تفاوت API سطحبالا با syscall
• استفاده از raw syscall
• الگوهای indirect syscall و syscall stubbing
• رجیسترها و calling convention ویندوز در syscall
• رجیسترها و calling convention لینوکس در syscall
• inline assembly برای کنترل مسیر اجرای سطح پایین
3) Assembly and Reverse Engineering
• تسلط بر x86/x64 در Intel و AT&T
• تفاوت inline asm در GCC/Clang/MSVC
• تفاوت calling convention در ویندوز و لینوکس
• ساخت کد PIC و شلکد
• تحلیل خروجی اسمبلی کامپایلر
• شناسایی Hookها در DLLها و تفاوت IAT/Inline
• IDA Pro
• Ghidra
• Binary Ninja
• DWARF / PDB basics
4) Networking and Protocols
• کار با Winsock و Berkeley Sockets
• ساخت و استفاده از Raw Sockets
• طراحی پروتکل باینری اختصاصی
• ایجاد Covert Channels
• تنظیم beacon jitter
• الگوهای Traffic Shaping و domain fronting
• TLS/SSL
• crypto libs در C
• shared library hijacking (LD_PRELOAD / LD_AUDIT)
• DLL search‑order hijacking
• systemd service persistence
• cron + at jobs
5) File I/O and Persistence
• memory mapping با mmap / MapViewOfFile
• ذخیرهسازی در : ADS، cache، Registry
• پایدار کردن دسترسی در سطح یوزر اسپیس
• مفهوم rootkit در یوزر اسپیس
• ساختارهای کلی روتکیت تو کرنل اسپیس
و DKOM
• CreateRemoteThread
• APC injection
• process hollowing
• reflective DLL injection
6) Executable File Formats (PE / ELF)
• ساختارهای PE و ELF
• manual mapping
• reflective loading
• relocation و import resolution
• اجرای memory-only
7) Code Obfuscation
• string encryption
• API hashing
• control flow flattening
• opaque predicates
• MBA transformations
• junk code insertion
• anti-debugging techniques
• timing checks
• hardware breakpoints detection
• anti-VM / anti-sandbox
• exception-based checks
8) Linux Internals
• ساختار ELF زمان load شدن و نقش ld.so در dynamic linking
• جریان resolve شدن symbol از طریق PLT/GOT
• لایهی syscall در لینوکس (glibc wrapper، direct syscall، VDSO)
• مدل memory layout پروسهها شامل stack، heap، anon maps، VDSO
• رفتار ptrace و سطح دسترسی debugger نسبت به رجیسترها و memory
• مکانیزم seccomp-bpf و محدودیتهای syscalls در sandbox
• معماری LSM مثل AppArmor و SELinux و نقش آنها در enforcement
• ساختار audit subsystem و eventهای قابل مانیتور
• رفتار loader در اجرای باینریهای PIE و نحوهٔ ASLR لینوکس
• فایلهای کلیدی procfs برای enumeration و injection
• مدل threading لینوکسی مبتنی بر NPTL
• ساختار cgroup و namespaceها برای isolation و evasion
• تکنیکهای user-mode hooking در لینوکس
• سطح حملهٔ kernel شامل syscall table، kprobes، eBPF، module loading
• تعامل با /dev/mem و /proc/kcore برای RE و memory analysis
• basic filesystem internals
9) Windows Internals
• تفاوت Win32 API و NTAPI
• دسترسی مستقیم به NTAPI
• ساختار PEB و TEB و روشهای دسترسی مستقیم
• رفتار loader در بارگذاری PE
• تعامل ETW با رفتار پردازه
• مکانیزمهای AMSI و WLDP
• مبانی kernel debugging (WinDbg)
• driver development
• SSDT hooking
• Ring 0 exploits
• Thread hiding techniques
10) Multithreading
• ایجاد thread در Win32 API و NTAPI
• استفاده از TLS
• sync: mutex، semaphore، critical section، atomic ops
• I/O: blocking، non‑blocking، overlapped، IOCP
• thread-based vs event-driven
ساختار میتونه بسته به هدف شما تغییر کنه و حتی بعضی از مبحثها حذف یا چیزهای جدیدی بهش اضافه بشه. اول باید مشخص کنید دقیقاً دنبال چه کاری هستید، بعد بر اساس اون مسیر مناسب رو انتخاب کنید.
@GoSecurity
#exploit
#low_level
#linux #windows
#security
چندتا مثال از مباحثیهایی که باید بلد باشید میزنم ولی قطعا کامل نیست و باید برید دنبالش و خودتون تهشو دربیارید اما بهتون یک دید نسبی میده.
1) Memory Management and Pointers
• مدل حافظه: stack، heap، data segments
• ساختار stack frame و چیدمان متغیرها
• pointer arithmetic و مدیریت ایمن پوینتر
• انواع خطاهای حافظه: UAF، OOB، double free، heap corruption
• رفتار allocatorها: glibc malloc، ptmalloc، Windows Heap
• اصول PIC و کدنویسی غیر وابسته به آدرس
• ASLR bypass
• DEP bypass
• ROP chain basics
2) Syscalls and Direct Kernel Interaction
• تفاوت API سطحبالا با syscall
• استفاده از raw syscall
• الگوهای indirect syscall و syscall stubbing
• رجیسترها و calling convention ویندوز در syscall
• رجیسترها و calling convention لینوکس در syscall
• inline assembly برای کنترل مسیر اجرای سطح پایین
3) Assembly and Reverse Engineering
• تسلط بر x86/x64 در Intel و AT&T
• تفاوت inline asm در GCC/Clang/MSVC
• تفاوت calling convention در ویندوز و لینوکس
• ساخت کد PIC و شلکد
• تحلیل خروجی اسمبلی کامپایلر
• شناسایی Hookها در DLLها و تفاوت IAT/Inline
• IDA Pro
• Ghidra
• Binary Ninja
• DWARF / PDB basics
4) Networking and Protocols
• کار با Winsock و Berkeley Sockets
• ساخت و استفاده از Raw Sockets
• طراحی پروتکل باینری اختصاصی
• ایجاد Covert Channels
• تنظیم beacon jitter
• الگوهای Traffic Shaping و domain fronting
• TLS/SSL
• crypto libs در C
• shared library hijacking (LD_PRELOAD / LD_AUDIT)
• DLL search‑order hijacking
• systemd service persistence
• cron + at jobs
5) File I/O and Persistence
• memory mapping با mmap / MapViewOfFile
• ذخیرهسازی در : ADS، cache، Registry
• پایدار کردن دسترسی در سطح یوزر اسپیس
• مفهوم rootkit در یوزر اسپیس
• ساختارهای کلی روتکیت تو کرنل اسپیس
و DKOM
• CreateRemoteThread
• APC injection
• process hollowing
• reflective DLL injection
6) Executable File Formats (PE / ELF)
• ساختارهای PE و ELF
• manual mapping
• reflective loading
• relocation و import resolution
• اجرای memory-only
7) Code Obfuscation
• string encryption
• API hashing
• control flow flattening
• opaque predicates
• MBA transformations
• junk code insertion
• anti-debugging techniques
• timing checks
• hardware breakpoints detection
• anti-VM / anti-sandbox
• exception-based checks
8) Linux Internals
• ساختار ELF زمان load شدن و نقش ld.so در dynamic linking
• جریان resolve شدن symbol از طریق PLT/GOT
• لایهی syscall در لینوکس (glibc wrapper، direct syscall، VDSO)
• مدل memory layout پروسهها شامل stack، heap، anon maps، VDSO
• رفتار ptrace و سطح دسترسی debugger نسبت به رجیسترها و memory
• مکانیزم seccomp-bpf و محدودیتهای syscalls در sandbox
• معماری LSM مثل AppArmor و SELinux و نقش آنها در enforcement
• ساختار audit subsystem و eventهای قابل مانیتور
• رفتار loader در اجرای باینریهای PIE و نحوهٔ ASLR لینوکس
• فایلهای کلیدی procfs برای enumeration و injection
• مدل threading لینوکسی مبتنی بر NPTL
• ساختار cgroup و namespaceها برای isolation و evasion
• تکنیکهای user-mode hooking در لینوکس
• سطح حملهٔ kernel شامل syscall table، kprobes، eBPF، module loading
• تعامل با /dev/mem و /proc/kcore برای RE و memory analysis
• basic filesystem internals
9) Windows Internals
• تفاوت Win32 API و NTAPI
• دسترسی مستقیم به NTAPI
• ساختار PEB و TEB و روشهای دسترسی مستقیم
• رفتار loader در بارگذاری PE
• تعامل ETW با رفتار پردازه
• مکانیزمهای AMSI و WLDP
• مبانی kernel debugging (WinDbg)
• driver development
• SSDT hooking
• Ring 0 exploits
• Thread hiding techniques
10) Multithreading
• ایجاد thread در Win32 API و NTAPI
• استفاده از TLS
• sync: mutex، semaphore، critical section، atomic ops
• I/O: blocking، non‑blocking، overlapped، IOCP
• thread-based vs event-driven
ساختار میتونه بسته به هدف شما تغییر کنه و حتی بعضی از مبحثها حذف یا چیزهای جدیدی بهش اضافه بشه. اول باید مشخص کنید دقیقاً دنبال چه کاری هستید، بعد بر اساس اون مسیر مناسب رو انتخاب کنید.
@GoSecurity
#exploit
#low_level
#linux #windows
#security
❕Linux Reverse Engineering and Exploitation ❕
❗️Key Learning Objectives
Linux Architecture & Security: processes, memory,
permissions, protections
Vulnerability Types: buffer overflows, integer overflows, format strings, privilege escalations
Reverse Engineering: assembly basics, binary disassembly, decompilation
Practical Exploitation: bypassing ASLR, stack canaries, NX, and RELRO
ROP & Shellcoding: return-oriented programming techniques and writing basic shellcodes
Hands-on CTF Challenges: PicoCTF, TryHackMe, OverTheWire (Narnia), ROP Emporium
https://github.com/akazemi67/Linux-Exploit-Development-Course
https://t.iss.one/OxAA55
@GoSecurity
#Linux #exploit #RE #linux_internals
❗️Key Learning Objectives
Linux Architecture & Security: processes, memory,
permissions, protections
Vulnerability Types: buffer overflows, integer overflows, format strings, privilege escalations
Reverse Engineering: assembly basics, binary disassembly, decompilation
Practical Exploitation: bypassing ASLR, stack canaries, NX, and RELRO
ROP & Shellcoding: return-oriented programming techniques and writing basic shellcodes
Hands-on CTF Challenges: PicoCTF, TryHackMe, OverTheWire (Narnia), ROP Emporium
https://github.com/akazemi67/Linux-Exploit-Development-Course
https://t.iss.one/OxAA55
@GoSecurity
#Linux #exploit #RE #linux_internals
GitHub
GitHub - akazemi67/Linux-Exploit-Development-Course: This course provides a practical introduction to Linux reverse engineering…
This course provides a practical introduction to Linux reverse engineering and exploitation. You’ll learn how Linux binaries work under the hood, how vulnerabilities arise, and how to discover and ...
This cve addresses a vulnerability in sudo versions 1.9.14 to 1.9.17, enabling unauthorized local privilege escalation to root access.
https://github.com/Nowafen/CVE-2025-32463
@GoSecurity
#CVE #LPE #Linux #exploit
https://github.com/Nowafen/CVE-2025-32463
@GoSecurity
#CVE #LPE #Linux #exploit
👾2