در این تمرین، با مفاهیم پایهای و در عین حال حیاتیِ مرتبط با سیستمکالهای ویندوز در معماری x64 آشنا میشوید. این دانش، مقدمهای است برای درک عمیقتر روشهای عبور از مکانیزمهای محافظتی مانند EDR و آنتیویروسها.
پسوالات مطرح شده در این چالش به منظور درک عمیقتر مفاهیم پایهای سیستمکالها (syscalls) و نقش رجیسترها در معماری x64 ویندوز طراحی شدهاند. چرا که:
در امنیت و بهویژه در زمینه بایپس کردن مکانیزمهای محافظتی مثل EDR و آنتیویروسها، درک اینکه چگونه سیستمکالها به طور مستقیم و بدون عبور از توابع hook شده اجرا میشوند، بسیار حیاتی است.
این سوالات به دانشجو کمک میکنند تا آشنایی با قرارداد فراخوانی رجیسترها (calling convention) را به دست آورده و بفهمند چرا انتقال مقدار RCX به R10 قبل از اجرای syscall ضروری است.
فهم این نکته پایهای، دانشجو را قادر میسازد تا تکنیکهایی مثل Parallel Syscall Bypass را بهتر درک و تحلیل کند و در نهایت بتواند ابزارها یا کدهای مرتبط با اجرای syscall مستقیم را بنویسد یا تحلیل نماید.
همچنین، دانستن اینکه شماره syscallها (مثل 0x26) چطور کار میکنند، به دانشجو در شناسایی و مقابله با حملات مبتنی بر syscall کمک میکند.
در بسیاری از حملات پیشرفته، مهاجمین برای دور زدن سیستمهای دفاعی، مستقیماً از syscall استفاده میکنند و مسیرهای hook شده توسط آنتیویروس را نادیده میگیرند. برای تحلیل، نوشتن یا حتی جلوگیری از این نوع تکنیکها، تسلط بر رفتار دقیق syscall در ویندوز ضروری است.