«اکسپلویت» برنامه یا قطعه کدی است که برای شناسایی و سوءاستفاده از یک آسیبپذیری یا نقص امنیتی در یک برنامهی کاربردی یا سیستم رایانهای طراحی شده و معمولاً اهداف مخربی مانند نصب بدافزار را دنبال میکند. اکسپلویت خودش بدافزار نیست، بلکه روشی است که مجرمان مجازی برای انتقال بدافزار به کار میگیرند.
برای کارآیی اکسپلویتها، باید آسیبپذیریهایی وجود داشته باشند که مهاجم بتواند با سوءاستفاده از آنها عملیات مشکوکی را برای راهاندازی یک اکسپلویت آغاز کند. معمولاً بیشتر آسیبپذیریها ناشی از اشکال «Bug» نرمافزاری یا اشکال در معماری سیستم هستند. مهاجمان برای سوءاستفاده ار این آسیبپذیریها برنامه مینویسند و انواع مختلف بدافزار را وارد سیستم کنند.
بسیاری از فروشندگان نرمافزار، اشکالات شناختهشده را با یک قطعه کد اضافه «Patch» برطرف میکنند تا مانع از بروز این آسیبپذیریها شوند. نرمافزارهای امنیتی هم میتوانند با شناسایی، گزارش و مسدود کردن عملیات مشکوک، مفید باشند و صرف نظر از بدافزاری که اکسپلویت قصد راهاندازی آن را دارد، مانع از وقوع اکسپلویت و آسیب به سیستمهای رایانهای شوند.
نرمافزارهای دفاع از تهدید «Threat Defense» و نرمافزارهای نقطهی پایانی، شناسایی و پاسخ «EDREndpoint, Detection, and Response (EDR)» از جمله نرمافزارهای امنیتی متداولی هستند که کسبوکارها برای ممانعت از اکسپلویتها به کار میگیرند. از دیگر روشهای کارآمد میتوان به راهاندازی یک برنامهی آزمون نفوذ «Penetration Testing Program» اشاره کرد که برای سنجش کارآمدی دفاع به کار گرفته میشود.
پس از آنکه برنامهنویسان نرمافزارهایِ آسیبدیده، یک اکسپلویت را شناسایی کردند، آسیبپذیریها را بهکمک یک قطعه کد اضافه برطرف میکنند تا آن اکسپلویت غیرقابل استفاده شود. این اطلاعات در اختیار فروشندگان نرمافزارهای امنیتی نیز قرار داده میشوند. برخی سازمانها آسیبپذیریهای شناختهشدهی امنیت مجازی را فهرست میکنند و کد شناسایی هر کدام را همراه با توضیحات و حداقل یک مرجع عمومی ارائه میدهند.
آن دسته از اکسپلویتها هستند که جز برای توسعهدهندگانشان، برای کس دیگری شناخته نیستند و به عنوان اکسپلویتهای روز صفر«Zero-Day Exploits» شناخته میشوند. میتوان گفت خطرناکترین اکسپلویتها هستند زیرا زمانی اتفاق میافتند که معماری نرمافزار یا سیستم مورد نظر، یک آسیبپذیری امنیتی جدی دارد که فروشنده از آن بیاطلاع است.
این آسیبپذیریها زمانی تشخیص داده میشوند که یک هکر در حین سوءاستفاده از آنها شناسایی شود. به همین دلیل است که به این اکسپلویتها، اکسپلویتهای روز صفر میگویند. زمانیکه نرمافزارهای این اکسپلویتها روی یک سیستم اجرا میشوند، آن سیستم در برابر حملهی مجازی آسیبپذیر میشود. در نهایت، فروشنده قطعه برنامهای برای برطرف کردن آن آسیبپذیری منتشر میکند یا نرمافزار امنیتی اکسپلویت و بدافزار مربوط به آن را شناسایی و مسدود میکند.