امروزه، رمزنگاری (Cryptography) در هر مکانی استفاده میشود. سایتهای ایمن، سایتهای مرتبط با تراکنشهای مالی، ارتباطات شخصی، تجهیزات و سرویسهایی که نهادهای دولتی استفاده میکنند، همگی بسته به نیاز خود از الگوریتمهای رمزنگاری استفاده میکنند. سازندگان سیستمهای رمزنگاری همواره سعی میکنند الگوریتمها و پروتکلها را به لحاظ تئوری، به سختترین شکل ممکن طراحی کرده و از مکانیزمهای ایمنی بهمنظور دسترسی نرمافزارهای کاربردی به این الگوریتمها استفاده کنند؛ به طوری که این نرمافزارها در رویارویی با حملات مستقیم بهراحتی قابل نفوذ نباشند و شکستن آنها مشکل باشد. اما برای هکرها تنها راه دسترسی به دادههای شخصی عبور از دروازه رمزنگاری نیست. آنها به جای حمله مستقیم میتوانند از مفروضات موجود برنامهها برای تضعیف رمزنگاری استفاده کنند.
فرضیهای وجود دارد که طبق آن، نرمافزارهای خاص خروجی خود را کنترل میکنند. سیستمعاملها این قابلیت را در اختیار کاربران قرار میدهند تا به صورت پنهانی حافظه برنامه، فایلها یا هر آن چیزی را که به برنامهای مرتبط است و برای حمله به آن نیاز دارند، تحت نظارت خود قرار دهند. در کنار این موضوع که خود بحث پیچیدهای است، جنبه سختافزاری نیز وجود دارد. برنامهای که اجرا میشود، روی بستر سختافزاری اجرا شده است و به شکلهای مختلفی با سختافزار به تعامل میپردازد. جریان الکتریکی، میدان الکتریکی، صدا، لرزش و انتشار نور، از جمله این عوامل هستند. همه این کانالها اسرار خاص خود را دارند. (شکل 1) حملاتی که به سمت این کانالها میشود، برای بهرهبرداری از نشتی اطلاعات استفاده میشود تا در نهایت مکانیزم رمزنگاری را تهدید کند.
شکل 1: مچبند به تجهیزات دریافت سیگنال که از بخش رسانایی لپتاپ متصاعد میشوند، مجهز است.
آیا پردازنده مرکزی کامپیوتر میتواند عاملی در جهت شکست رمزنگاری باشد؟
کامپیوترهای شخصی از محیط پیچیدهای ساخته شدهاند. پردازنده مرکزی کامپیوتر با میلیونها ترانزیستور، یک مادربرد متشکل از مدارات مجتمع و لوازم جانبی دیگر، وظیفه اجرای یک سیستمعامل را به همراه رویدادهای مختلف غیرهمزمان بر عهده دارند. این پیچیدگیها پیشبینینشدنی هستند. اگر به دنیای امنیت و رمزنگاری علاقهمند باشید، از این موضوع اطلاع دارید که در زمان فرایند رمزنگاری، نوسانات جزئی الکتریکی وجود دارد. حتی در بعضی موارد صدایی از سیستم شنیده میشود که در اصطلاح رایج به آن نویز گفته میشود؛ نویزی که در مدتزمان اجرای فرایند کد رمزنگاری تولید میشود. این نویزها دسترسی به کلیدها را از طریق جریانی بیسیم امکانپذیر میکنند. البته پیادهسازی این چنین حملاتی به تجهیزات گرانقیمت و زمان زیاد نیاز دارد. (شکل 2) برنامه TEMPEST برای پیادهسازی این حملات استفاده میشود.
شکل 2: طیفی از یک سیگنال صوتی. محور عمودی زمان و محور افقی فرکانس را نشان میدهد.
مهمترین مشکل این روش، این است که مهاجم باید مدتزمانی طولانی، دسترسی بدون وقفهای به دستگاه مدنظر خود داشته باشد. همچنین در بعضی از این حملات، صدماتی مکانیکی به دستگاه هدف وارد میشود. در دستگاههای کوچکتر نیز پیادهسازی این چنین سناریوهایی مقرونبهصرفه نیست؛ به این دلیل هکر میتواند بهآسانی تلفن هوشمندی را سرقت کند یا با استفاده از کارتهای اشتراک کابلی دستگاه قربانی را هدف خود قرار دهد. اما مجله «ACM Journal» بهتازگی مقالهای منتشر کرده است که نشان میدهد چگونه یک کیت بسیار ارزانقیمت میتواند رمزنگاریهای 4096 بیتی را از فاصله 10 متری شنود کرده و کشف کند. (شکل 3) سال گذشته یک حلقه سیم و یک دانگل USB رادیویی نشان دادند چگونه میتوانند سیگنالهای رادیویی منتشرشده از طریق لپتاپها را از درون یک حلقه نان به سرقت ببرند؛ کاری که به سرقت دادهها در هوا شهرت یافت.
شکل 3: دستگاهی که با استفاده از یک میکروفون سهمیوار و یک لپتاپ قادر به استخراج کلیدها از فاصله ده متری است.
اما اکنون محققان موفق شدهاند ربایش کلیدها را به شیوه اکوستیک انجام دهند. در مدتزمانی که پردازنده مرکزی کامپیوتر به پردازش محاسبات رمزنگاری مشغول است، ماشین فرکانسهای بالایی را ساطع میکند که در اصطلاح رایج به آن وزوز سیمپیچ یا در اصطلاح عامیانهتر نالههای سیمپیچ (coil whine) میگویند. این نالههای سیمپیچ باعث تغییر جریان الکتریکی میشوند. همین موضوع باعث تحقیق گروهی از پژوهشگران امنیتی شده است که توانستند با کمک علم اکوستیک و با استفاده از یک میکروفون سهمیوار، نالههای سیمپیچ را از فاصله 10 متری ربایش کنند. (شکل 4) در این حمله پژوهشگران امنیتی برای آزمایش روش خود از GnuPG که اغلب GPG نامیده میشود، استفاده کردند. GPG برنامه محبوب منبعبازی است که برای پیادهسازی رمزنگاریهای RSA و ElGamal استفاده میشود.
شکل 4: این تصویر یک قطعه سیگنال را بعد از حمله و پس از اندازهگیری آشکارسازهای مختلف نشان میدهد. به ارتباط میان سیگنال (آبی) و بیتهای کلید صحیح (قرمز) توجه کنید.
جالب آنکه پژوهشگران موفق شدند در نسخههای مختلف این نرمافزار این دو الگوریتم رمزنگاری را ربایش کرده و شنود کنند. (شکل 5) آنها این مکانیزم حمله را روی لپتاپها و کامپیوترهای شخصی مختلفی از سازندگان مختلف و با استفاده از سیستمعاملهای گوناگون آزمایش کردند و بیآنکه نیازی به تغییر یا اصلاح عامل خاصی ضروری باشد، بهخوبی از سد رمزنگاریها عبور کردند. تنها عیب این روش مشاهده میکروفون است که برای حل این مشکل، کارشناسان امنیتی از میکروفون موبایل استفاده کردند و آن را در فاصله 30 متری لپتاپ قرار دادند. در این حالت بدون هیچ مشکلی نالههای سیمپیچ بهسادگی شنود شدند. جالب آنکه در این روش کلیدهای RSA 4096 بیتی بهراحتی شنود شد و در اختیار کارشناسان قرار گرفت. شایان ذکر است این شیوه حمله برای افراد عادی استفاده نمیشود، به دلیل اینکه حداقل به یک ساعت زمان نیاز دارد و نباید هیچگونه مزاحمت محیطی وجود داشته باشد. در غیر این صورت کلید ضبطشده خراب خواهد شد.
شکل 5: قطعه کد تولیدشده توسط GnuPG
نشتی غیر رمزنگاری
دستگاههای جانبی متصل به رایانههای شخصی به دلیل ماهیت فیزیکی و طبیعی خود و سرعت عمل کم، مستعد حملات سمت کانال (Side-Channel) هستند. برای مثال، نویز آکوستیکی که صفحهکلید تولید میکند، میتواند منجر به افشای کلیدهای فشردهشده شود، نویزی که چاپگر در مدتزمان چاپ اسناد تولید میکند یا حتی وضعیت چراغهای دادهای در یک خط ارتباطی، از نمونههای دیگری هستند که شنود اطلاعات در آنها امکانپذیر است. شاید جالب باشد که بدانید صفحهنمایش کامپیوترها سهواً باعث میشوند تا محتوایی در قالب تشعشع الکترومغناطیس که وان اک (van Eck) نامیده شده، ساطع شود و محتوای صفحهنمایش را فاش کند. از دیگر فعالیتهای رایانهای که باعث برملا شدن اطلاعات میشوند، میتوان به درجه حرارات، سرعت فن و حرکت قطعات فیزیکی هارددیسک اشاره کرد؛ قطعاتی که میتوان دادههایی را درباره آنها جمعآوری کرد. متمرکز شدن روی انرژی الکتریکی AC که کامپیوترها مصرف میکنند، میتواند به شناسایی صفحات بارگذاریشده توسط مرورگرها در ماشین هدف و حتی شناسایی تعدادی از بدافزارها منجر شود. متمرکز شدن روی خطوط انرژی USB این ظرفیت را در اختیار شما میگذارد تا آگاه شوید چه زمانی برنامههای رمزنگاری در حال اجرا هستند. کانالهای صوتی، الکتریکی و الکترومغناطیس میتوانند در جمعآوری اطلاعات با اهداف شاخصتر استفاده شوند. در این مقاله تنها به ذکر یک مورد، یعنی میکروفون که کامپیوترهای شخصی برای شناسایی رمزنگاریهای انجامشده استفاده میکنند، بسنده کردیم. اما این مکانیزم کاربردهای مختلف دیگری نیز دارد.
راه مقابله چیست؟
این گروه از کارشناسان اعلام کردهاند که برای پیشگیری از این شیوه هک باید از تقلیلدهنده صوتی درون رایانه استفاده شود تا از انتشار الکترومغناطیس جلوگیری کند. در این حالت عایقی برای دستگاه به وجود میآید. البته به کارگیری یک قفس فاراده در دنیای واقعی عملی نیست، در نتیجه به گروههای رمزنگار توصیه میشود از روتینهای فریبنده که محاسبات ساختگی را در مدتزمان فرایند رمزنگاری تولید میکنند، استفاده کنند تا مانع اجرای این ترفند شوند.
==============================
شاید به این مقالات هم علاقمند باشید:
ماهنامه شبکه را از کجا تهیه کنیم؟
ماهنامه شبکه را میتوانید از کتابخانههای عمومی سراسر کشور و نیز از دکههای روزنامهفروشی تهیه نمائید.
ثبت اشتراک نسخه کاغذی ماهنامه شبکه
ثبت اشتراک نسخه آنلاین
کتاب الکترونیک +Network راهنمای شبکهها
- برای دانلود تنها کتاب کامل ترجمه فارسی +Network اینجا کلیک کنید.
کتاب الکترونیک دوره مقدماتی آموزش پایتون
- اگر قصد یادگیری برنامهنویسی را دارید ولی هیچ پیشزمینهای ندارید اینجا کلیک کنید.
نظر شما چیست؟