درود بر شما ... بدافزار نویسی یک حوزه پیچیده و بزرگ در عرصه امنیت سایبری هست که مرتبط با توسعه نرمافزارهای مخرب برای سیستم عامل هست. در این مقاله از مجله امنیت سایبری کریپتون این رشته جذاب رو باهم بررسی میکنیم، پس با کریپتون همراه باشید ؛
بدافزار (Malware) مخفف Malicious Software هست و به نرمافزاهای مخربی گفته میشه که با هدف دسترسی و هک سیستمها تا تخریب و خرابکاری در شبکه های کامپیوتری طراحی میشوند. این نرمافزارها معمولا بدون اطلاع کاربران روی سیستم آنها نصب و اجرا شده و میتونن با توجه به نوع سیستم عامل و ضعف های امنیتی اون منجر به دسترسی هکر به سیستم تارگت بشن.
بدافزارها انواع مختلفی دارن که از خطرناک ترین اونها میشه به ویروسهای رمزگذاری کننده (Ransomware)، تروجانها (Trojans)، کرمها (Worms) و بکدورها (Backdoors) اشاره کرد. این بدافزارها میتونن برای سرقت اطلاعات، جاسوسی از کاربران یا تخریب اطلاعات استفاده بشن و در کل طیف تهدیدات گستردهای رو شامل میشن. در ادامه انواع بدافزارها رو باهم بررسی میکنیم ؛
تروجانها به نرمافزارهایی گفته میشود که به نظر مفید میایند، اما در دل این برنامه به ظاهر مفید ، یک ویروس خطرناک جاساز شده که وظیفه خطرناکی رو انجام میده. این ویروسها برای سرقت اطلاعات کاربران یا دسترسی گرفتن به سیستم آنها مود استفاده قرار میگیرند.
کرمها به ویروسهایی گفته میشه که از طریق شبکههای کامپیوتری خودشون رو گسترش میدن و بدون نیاز به اقدام کاربر به سیستمهای دیگر منتقل میشن. این ویروسها معمولا به سرعت انتشار پیدا میکنن و باعث آلوده شدن سیستمهای زیادی میشن.
این نوع از بدافزارها فایلهای سیستم تارگت رو رمزگذاری میکنن و در ازای باز کردن رمز فایلها یا بازگرداندن دسترسی کاربر به سیستم درخواست پول میکنن. زمانی که پول از طرف قربانی پرداخت شد، ممکن است کلید یا راه حل بازکردن رمز فایل ها یا بازگرداندن دسترسی ارائه شود.
بکدورها یا درهای پشتی، همانطور که از اسمشون پیداست ، نقاط ورود غیرمعمول به سیستمها هستند که توسط هکرها برای ورود به سیستم بدون اطلاع کاربران نصب و جاگذاری میشن. این نوع از بدافرارها به مهاجمین اجازه میدن تا بدون محدودیت و با دسترسی از راه دور به سیستم قربانی وارد شوند.
هرکدام از این انواع بدافزارها برای اهداف خاصی طراحی و مورد استفاده قرار میگیرند و خطرات و تهدیدات خاص خودشون رو دارند ولی هکرها عمدتا برای حملات و نفوذهای کامپیوتری این بدافزارها رو توسعه میدن.
قطعا اولین مرحله برای ورود به این حوزه ، مسلط شدن به ساختار سیستمهای تارگت شما هست. اگر برای سیستم عامل خاصی بدافزارنویسی میکنید باید دانش پایه از ساختار سیستم عامل ، نحوه عملکرد و اجرای نرمافزارها ، مجوزها و سطح دسترسیها و چیزهایی از این قبیل را داشته باشید.
برای مثال اگر برای سیستم عامل ویندوز بدافزار مینویسید ، باید با معماری ویندوز ، نحوه ساخت پروسهها و سرویسها ، شیوه دسترسی به کرنل و ... به طور خاص در ویندوز دانش و مهارت کسب کنید تا بتوانیدبه صورت خلاقانه ایدههای جدید رو به کد تبدیل کنید.
به عنوان یک متخصص توسعه بدافزار ، باید با آسیب پذیریها و ضعفهای موجود در سیستمها و شبکههای کامپیوتری به خوبی آشنا باشید تا بتوانید برای بهرهبرداری از این ضعفها بدافزار توسعه بدید و به بهترین شیوه از آنها برای گرفتن دسترسی یا کارهای دیگر استفاده کنید.
اصلی ترین و مهم ترین بخش توسعه بدافزار ، انتخاب زبان و یادگیری برنامه نویسی هست. برای توسعه بدافزار به یک زبان برنامه نویسی نیاز داریم اما چه زبانی؟ بهترین زبان برای این کار بستگی به سطح و تجربه شما در این حوزه داره ، اما برای شروع میتوانید با زبان C که یکی از قدیمی ترین زبان های برنامه نویسی هست و قدرت بالایی دارد یادگیری رو شروع کنید و در ادامه سمت زبان هایی مثل اسمبلی ( Assembbly ) برید و با اونها کار کنید.
زبان C یکی از سریع ترین و قدرتمندترین زبان های برنامه نویسی دنیا هست و به دلیل یک سری از ویژگیهای منحصر به فرد ، یکی از بهترین زبان های برنامه نویسی برای بدافزارنویسی نیز هست.
زبان C به عنوان یک زبان سطح پایین، به ما امکان دسترسی مستقیم به منابع سیستمی مثل حافظه و سختافزار رو میده. این قابلیت به ما امکان طراحی و توسعه بدافزارهای پیچیده و حرفهای تر رو میده که در خیلی از زبان های برنامهنویسی امکان پذیر نیست. برای مثال میتونید به یک قسمت از حافظه دسترسی بگیرید و مقدار اون رو به صورت مستقیم تغییر بدید.
زبان C به دلیل بهینه بودن و نزدیک بودن به زبان ماشین ، از تمام منابع سیستم به بهترین شکل ممکن استفاده میکنه و به بدافزارهای ما این امکان رو میده تا در سریعترین زما ن ممکن اجرا بشن ، که این ویژگی در این زمینه بسیار مهم هست.
دسترسی به سطح پایین سیستم و کنترل دقیق بر منابع ، میتواند مسیرهای پیچیده تر برای انجام حملات نفوذی و فرار کردن از دست فایروالها و آنتی ویروسها رو برای ما فراهم کنه.
با توجه به این که بسیاری از سیستم عاملها و نرمافزارهای کلیدی با این زبان نوشته شدند و با توجه به استفاده گسترده از این زبان در بحث بدافزارنویسی و امنیت سایبری ، یادگیری این زبان و دانش بدست اومده از اون میتونه در تحلیل و فهم بدافزارهای دیگر و ... کاربردی باشه؛ از این جهت یادگیری این زبان به همه هکرها توصیه میشه.
در نهایت این حوزه ، یکی از پیچیدهترین حوزه های امنیت سایبری هست و متخصص شدن در اون نیازمند چند سال تحقیق و یادگیری هست. بهتون توصیه میکنم اگر علاقه دارید به این حوزه ، یک لحظه هم شک نکنید و استارت یادگیری رو بزنید ؛ چون آینده خوبی در انتظار شما خواهد بود.
با تشکر از وقتی که برای مطالعه این پست گذاشتید ؛
مجله کریپتون ♥