یکی از مواردی که در فارنزیک روبرو میشیم استفاده افراد از پنهان نگاری هست .ابتدا به نقل از ویکیپدیا ببینیم اصلا این پنهان نگاری چیه :
"پنهاننگاری یا استگانوگرافی هنر و علم برقراری ارتباط پنهانی است و هدف آن پنهان کردن ارتباط به وسیله قرار دادن پیام در یک رسانه پوششی است به گونهای که کمترین تغییر قابل کشف را در آن ایجاد نماید و نتوان موجودیت پیام پنهان در رسانه را حتی به صورت احتمالی آشکار ساخت. پنهاننگاری شاخهای از دانشی به نام اختفاء اطلاعات (Data Hiding) است. دانش اختفاء اطلاعات خود شامل چندین شاخه از جمله رمزنگاری، ته نقش نگاری میباشد. افرادی که میخواهند به صورت سری با یکدیگر ارتباط داشته باشند، اغلب سعی میکنند که آن ارتباط را به هر نحوی پنهان کنند.
استگانوگرافی، برگرفته از دو کلمه ی یونانی stego به معنای پوشیده و graphy به معنای نوشتن است؛ بنابراین کل کلمه به معنای پوشیدهنویسی یا پنهاننگاری میباشد.
در حقیقت در ابتدا یونانیان باستان از این روش استفاده میکردند. به اینصورت که نوشتههای داخل لوح سنگ بهوسیله نوعی از واکس، پوشیده میشدند. اگر فرستنده اطلاعات میخواست که پیغامش را مخفی کند برای اهداف نظامی از پوشیدهنویسی استفاده میکرد. به اینصورت که پیغام در لوح بهطور مستقیم حکاکی میشد؛ سپس واکس از بالای پیغام ریخته میشد؛ بنابراین پوشیدهنویسی نه به این معنا اما وجود داشت."
پس بطور خلاصه میشه گفت که پنهان نگاری یعنی یک پیامی رو داخل یک چیزی مانند عکس و صوت و ... مخفی کرد .
بعد از آشنایی کوتاه با پنهان نگاری در ادامه ،به پنهان کردن یک پیام در داخل یک فایل صوتی می پردازیم. برای اینکار ابزارهای مختلفی وجود داره که برخی متن باز و برخی تجاری هستند. برای این پست من از ابزار Coagula استفاده کردم.
بعد از اینکه این ابزار رو دانلود کردید و باز کنید با تصویر زیر روبرو می شید :
برای اینکه یک پیام رو بسازیم ما دو روش داریم : 1- استفاده از یک عکس 2- استفاده از قلم
تو استفاده از عکس که از منوی File و انتخاب گزینه Open Image تصویر دلخواهتون رو وارد محیط برنامه میکنید و در استفاده از قلم هم در قسمت سیاه متن دلخواهتون رو می کشید . من برای این آموزش از قلم استفاده کردم و متن زیر نوشتم :
بعد از نوشتن با قلمو یا وارد کردن یک تصویر ، نوبت رندر کردن هستش.برای اینکار از شکل چرخ دنده ها استفاده میکنیم :
با زدن دکمه رندر شروع به پخش میشه و بسته به تصویر یا شکل رسم شده یه صدای عجیب و غریبی تولید میشه .
تقریبا کار تموم هست و فقط مونده هنرمون رو ذخیره کنیم . برای این کار از منوی File استفاده میکنیم :
کار پنهان نگاری تمومه و متن ما داخل فایل صوتی مخفی شده هست. البته میشه از ابزارهای برای ترکیب این فایل با یک فایل صوتی دیگه هم استفاده کرد تا مشخص نشه .
بریم سراغ روش فارنزیک این فایل :
اولین موردی که انجام میشه استفاده از ابزار exiftools هستش که خروجی اون رو زیر میبینیم :
همونطور که میبینید چیزی که ما دنبالش هستیم رو نمیده .
تو مرحله بعدی از ابزار strings استفاده میکنیم :
همونطور که میبینید باز اون چیزی که ما دنبالش هستیم رو نمایش نمیده .
چون فایل صوتی دارای نویز خاصی هست این احتمال وجود داره که تغییراتی روش داده شده یا چیزی اضافه شده بهش که این نویز رو شامل شده (یه تحلیل) . برای این منظور از ابزارهای نمایش دهنده گرافیکی استفاده میکنیم. تو اینترنت سایتهای مختلفی هستند که این کار میکنن ولی اغلب به درد نمیخورن .یکی از ابزارهای جالب که کم حجم و امکانات مناسبی رو هم داره و برای پلتفرمهای مختلفم خروجی داده ابزار sonic visualiser هستش که منم از این ابزار استفاده کردم .
اگه این ابزار دانلود و اجراش کنید و فایل صوتیمون رو توش باز کنید به صورت زیر خواهد بود :
حالا با توجه به شکل زیر گزینه هایلایت شده رو انتخاب میکنیم :
و در نهایت پیام پنهنون شده رو میبینیم :
خب در ادامه بریم و یک چالش فتح پرچم که از این روش استفاده کرده بود رو هم حل کنیم :
چالش ماله TJCTF 2020 هستش و سوال مورد نظرم Rap God بود با امتیاز 40 .اگه این فایل رو با ابزارهای exiftools و strings چک کنید چیزی از پرچم نیست .
خود فایل رو هم گوش کنید باز چیزی خاصی نداره و البته یک نویزی رو داره !
خب به روشی که قبلا انجام دادیم ، فایل رو در برنامه سونیک باز کرده و spectogram رو انتخاب میکنیم :
خب این تصاویر برای پرچم کمی عجیب هستند اما اگه دقت کنید به تصاویر شما رو یاد یک فونت تو word میندازه !
این متن توسط Wingdings نوشته شده و برای تبدیل اون سایتها و ابزارهای مختلفی هست ولی من از این سایت استفاده کردم(این سایت ابزارهای مختلفی داره و میتونه تو تبدیل و کرک ها خیلی کمکتون بکنه. و تو بیشتر شرایط تنها سایتیه نتیجه بخش هست)
خب با توجه به شکل و نتیجه که اون بالا قسمت چپ هست و نوع فرمت فلگ این ctf ، فلگ کلی بدین شکل است :
tjctf{quicksonic}
امیدوارم که لذت برده باشید !