استگانوگرافی (پنهاننگاری) به معنای پنهان کردن اطلاعات در داخل پیامی درون یک فایل یا پیام معمولی و غیرمحرمانه است، بهگونهای که از تشخیص آن جلوگیری شود. سپس این دادههای پنهان شده در مقصد استخراج میشوند. توجه شود که استگانوگرافی شامل بههمریختن دادهها هنگام ارسال یا استفاده از کلید برای رمزگشایی آنها هنگام دریافت نمیشود.
واژه استگانوگرافی از کلمه یونانی استگانوس به معنای پنهان یا پوشیده و گراف به معنای نوشتن گرفته شده است. استگانوگرافی به اشکال مختلف برای هزاران سال به کار رفته تا ارتباطات خصوصی باقی بمانند. در یونان باستان، مردم پیامها را روی چوب حک میکردند و سپس برای پنهان کردن آنها از موم استفاده مینمودند. رومیها از انواع جوهرهای نامرئی استفاده میکردند که با اعمال گرما یا نور قابل رمزگشایی بودند.
نحوه عملکرد استگانوگرافی
استگانوگرافی با پنهان کردن اطلاعات به گونهای کار میکند که از ایجاد سوءظن جلوگیری کند. یکی از رایجترین تکنیکها پنهانسازی در کمارزشترین بیت (LSB) نام دارد. در این روش، اطلاعات محرمانه در کمارزشترین بیتهای یک فایل رسانهای جایگذاری میشود. برای مثال:
در یک فایل تصویری، هر پیکسل از سه بایت داده مربوط به رنگهای قرمز، سبز و آبی تشکیل شده است. برخی فرمتهای تصویری یک بایت چهارم نیز به شفافیت (آلفا) اختصاص میدهند. روش LSB، آخرین بیت از هر یک از این بایتها را تغییر میدهد تا یک بیت از داده را پنهان کند. بنابراین، برای پنهان کردن یک مگابایت داده با این روش، به یک فایل تصویری هشت مگابایتی نیاز دارید.
تغییر آخرین بیت مقدار پیکسل، تغییری که از نظر دیداری قابل درک باشد در تصویر ایجاد نمیکند، به این معنی که هر کسی که تصویر اصلی و تصویر تغییر یافته به روش استگانوگرافی را مقایسه کند، نمیتواند تفاوتی را تشخیص دهد. همین روش را میتوان برای سایر رسانههای دیجیتال مانند صدا و ویدئو نیز به کار برد، جایی که داده در بخشهایی از فایل پنهان میشود که کمترین تغییر را در خروجی شنیداری یا دیداری ایجاد میکنند.
تکنیک دیگر پنهاننگاری، استفاده از جایگزینی کلمه یا حرف است. در این روش، فرستنده یک پیام مخفی، متن را با توزیع آن درون یک متن بزرگتر و قرار دادن کلمات در فواصل مشخص، پنهان میکند. اگرچه استفاده از این روش جایگزینی آسان است، اما ممکن است متن را عجیب و نامناسب جلوه دهد، زیرا کلمات مخفی ممکن است از نظر منطقی در جملههای هدف جای نگیرند.
انواع استگانوگرافی

استگانوگرافی متنی
استگانوگرافی متنی شامل پنهان کردن اطلاعات درون فایلهای متنی است، که شامل تغییر قالب متن موجود، تغییر کلمات درون یک متن، استفاده از دستورهای دستوری بدون زمینه (context-free grammars) برای تولید متون خوانا، یا تولید دنبالههای تصادفی از کاراکترها میشود.

استگانوگرافی تصویری
استگانوگرافی تصویری به عنوان نوعی از استگانوگرافی تعریف میشود، که شامل پنهان کردن اطلاعات درون فایلهای تصویری است. در استگانوگرافی دیجیتال، اغلب از تصاویر برای پنهان کردن اطلاعات استفاده میشود، زیرا تعداد زیادی عنصر در نمایش دیجیتال یک تصویر وجود دارد و روشهای گوناگونی برای پنهان کردن اطلاعات درون یک تصویر وجود دارد.

