یک Keylogger یا ثبتکننده ضربات صفحه کلید، نوعی بدافزار یا سختافزار است که به طور مخفیانه تمامی ضربات صفحه کلید شما را در حین تایپ کردن ثبت و ذخیره میکند. این ابزار میتواند به صورت نرمافزاری در سیستم شما نصب شود یا حتی به صورت فیزیکی بر روی صفحه کلید شما قرار گیرد. پس از ثبت ضربات صفحه کلید، اطلاعات جمعآوری شده به طور خودکار به یک هکر ارسال میشود. این ارسال معمولاً از طریق یک سرور فرمان و کنترل (C&C) صورت میگیرد که به هکر اجازه میدهد به صورت از راه دور به دادهها دسترسی پیدا کند. پس از دریافت اطلاعات، هکر این دادهها را تجزیه و تحلیل میکند تا موارد حساس مانند نامهای کاربری، رمزهای عبور، شمارههای کارت اعتباری و سایر اطلاعات محرمانه را شناسایی کند. سپس از این اطلاعات برای نفوذ به حسابها، سیستمها و شبکههای امن استفاده میکند. این نوع حملات میتواند به سرقت اطلاعات شخصی، مالی و تجاری منجر شود و امنیت کاربران و سازمانها را بهخطر بیندازد. در برخی از موارد، Keyloggerها حتی میتوانند به صورت مخفیانه در پسزمینه سیستم کار کنند، به طوری که کاربر از وجود آنها اطلاعی نداشته باشد.
یک Keylogger با نظارت و ثبت هر ضربه صفحه کلید بر روی کامپیوتر یا شبکه کار میکند. در اینجا توضیح سادهای از نحوه عملکرد این فرآیند آمده است:
ابتدا، Keylogger باید بر روی دستگاه هدف نصب شود. این نصب میتواند به صورت فیزیکی برای Keyloggerهای سختافزاری (مثل دستگاههایی که به صفحه کلید یا کامپیوتر متصل میشوند) یا از راه دور برای Keyloggerهای نرمافزاری، که معمولاً به عنوان بخشی از بستههای بدافزار یا از طریق لینکهای فریبنده دانلود میشوند، انجام گیرد.
پس از نصب، Keylogger شروع به نظارت و ضبط تمامی ضربات صفحه کلید انجام شده بر روی دستگاه میکند. برخی از Keyloggerهای پیشرفته میتوانند همچنین از صفحه نمایش اسکرینشات بگیرند، فعالیتهای مرور وب را پیگیری کنند، متنهای کپی شده در کلیپبورد را ضبط کنند و حتی پیامهای چت و ایمیل را نیز جمعآوری کنند.
Keylogger دادههای جمعآوری شده را در فایلی ذخیره میکند که معمولاً به صورت رمزگذاری شده برای دسترسی و بازیابی در آینده نگهداری میشود. Keyloggerهای نرمافزاری ممکن است این دادهها را از طریق اینترنت به یک سرور از راه دور ارسال کنند که توسط مهاجم کنترل میشود. این انتقال میتواند به صورت خودکار و در فواصل زمانی منظم یا پس از جمعآوری حجم مشخصی از اطلاعات انجام شود.
در نهایت، فردی که Keylogger را نصب کرده است، به دادهها دسترسی پیدا میکند، یا با بازیابی فیزیکی دستگاه (در صورت استفاده از Keylogger سختافزاری)، یا با دسترسی به فایل ذخیره شده بر روی کامپیوتر و یا با جمعآوری آن از سرور از راه دور. اثربخشی یک Keylogger به طور عمده بستگی به توانایی آن در پنهان ماندن از چشم کاربر و نرمافزارهای امنیتی نصب شده بر روی دستگاه دارد. به همین دلیل، Keyloggerها معمولاً طوری طراحی میشوند که شناسایی آنها دشوار باشد، که این ویژگی آنها را به ابزاری قدرتمند در دستان مجرمان سایبری تبدیل میکند.
استفاده از کیلاگرها برای اهداف نظارتی به دوران ابتدایی پیدایش کامپیوترها برمیگردد. در دهههای ۱۹۷۰ و ۱۹۸۰، کیلاگرها به طور مخفیانه برای مقاصد مختلف، از جمله جاسوسیهای دولتی، به کار میرفتند. در این دوران، به ویژه در عملیاتهای جاسوسی بینالمللی، این ابزارها به دلیل قابلیت ثبت فعالیتهای کاربران از جمله تایپهای اطلاعات محرمانه، اهمیت ویژهای پیدا کردند. یکی از اولین و مشهورترین نمونهها در این دوران، در اواسط دهه ۱۹۷۰ اتفاق افتاد، زمانی که جاسوسان شوروی برای جاسوسی از تایپنویسهای IBM در سفارتخانهها و کنسولگریهای ایالات متحده در مسکو یک کیلاگر سختافزاری بسیار هوشمند طراحی کردند. این کیلاگرها به گونهای طراحی شده بودند که تغییرات تقریباً غیرقابل تشخیصی در میدان مغناطیسی تایپنویسها ایجاد میکردند. هنگامی که هد چاپ تایپنویس برای تایپ هر حرف حرکت میکرد، این تغییرات مغناطیسی توسط کیلاگرها ثبت میشد و به این ترتیب، اطلاعات تایپ شده به صورت مخفیانه کپی میشد. با گذشت زمان و پیشرفتهای تکنولوژی، استفاده از کیلاگرها گسترش پیدا کرد. از اواسط تا اواخر دهه ۱۹۹۰، با ظهور اینترنت و رشد تجاری سازی ابزارهای نرمافزاری، تولید و استفاده از کیلاگرهای تجاری به شدت افزایش یافت. در این دوران، انواع مختلفی از کیلاگرها به بازار عرضه شدند که هر یک برای اهداف خاصی طراحی شده بودند و به سرعت در میان کاربران خانگی و سازمانها محبوب شدند. این کیلاگرها توانایی ثبت هرگونه فعالیت تایپ شده را داشتند و برخی از آنها حتی میتوانستند دادههای تایپ شده را به صورت مخفیانه به هکرها یا مهاجمان ارسال کنند. تا امروز، تعداد کیلاگرهای تجاری در بازار به هزاران محصول مختلف افزایش یافته است که هر کدام مخاطبان خاص خود را دارند. این محصولات نه تنها در زبانها و کشورهای مختلف به بازار آمدهاند بلکه برای مقاصد گوناگون از جمله نظارت بر فعالیتهای کاربران، کسب اطلاعات تجاری و حملات سایبری طراحی شدهاند. اگرچه در ابتدا کیلاگرها بیشتر برای اهداف کلاهبرداری از کاربران خانگی مورد استفاده قرار میگرفتند، اما امروزه این ابزارها به تهدیدی جدی برای امنیت سازمانها و دولتها تبدیل شدهاند. در این دوران، کیلاگرها به عنوان ابزاری در حملات مختلف مورد استفاده قرار میگیرند؛ جایی که مهاجمان با فریب یک کارمند سطح پایین یا مقام اجرایی، به شبکههای سازمانی نفوذ کرده و به اطلاعات حساس دست پیدا میکنند. این روش به ویژه در سازمانهای بزرگ و پیچیده، که ممکن است از ضعفهای امنیتی در لایههای پایینتر رنج ببرند، به تهدیدی جدی تبدیل شده است.
دو نوع Keylogger وجود دارد: Keyloggerهای سختافزاری و Keyloggerهای نرمافزاری. این دو نوع Keylogger از نظر نحوه ثبت ضربات صفحه کلید با یکدیگر تفاوت دارند. هر دو نوع میتوانند برای مقاصد مخرب، از جمله سرقت اطلاعات شناسایی (مانند نامهای کاربری و رمزهای عبور) و سرقت هویت استفاده شوند. Keyloggerهای سختافزاری دستگاههای فیزیکی هستند که تمامی ضربات صفحه کلید را ثبت میکنند. مجرمان سایبری میتوانند این دستگاهها را در داخل کابلهای کامپیوتر یا در آداپتور USB پنهان کنند، به طوری که شناسایی آنها برای قربانی سخت باشد. با این حال، به دلیل اینکه برای نصب Keylogger سختافزاری به دسترسی فیزیکی به دستگاه نیاز است، این نوع از Keyloggerها کمتر در حملات سایبری استفاده میشود. Keyloggerهای نرمافزاری نیاز به دسترسی فیزیکی به دستگاه ندارند. در عوض، کاربران Keyloggerهای نرمافزاری را روی دستگاه خود دانلود میکنند. ممکن است کاربر به طور عمدی یا ناخواسته یکKeylogger نرمافزاری را همراه با بدافزار دانلود کند.
انواع مختلفی از Keyloggerهای نرمافزاری وجود دارند، از جمله انواع زیر:
کیلاگرها ابزارهایی هستند که معمولاً توسط مجرمان سایبری به عنوان ابزار جاسوسی برای سرقت اطلاعات شخصی، مشخصات ورود به سیستم و دادههای حساس سازمانها استفاده میشوند. با این حال، استفاده از کیلاگرها در برخی موارد میتواند به طور اخلاقی یا قانونی پذیرفته شود، البته در شرایط خاص و با رعایت محدودیتهای قانونی. به عنوان مثال، برخی سازمانها ممکن است از کیلاگرها برای نظارت بر فعالیتهای کامپیوتری کارکنان خود استفاده کنند تا از استفاده نادرست از منابع شرکت یا نقض سیاستهای امنیتی جلوگیری کنند. همچنین، والدین میتوانند از کیلاگرها برای نظارت بر فعالیتهای آنلاین کودکان خود استفاده کنند و آنها را از خطرات احتمالی اینترنت محافظت کنند. در برخی موارد، مالکان دستگاهها ممکن است از این ابزارها برای پیگیری فعالیتهای غیرمجاز یا مشکوک در دستگاههای خود استفاده کنند، به ویژه اگر نگرانیهایی در مورد دسترسی غیرمجاز به اطلاعات حساس وجود داشته باشد. علاوه بر این، در برخی شرایط قانونی، نهادهای مجری قانون میتوانند از کیلاگرها برای تحلیل و بررسی حوادث یا پروندههای مربوط به استفاده از کامپیوتر و دستگاههای دیجیتال استفاده کنند تا شواهد بیشتری برای تحقیق و پیگیری جرم جمعآوری کنند. در این موارد، استفاده از کیلاگرها باید تحت نظارت و با رعایت قوانین حفظ حریم خصوصی و حقوق افراد صورت گیرد.
علاوه بر تهدید امنیت دستگاه شما، کیلاگرها میتوانند مشکلات جانبی دیگری را نیز در خود دستگاه ایجاد کنند. اثرات این مشکلات بسته به نوع دستگاه آلوده شده متفاوت است.
فرآیندهای ناشناختهای که منابع پردازشی را مصرف میکنند: همان طور که هر نرمافزار برای اجرا به یک فرآیند نیاز دارد، کیلاگرها نیز برای عمل کردن به یک فرآیند خاص احتیاج دارند. هر فرآیند در کامپیوتر شما برای اجرا به بخشی از قدرت پردازشی سیستم نیاز دارد. زمانی که فرآیند کیلاگر شروع به کار میکند، میتواند منابع پردازشی سیستم را به طور چشمگیری مصرف کند. این مصرف منابع میتواند باعث کاهش عملکرد برنامههای دیگر یا ایجاد اختلال در اجرای صحیح آنها شود.
از آنجایی که کیلاگر خود را بین صفحه کلید و صفحه نمایش قرار میدهد، یکی از نشانههای آن ممکن است تاخیر در هنگام تایپ باشد. اگر معمولاً حروف، اعداد یا نمادها بلافاصله پس از فشردن هر کلید روی صفحه نمایش ظاهر میشوند، اما حالا کمی تاخیر مشاهده میکنید، این میتواند نشان دهنده این باشد که یک کیلاگر در فرآیند تایپ اختلال ایجاد کرده است. در برخی موارد، تاخیر در تایپ ممکن است به دلیل مشکلاتی مانند کمبود حافظه RAM باشد، اما اگر این علامت را مشاهده کردید، بهتر است که دستگاه خود را بررسی کنید.
در حالی که کیلاگر در حال انجام وظایف خود است، ممکن است در پردازش عادی برنامهها اختلال ایجاد کند. این اختلال میتواند باعث شود که برنامهها بدون هشدار freeze شوند. اگر برنامهها بیشتر از معمول کند میشوند، ممکن است کیلاگر عامل این مشکل باشد.
اگرچه ممکن است کیلاگرهای سختافزاری برای حمله به دستگاههای موبایل وجود نداشته باشد، اما دستگاههای اندروید و آیفون همچنان میتوانند توسط کیلاگرهای نرمافزاری آلوده شوند. این کیلاگرها با ضبط جایی که کاربر روی صفحه ضربه میزند، میتوانند مشاهده کنند که کدام دکمههای مجازی هنگام تایپ فشرده میشوند. سپس این دادهها ضبط شده و به هکر ارسال میشوند. این تهدید ممکن است حتی بدتر باشد، زیرا این نوع کیلاگرها تنها به ضبط فشردن کلیدها محدود نمیشوند. آنها میتوانند اسکرینشاتها، تصاویر ضبط شده توسط دوربین، فعالیت چاپگرهای متصل، صداهایی که وارد میکروفن میشود و ترافیک شبکه را نیز ضبط کنند. حتی یک کیلاگر قادر است از ورود شما به برخی وبسایتها جلوگیری کند. برای نصب یک کیلاگر بر روی دستگاه موبایل، یک هکر تنها نیاز دارد که به مدت کوتاهی به دستگاه دسترسی پیدا کند. همچنین ممکن است شما به طور غیرعمد کیلاگری را با کلیک بر روی یک لینک یا پیوست نصب کنید.
مفهوم اصلی پشت کیلاگرها این است که باید در بین زمانی که یک کلید روی صفحه کلید فشار داده میشود و زمانی که اطلاعات مربوط به فشردن آن کلید روی صفحه نمایش ظاهر میشود، قرار بگیرند. چندین روش برای دستیابی به این هدف وجود دارد. برخی از هکرها از نظارت تصویری استفاده میکنند تا ارتباط بین کلیدهای فشرده شده و آنچه که روی صفحهنمایش ظاهر میشود را ببینند. میتوان یک دوربین ویدئویی که صفحه کلید و صفحهنمایش را مشاهده میکند نصب کرد. پس از آن که دوربین ویدئویی از فشردن کلیدها و صفحههای ورود یا احراز هویتی که باید عبور کنند، فیلم برداری کرد، هکر میتواند فیلم را پخش کند، سرعت آن را کاهش دهد و ببیند که کدام کلیدها فشرده شدهاند. یک مهاجم همچنین میتواند یک ایراد سختافزاری داخل خود صفحه کلید قرار دهد. این ایراد هر فشردن کلیدی را ضبط کرده و اطلاعات آن را برای ذخیرهسازی به سرور یا دستگاه فیزیکی نزدیک ارسال میکند. علاوه بر این، نرمافزار کیلاگر میتواند به گونهای طراحی شود که تمامی ورودیهایی که از صفحه کلید میآید را رهگیری کند. این کار میتواند از چندین روش مختلف انجام شود:
این نوع نرمافزارها که به عنوان یک نوع جاسوسافزار شناخته میشود، با استفاده از چندین روش مختلف ساخته میشود. رایجترین روشها به شرح زیر هستند:
برای شناسایی keyloggerهای نرمافزاری، یکی از روشها استفاده از Task Manager در ویندوز یا Activity Monitor در مک است. این دو ابزار به شما این امکان را میدهند که تمام فرایندهای در حال اجرا روی کامپیوتر خود را مشاهده کنید. در این مرحله، لازم است کمی تحقیق کنید تا مطمئن شوید که کدام فرایندها مشکوک به نظر میرسند، زیرا باید از انجام تغییرات بیملاحظه اجتناب کنید. پس از بررسی، اگر فرآیندی را پیدا کردید که به نظر خطرناک میآید یا توسط دیگران به عنوان بدافزار شناخته شده است، بهتر است آن را خاتمه دهید. برای شناسایی Keyloggerها، راهکارهای زیر توصیه میشود:
بهترین روش برای محافظت از دستگاههای خود در برابر Keylogging استفاده از نرمافزار آنتیویروس یا فایروال با کیفیت بالا است. علاوه بر این، شما میتوانید اقداماتی دیگر برای کاهش احتمال آلوده شدن دستگاههای خود انجام دهید. برای مثال، استفاده از یک مدیر رمزعبور برای ایجاد رمزهای عبور پیچیده و همچنین مدیریت و مشاهده رمزهای عبور خود بسیار مفید است. بسیاری از این برنامهها قابلیت پر کردن خودکار رمزهای عبور را دارند که به شما این امکان را میدهند تا از استفاده از صفحه کلید اجتناب کنید. اگر شما در حال تایپ کردن نباشید، Keylogger نمیتواند هیچ ضربهای از صفحه کلید را ثبت کند و از آنجایی که معمولاً حروف رمز عبور با ستارهها جایگزین میشوند، حتی سیستمهای نظارت تصویری نیز قادر به شناسایی آنچه وارد شده نیستند. علاوه بر این، استفاده از احراز هویت چندعاملی (MFA) وقتی که این گزینه در دسترس است، به محافظت بیشتر کمک میکند. حتی اگر Keylogger رمز عبور شما را پیدا کند، مرحله دوم فرآیند احراز هویت ممکن است از نفوذ آنها جلوگیری کند. استفاده از یک صفحه کلید مجازی نیز میتواند به جلوگیری از دسترسی Keyloggerها به ضربات صفحه کلید کمک کند. حتی یک Keylogger مبتنی برhypervisor، که از سیستمعاملی جداگانه زیر سیستمعامل اصلی شما استفاده میکند، نمیتواند ضربات صفحه کلید را روی یک صفحه کلید مجازی ثبت کند. همچنین، توصیه میشود به طور دورهای اتصالات سختافزاری دستگاه خود را بررسی کنید.
مراحل حذف یک keylogger بستگی به نوع بدافزار نصب شده دارد. Keyloggerهای پیچیده و حرفهای ممکن است حتی پس از آنکه فکر میکنید حذف شدهاند، همچنان روی سیستم باقی بمانند. بهترین روش برای حذف یک keylogger این است که یک اسکن کامل از سیستم خود انجام دهید و به نرمافزار ضد بدافزار اجازه دهید آن را حذف کند. بیشتر نرمافزارهای ضد بدافزار برنامههای مشکوک را قرنطینه میکنند. در حالت قرنطینه، فایلهای اجرایی به یک دایرکتوری در دستگاه منتقل میشوند تا کاربران بتوانند آنها را قبل از حذف دائمی بررسی کنند. اگر فکر میکنید که یک keylogger بر روی دستگاه شما نصب شده است، اولین قدم این است که از اینترنت قطع اتصال کنید تا هکر یا مهاجم از راه دور نتواند به دستگاه شما وصل شود. این کار همچنین ارتباط بدافزار با سرور کنترل شده توسط مهاجم را متوقف میکند و مانع از آپلود دادههای سرقتی به یک فضای ابری یا مکان سوم میشود. برای از بین بردن کیلاگر، باید یک نرم افزار ضد بدافزار بر روی دستگاه آلوده شده نصب کنید. پس از نصب نرمافزار، یک اسکن کامل از سیستم انجام دهید. این نرمافزارها میتوانند تنظیم شوند تا فایلها را به طور خودکار حذف یا به قرنطینه منتقل کند. علاوه بر این، برنامه ضد بدافزار باید باینریهای بدافزار را از حافظه سیستم پاک کند تا کیلاگر نتواند به ثبت ضربات صفحه کلید ادامه دهد.