An introduction to kernel exploitation part 1.
https://pwning.systems/posts/an-introduction-to-kernel-exploitation-part1/
#linux #kernel_exploitation #pwning_kernel #pwn
@securation
https://pwning.systems/posts/an-introduction-to-kernel-exploitation-part1/
#linux #kernel_exploitation #pwning_kernel #pwn
@securation
pwning.systems
An introduction to Kernel Exploitation Part 1
I’m writing this post because I often hear that kernel exploitation is intimidating or difficult to learn. As a result, I’ve decided to start a series of basic bugs and exercises to get you started!
Prerequisites
Knowledge of the Linux command line Knowing…
Prerequisites
Knowledge of the Linux command line Knowing…
This media is not supported in your browser
VIEW IN TELEGRAM
⭕️ Exploiting CVE-2021-43267
heap overflow vulnerability in the TIPC subsystem of the Linux kernel
https://haxx.in/posts/pwning-tipc/
#heap #kernel #linkux #binexp
@securation
heap overflow vulnerability in the TIPC subsystem of the Linux kernel
https://haxx.in/posts/pwning-tipc/
#heap #kernel #linkux #binexp
@securation
⭕️ Linux Kernel Exploitation 0x1 - Smashing Stack Overflows in the Kernel
https://blog.k3170makan.com/2020/11/linux-kernel-exploitation-0x1-smashing.html
#linux #kernel #stackoverflow
@securation
https://blog.k3170makan.com/2020/11/linux-kernel-exploitation-0x1-smashing.html
#linux #kernel #stackoverflow
@securation
Forwarded from OS Internals (Abolfazl Kazemi)
جزئیات پروسه و نخ در لینوکس
به صورت خلاصه از دید ویندوز پروسه فقط یک container میباشد که اجرا نشده و فضایی برای اجرای Threadها فراهم میکند و در سطح کرنل نیز دو ساختار EPROCESS, ETHREAD برای این دو تعریف شدهاند. اما در لینوکس ماجرا متفاوت است و Process, Thread هر دو قابلیت اجرا داشته و در سطح کرنل نیز یک ساختار task_struct برای آنها تعریف شده است. در دنیای شیگرایی مثل این است که در لینوکس یک کلاس برای این دو وجود دارد و فقط در زمان ایجاد شی خصوصیات متفاوتی برای آنها تنظیم میشود.
اگر به سراغ برنامهنویسی سیستمی در لینوکس برویم، تابع fork برای ایجاد پروسه استفاده شده و از تابع pthread_create نیز برای ایجاد نخ در لینوکس استفاده میشود. در سطحی کمی پایینتر، هر دوی این توابع syscallای به نام clone را فراخوانی میکنند و با ستکردن فلگهایی مشخص میکنند که قصد ایجاد پروسه یا نخ را دارند. در زمان بررسی برنامهها، در خروجی دستور ps برای یک برنامهی چند پروسهای pidهای مختلفی خواهیم دید ولی در یک برنامهی چند نخی pidها یکسان بوده ولی عددهای متفاوتی در فیلد Light-Weight Process-LWP میبینیم.
نکتهی جالب دیگر این است که در سطح کرنل پروسهها یک لیست پیوندی تشکیل میدهند. هم شیوهی ایجاد لیست پیوندی Generic در سطح کرنل و در زبان C موضوع جالبی است و هم اینکه به کمک فیلدی به اسم tasks میتوانیم یک لیست پیوندی از پروسهها تشکیل دهیم که به پروسههای قبلی و بعدی اشاره میکند.
این موارد و موارد دیگری از جزئیات پروسهها و نخهای لینوکس مواردی هستند که در این ویدئو به آن میپردازیم.
لینک ویدئو در یوتیوب:
https://youtu.be/0fxYtyFn8Jc
لینک ویدئو در آپارات:
https://aparat.com/v/cnytp55
#ShortLinuxInternals #linux #internals #syscalls #kernel #process #thread #gdb #qemu #clone #LWP
به صورت خلاصه از دید ویندوز پروسه فقط یک container میباشد که اجرا نشده و فضایی برای اجرای Threadها فراهم میکند و در سطح کرنل نیز دو ساختار EPROCESS, ETHREAD برای این دو تعریف شدهاند. اما در لینوکس ماجرا متفاوت است و Process, Thread هر دو قابلیت اجرا داشته و در سطح کرنل نیز یک ساختار task_struct برای آنها تعریف شده است. در دنیای شیگرایی مثل این است که در لینوکس یک کلاس برای این دو وجود دارد و فقط در زمان ایجاد شی خصوصیات متفاوتی برای آنها تنظیم میشود.
اگر به سراغ برنامهنویسی سیستمی در لینوکس برویم، تابع fork برای ایجاد پروسه استفاده شده و از تابع pthread_create نیز برای ایجاد نخ در لینوکس استفاده میشود. در سطحی کمی پایینتر، هر دوی این توابع syscallای به نام clone را فراخوانی میکنند و با ستکردن فلگهایی مشخص میکنند که قصد ایجاد پروسه یا نخ را دارند. در زمان بررسی برنامهها، در خروجی دستور ps برای یک برنامهی چند پروسهای pidهای مختلفی خواهیم دید ولی در یک برنامهی چند نخی pidها یکسان بوده ولی عددهای متفاوتی در فیلد Light-Weight Process-LWP میبینیم.
نکتهی جالب دیگر این است که در سطح کرنل پروسهها یک لیست پیوندی تشکیل میدهند. هم شیوهی ایجاد لیست پیوندی Generic در سطح کرنل و در زبان C موضوع جالبی است و هم اینکه به کمک فیلدی به اسم tasks میتوانیم یک لیست پیوندی از پروسهها تشکیل دهیم که به پروسههای قبلی و بعدی اشاره میکند.
این موارد و موارد دیگری از جزئیات پروسهها و نخهای لینوکس مواردی هستند که در این ویدئو به آن میپردازیم.
لینک ویدئو در یوتیوب:
https://youtu.be/0fxYtyFn8Jc
لینک ویدئو در آپارات:
https://aparat.com/v/cnytp55
#ShortLinuxInternals #linux #internals #syscalls #kernel #process #thread #gdb #qemu #clone #LWP
YouTube
Process and Thread Internals in Linux [PER]
به صورت خلاصه از دید ویندوز پروسه فقط یک container میباشد که اجرا نشده و فضایی برای اجرای Threadها فراهم میکند و در سطح کرنل نیز دو ساختار EPROCESS, ETHREAD برای این دو تعریف شدهاند. اما در لینوکس ماجرا متفاوت است و Process, Thread هر دو قابلیت اجرا داشته…