استگانوگرافی صوتی
این نوع از پنهاننگاری شامل پنهان کردن پیامها یا اطلاعات محرمانه درون فایلهای صوتی است. ایده پشت استفاده از این روش، پنهان کردن اطلاعات به گونهای است که افراد هنگام شنیدن صدا متوجه آن نشوند. معمولاً برای مدیریت حقوق دیجیتال در فایلهای صوتی استفاده میشود. پنهان کردن پیامهای مخفی در صدای دیجیتال در مقایسه با سایر روشها فرایندی دشوارتر است.

استگانوگرافی ویدئویی
این نوع شامل پنهان کردن پیامها یا اطلاعات محرمانه درون فایلهای ویدئویی دیجیتال است. بهترین روش در استفاده از استگانوگرافی ویدئویی، پنهان کردن اطلاعات مخفی در یک ویدئو به گونهای است که افراد عادی متوجه آن نشوند.

استگانوگرافی شبکهای
این نوع که گاهی استگانوگرافی پروتکلی نیز نامیده میشود، تکنیک جاسازی پیامها یا اطلاعات محرمانه درون پروتکلهای شبکه که در انتقال داده استفاده میشوند، مانند TCP، UDP، ICMP و غیره. این روش سعی میکند اطلاعات مخفی را در جریان عادی فعالیت اینترنت یا شبکه پنهان کند، به گونهای که هیچکس متوجه آن نشود.
مقایسه استگانوگرافی در مقابل رمزنگاری
محافظت از یک پیام یا اطلاعات در برابر دیگران هدف مشترک استگانوگرافی و رمزنگاری است. ولی از مکانیسمهای متفاوتی برای دستیابی به آن استفاده میکنند. اما از مکانیسمهای متفاوتی برای دستیابی به آن استفاده میکنند. رمزنگاری اطلاعات را به متن رمز (ciphertext) تبدیل میکند که تنها با داشتن کلید رمزگشایی قابل درک است. این بدان معناست که اگر کسی این پیام رمزگذاریشده را رهگیری کند، به راحتی میتواند ببیند که نوعی رمزنگاری روی آن اعمال شده است. در مقابل، پنهاننگاری قالب اطلاعات را تغییر نمیدهد، بلکه وجود پیام را پنهان میکند.
نمونههای واقعی از بدافزارهایی که از Steganography استفاده میکنند
استفاده از نهاننگاری در دنیای واقعی، هم سیستمعامل Windows و هم macOS را تحت تأثیر قرار داده است. مهاجمان از این تکنیک برای مخفی کردن بخشهایی از کد حملات باجافزاری (Ransomware)، انتقال JavaScript مخرب و حتی توزیع Cryptominerها استفاده کردهاند.
چند نمونه از بدافزارهایی که از نهاننگاری استفاده کردهاند:
- AdGholas : کد مخرب JavaScript را داخل فایلهای تصویری، متنی و HTML مخفی میکند.
- Cerber : بخشی از کد مخرب خود را داخل فایلهای تصویری قرار میدهد.
- Stegano : در تبلیغات بنری با فرمت PNG، کد مخرب را پنهان میکند.
- TeslaCrypt : از تگهای Comment در HTML موجود در صفحه خطای HTTP 404 برای مخفی کردن دستورات مربوط به C2 Server استفاده میکند.
- Zbot : دادههایی را به انتهای یک فایل JPEG اضافه میکند و اطلاعات مخفی را در آن قرار میدهد.
وجه مشترک این نمونهها این است که مهاجم سعی میکند داده یا کد مخرب را درون یک فایل ظاهراً عادی مخفی کند؛ مثلاً یک تصویر PNG یا JPEG که در نگاه اول کاملاً سالم به نظر میرسد. به همین دلیل، تشخیص آن با بررسی ساده نام فایل یا پسوند آن دشوار است.


0 دیدگاه