تجربهی تولید محتوا در مورد Windows Internals و تغییر روند با دریافت بازخوردها
از اواخر سال ۱۴۰۰ شروع به ضبط ویدئو در مورد Windows Internals کردم و از بهار امسال انتشار ویدئوها رو شروع کردم. در این روند دوستانی بهم بازخورد دادند و برخی مواقع مواردی رو توصیه کردند که به کیفیت ارائهها کمک میکرد که از همگی ممنونم. یک مشکلی که برخی از دوستان ذکر کردند این بود که روند ویدئوها یکم یکنواخت بوده و مثالها ساده بودند. برخی مواقع هم توصیهها در مورد اضافه کردن یکسری مطالب بودند که باعث شد یک فصل Debug اضافه کنم ولی در مجموع روند برای خودم هم دلپذیر نبود.
همزمان یک اتفاق خوبی که امسال در شرکت مهسان رخ داد اضافه شدن یک بخش آموزش به HR با مسئولیت محمدرضا واحدی عزیز بود که سعی داره مطالبی که برای همکاران میتونه به صورت مستقیم یا غیر مستقیم مفید باشه رو در قالب کلاس و ارائه برگزار کنه تا همکاران از بحث آموزش و تقویت خودشون غافل نشند. این بود که بازخورد ایشان رو هم گرفتم و از کمکشون استفاده کردم تا اگر میشه یکسری ارائه در مورد Internals ویندوز و لینوکس و موارد دیگه در شرکت داشته باشیم که پویایی بیشتری وجود داشته باشه و مستقیم بتونم از همکاران هم بازخورد بگیرم.
این شد که مسیر به ارائههایی با عنوان Internals Sessions رسید که در هر جلسه از اون یک موردی به صورت نسبتا عمیق در ویندوز و لینوکس بررسی بشه. به این شکل همزمان میشه یک مقایسهای هم بین معماری این دو سیستمعامل داشته و یک موضوع رو بهتر درک کرده و با توجه به Open Source بودن لینوکس بررسی کد رو هم انجام داد.
همچنین لازمه از آقای میلادسلیمی جهت طراحی بنر ارائهها و آقای محمدمهدی عسکرزاده جهت آمادهسازی محیط ضبط تشکر کنم.
در ادامه میتونید اولین جلسه ارائه در مورد System Calls در لینوکس را مشاهده کنید. در این ارائه مطالب زیر توضیح داده شدهاند:
• کامپایل و راهاندازی لینوکس با QEMU
• بررسی syscallدر usermode به کمک strace
• بررسی syscall در kernel به کمک ftrace
• دیباگ کرنل با gdb
• اضافه کردن syscall به لینوکس
• شیوهی ارسال پارامترهای syscall به کرنل
• بررسی راهاندازی syscall و رجیستر MSR_LSTAR
• جزئیات دستور syscall در اینتل
• شیوهی پردازش syscall در کرنل
• بررسی کردن sys_call_table در gdb
لینک ارائه در یوتیوب:
https://youtu.be/1LBiSh-C9WU
لینک ارائه در آپارات:
https://www.aparat.com/v/Bn2Yf
#windows #linux #internals #kernel #gdb #debugging #syscall #programming #ftrace #strace #qemu
از اواخر سال ۱۴۰۰ شروع به ضبط ویدئو در مورد Windows Internals کردم و از بهار امسال انتشار ویدئوها رو شروع کردم. در این روند دوستانی بهم بازخورد دادند و برخی مواقع مواردی رو توصیه کردند که به کیفیت ارائهها کمک میکرد که از همگی ممنونم. یک مشکلی که برخی از دوستان ذکر کردند این بود که روند ویدئوها یکم یکنواخت بوده و مثالها ساده بودند. برخی مواقع هم توصیهها در مورد اضافه کردن یکسری مطالب بودند که باعث شد یک فصل Debug اضافه کنم ولی در مجموع روند برای خودم هم دلپذیر نبود.
همزمان یک اتفاق خوبی که امسال در شرکت مهسان رخ داد اضافه شدن یک بخش آموزش به HR با مسئولیت محمدرضا واحدی عزیز بود که سعی داره مطالبی که برای همکاران میتونه به صورت مستقیم یا غیر مستقیم مفید باشه رو در قالب کلاس و ارائه برگزار کنه تا همکاران از بحث آموزش و تقویت خودشون غافل نشند. این بود که بازخورد ایشان رو هم گرفتم و از کمکشون استفاده کردم تا اگر میشه یکسری ارائه در مورد Internals ویندوز و لینوکس و موارد دیگه در شرکت داشته باشیم که پویایی بیشتری وجود داشته باشه و مستقیم بتونم از همکاران هم بازخورد بگیرم.
این شد که مسیر به ارائههایی با عنوان Internals Sessions رسید که در هر جلسه از اون یک موردی به صورت نسبتا عمیق در ویندوز و لینوکس بررسی بشه. به این شکل همزمان میشه یک مقایسهای هم بین معماری این دو سیستمعامل داشته و یک موضوع رو بهتر درک کرده و با توجه به Open Source بودن لینوکس بررسی کد رو هم انجام داد.
همچنین لازمه از آقای میلادسلیمی جهت طراحی بنر ارائهها و آقای محمدمهدی عسکرزاده جهت آمادهسازی محیط ضبط تشکر کنم.
در ادامه میتونید اولین جلسه ارائه در مورد System Calls در لینوکس را مشاهده کنید. در این ارائه مطالب زیر توضیح داده شدهاند:
• کامپایل و راهاندازی لینوکس با QEMU
• بررسی syscallدر usermode به کمک strace
• بررسی syscall در kernel به کمک ftrace
• دیباگ کرنل با gdb
• اضافه کردن syscall به لینوکس
• شیوهی ارسال پارامترهای syscall به کرنل
• بررسی راهاندازی syscall و رجیستر MSR_LSTAR
• جزئیات دستور syscall در اینتل
• شیوهی پردازش syscall در کرنل
• بررسی کردن sys_call_table در gdb
لینک ارائه در یوتیوب:
https://youtu.be/1LBiSh-C9WU
لینک ارائه در آپارات:
https://www.aparat.com/v/Bn2Yf
#windows #linux #internals #kernel #gdb #debugging #syscall #programming #ftrace #strace #qemu
YouTube
01) System Calls in Linux فراخوانی سیستمی در لینوکس
این ویدئو اولین جلسهی Internals Sessions است که در هر جلسه از آن به بررسی یک موضوعی در ویندوز یا لینوکس پرداخته و شیوهی پیادهسازی و طرز کار آن قسمت را توضیح میدهیم. در این جلسه به بررسی ساختار System Call در لینوکس و شیوهی اضافه کردن یک syscall به آن…
❤24👍1
انتشار جلسه دوم Internals Sessions و خاتمه ارائههای سال ۱۴۰۱
این ویدئو دومین جلسه از ارائههای Internals Sessions است که در هر قسمت آن به بررسی موضوعی در ویندوز یا لینوکس میپردازیم. در این ارائه ابتدا در مورد ابزارهایی که برای بررسی سیستمعامل ویندوز استفاده میشوند صحبت کرده و شیوهی استفاده از Process Explorer/Process Monitor نمایش داده میشود. سپس به شرح نحوهی استفاده از WinDbg برای دیباگ برنامهها و کرنل ویندوز پرداخته و قرارداد فراخوانی توابع در مدل 64بیتی نمایش داده میشود. در انتها نیز چرخهی اجرای توابع ویندوز و رسیدن درخواست به کرنل و پردازش System Call شرح داده شده و به کمک WinDbg بررسی میشود. ارائه با نمایش فراخوانی سیستمی به صورت مستقیم و عدم استفاده از لایهی ntdll.dll به پایان میرسد.
جزئیات مطالبی که در این ارائه بررسی میشوند به شرح زیر هستند:
• مرور User/Kernel Modes و حافظهی مجازی
• معرفی ابزارهای SysInternals
• نمایش اطلاعات Process/Thread با Process Explorer
• معرفی Handle و کاربرد آن
• نمایش رویدادهای پروسه و APIهای اجرا شده با Process Monitor
• معرفی WinDbg، انواع دستورات آن و کاربرد Symbols
• مرور Calling Conventions در مدل ۶۴بیتی و بررسی آن در WinDbg
• فعال کردن Debuggingدر ویندوز
• اتصال WinDbg به کرنل ویندوز از طریق شبکه
• معرفی EPROCESS
• چرخهی طی شده برای WinAPIs از User Mode تا Kernel
• جزئیات اجرای دستور syscall و رجیستر MSR_LSTAR
• مروری بر پیادهسازی CreateFile در ReactOS
• شرح ساختار System Service Table (KiServiceTable)
• بررسی CreateFile از User Mode تا کرنل و رسیدن به syscall از روی KiServiceTable
• اجرای مستقیم CreateFile با فراخوانی سیستمی بدون ntdll
لینک ارائه در یوتیوب و آپارات:
https://youtu.be/_dJPXsfnx3U
https://aparat.com/v/C7xIE
لینک کانال من در تلگرام:
https://t.me/OxAA55
#windows #internals #kernel #windbg #syscall #programming #debugging
این ویدئو دومین جلسه از ارائههای Internals Sessions است که در هر قسمت آن به بررسی موضوعی در ویندوز یا لینوکس میپردازیم. در این ارائه ابتدا در مورد ابزارهایی که برای بررسی سیستمعامل ویندوز استفاده میشوند صحبت کرده و شیوهی استفاده از Process Explorer/Process Monitor نمایش داده میشود. سپس به شرح نحوهی استفاده از WinDbg برای دیباگ برنامهها و کرنل ویندوز پرداخته و قرارداد فراخوانی توابع در مدل 64بیتی نمایش داده میشود. در انتها نیز چرخهی اجرای توابع ویندوز و رسیدن درخواست به کرنل و پردازش System Call شرح داده شده و به کمک WinDbg بررسی میشود. ارائه با نمایش فراخوانی سیستمی به صورت مستقیم و عدم استفاده از لایهی ntdll.dll به پایان میرسد.
جزئیات مطالبی که در این ارائه بررسی میشوند به شرح زیر هستند:
• مرور User/Kernel Modes و حافظهی مجازی
• معرفی ابزارهای SysInternals
• نمایش اطلاعات Process/Thread با Process Explorer
• معرفی Handle و کاربرد آن
• نمایش رویدادهای پروسه و APIهای اجرا شده با Process Monitor
• معرفی WinDbg، انواع دستورات آن و کاربرد Symbols
• مرور Calling Conventions در مدل ۶۴بیتی و بررسی آن در WinDbg
• فعال کردن Debuggingدر ویندوز
• اتصال WinDbg به کرنل ویندوز از طریق شبکه
• معرفی EPROCESS
• چرخهی طی شده برای WinAPIs از User Mode تا Kernel
• جزئیات اجرای دستور syscall و رجیستر MSR_LSTAR
• مروری بر پیادهسازی CreateFile در ReactOS
• شرح ساختار System Service Table (KiServiceTable)
• بررسی CreateFile از User Mode تا کرنل و رسیدن به syscall از روی KiServiceTable
• اجرای مستقیم CreateFile با فراخوانی سیستمی بدون ntdll
لینک ارائه در یوتیوب و آپارات:
https://youtu.be/_dJPXsfnx3U
https://aparat.com/v/C7xIE
لینک کانال من در تلگرام:
https://t.me/OxAA55
#windows #internals #kernel #windbg #syscall #programming #debugging
YouTube
02) Syscalls Journey in Windows فراخوانی سیستمی در ویندوز
This is the second session of my "Internals Sessions" lecture series and the first one focusing on the internals of Windows. In this lecture, I start by discussing the tools that can be used for investigating Windows internals, and I give a demonstration…
👏17👍7❤2