قوانین APT ها برای توسعه بدافزار چیه؟
یکی از دوستان داخل لینکدین پستی در خصوص سیمبول فایل ها گذاشته بود که به هنگام کامپایل یک قطعه کد توسط visual studio این symbol فایل ایجاد میشه و پیشنهاد کرده بودند که برای اینکه کار تحلیل گران بدافزار و ... رو سخت تر کنیم بهتره که این مورد رو پاک کنیم.
یادم اومد چند سال پیش که تماما تمرکزم روی بدافزار و سندباکس بود، چندتا الزام یا پیشنیاز برای توسعه بدافزار وجود داشت که هر توسعه دهنده ای باید رعایت میکرد ، از این جهت چندتاشون رو اینجا تیتر وار میگم که شما هم گوشه ذهنتون داشته باشید
موارد بسیاره، و من تنها به دو سه مورد ابتدایی ولی مهمش اشاره میکنم.
شما باید فارنزیک سیستم عاملی که روش کد می زنید رو کامل بدونید (ویندوز، لینوکس و ..) و براساس اون بدافزار تون رو توسعه بدید ... به طور کلی ویندوز کلی Artifact از شما در فایل های کامپایل شدتون به جا می زاره که در فاز ردیابی مهاجم استفاده خواهد شد.
مثلا هر زبانی روی سیستم تون نصب باشه، تو متادیتا های کامپایل کد بدافزار تون ی اثری ازش می افته. یک راه حلش این بود که روی سیستم clean تون زبان چینی یا ... نصب کنید.
کدهایی که توسعه می دید رو با کامنت های چینی یا هر زبانی غیر از فارسی بذارید.
اطلاعات مربوط به تایم زون سیستم تون روی تهران نباشه.
حساب کاربری تون یا اسامی که استفاده می کنید فارسی نباشه. مثلا mao Zedong (رهبر پیشین چین) گزینه خوبیه :)
و صد البته که روی ماشین اصلی تون که متصل به اینترنت هم هست کد توسعه نمی دید.
و از اون مهم تر تحت هیچ شرایطی ماشین رو به اینترنت وصل نمی کنید و محیط توسعه تون هم بایستی داخل یک vm باشه.
در مورد Best practice برای ماشین های توسعه دهنده بدافزار هم اینکه هیچ وقت به اینترنت وصل نشن و تمام اپدیت ها آفلاین صورت بگیره.
و از نوت پد یا vi برای توسعه استفاده کنید ، کلا از IDE ها دوری کنید!
به هر حال توسعه بدافزار در دنیای واقعی الزامات بسیاری رو داره که بایستی حتما رعایت کنید.
و خیلی هاش رو هم نمیشه گفت! مثل سرورهای فرماندهی و کنترل تون باید کجا باشن که اگر لیک شدن به شما نرسن، یا مدارک احراز هویتی تون برای آماده سازی محیط باید از کجا و به چه شکل تهیه بشه و....
✍ منبع : os security
@TryHackBoxStory
Post #58
2.26K
- 👍 6
- 🔥 1