Steghide لاخفاء معلوماتك الهامة داخل صورة..!
كتب بتاريخ: Apr 10th, 2009 | بواسطة: عبدالمهيمن

من فترة أثناء بحثي في الانترنت عن طرق تشفير واخفاء المعلومات قرأت العديد من الشروحات والمواضيع وشاهدت أساليب غريبة عجيبة لاخفاء النصوص وطرق تشفير المعلومات الهامة وصادفت أيضا برنامج جميل يدعى Steghide هذا البرنامج لا يقوم بتشفير الملفات فحسب بل لديه القدرة على اخفاؤها داخل صورة أو ملف صوتي أيضا دون تخريب هذا الملف فمن الذي سيخطر في باله أن صورة الحسناء الموجودة في الأسفل تخفي خلفها كلمات مرور أو أي معلومات هامة؟!

رغم قدم البرنامج (من عام 2003) الا أنه عملي وفعال جدا.. الجميل فيه أنه يعمل على كل من لينوكس وويندوز وهو مجاني ومفتوح المصدر تحت رخصة GPL لكن طبعا لا أختلف معكم بوجود طرق وخوارزميات تشفير أقوى بكثير من هذا البرنامج تطورت في السنين الماضية لكن الفكرة هنا ليس بقوة التشفير بل في التضليل فمن الذي سيبحث عن كلمات مرور ومعلومات هامة داخل صورة أو ملف صوتي..!
البرنامج بسيط وسهل الاستخدام, يدعم اخفاء النصوص والملفات دخل الصور التي تكون بامتداد jpg و bmp وداخل الملفات الصوتية بامتداد wav ويوجد للبرنامج العديد من الخيارات يمكننا استعراضها بتنفيذ الأمر:
steghide
الآن لنفرض أننا نريد اخفاء الملف passwords.txt داخل الصورة photo.jpg بهذه الحالة كل ما علينا هو تنفيذ الأمر:
steghide embed -cf photo.jpg -ef passwords.txt
كما هو واضح في الصورة السابقة سيطلب البرنامج ادخال كلمة مرور وتأكيدها لأننا سنحتاجها عند استخراج المعلومات من الصورة واذا قارنا حجم photo.jpg قبل وبعد تنفيذ الأمر السابق سنلاحظ اختلاف عن الحجم الأصلي.
بالنسبة لفارق الحجم سيختلف طبعا بحسب حجم الملفات التي نريد اخفاؤها داخل الصورة فبالنسبة لي ملف passwords.txt يعتبر صغير جدا لذلك لن يكون هنالك فرق كبير خصوصا أن البرنامج يضغط الملف أيضا قبل القيام باخفاؤه داخل الصورة.
وفي حال أردنا معرفة معلومات عن الصورة والملفات المخفية فيها نقوم بتنفيذ الأمر:
steghide info photo.jpg
بعد تنفيذ الأمر السابق سيطلب البرنامج كلمة مرور ليتحقق من وجود الملف وفي حال كانت كلمة المرور صحيحة وتم اخفاء ملف داخل الصورة سيظهر لنا البرنامج اسم الملف المخفي وحجمه أيضا بالاضافة لنوع التشفير الذي تم استخدامه.
أخيرا اذا أردنا استخراج الملف passwords.txt من الصورة نقوم بتنفيذ الأمر:
steghide extract -sf photo.jpg
سيطلب البرنامج كلمة المرور التي استخدمنها في اخفاء الملفات بعد ذلك سيستخرج لنا ملف passwords.txt ويضعه بنفس مسار الصورة. هذا كل شيء بالنسبة للآن وطبعا للبرنامج خيارات أخرى أترككم لتكتشفوها بأنفسكم.
موقع البرنامج (Soruceforge) | صفحة التحميل | الوثائق المرفقة
دمتم بود, عبدالمهيمن.
















@ha299: أجل أخي أنا أعتمد على توزيعة فيدورا منذ الاصدار 10 وهي النظام الأساسي والوحيد في جهازي بعد أن قمت بحذف نظام ويندوز بشكل نهائي من بضعة شهور.
@Al-Shehri: البرنامج يمكن أن يخفي أي ملف كان ليس بالضرورة ملف نصي فقط.. وأجل سيخفي الملف عن مضاد الفايروسات لأنه مشفّر ومحمي بكلمة مرور أيضا لكن طبعا لا تتوقع أن يعمل الملف التنفيذي!!
@CooL MaN: كما قلت في الموضوع البرنامج من عام 2003 وهو مفتوح المصدر, أنا متأكد يوجد العديد من البرامج تقوم بنفس المهمة لكن شخصيا صادفت هذا البرنامج وأردت مشاركتكم به, بالمناسبة يوجد واجهة رسومية لهذا البرنامج تدعى SteGUI لكني لم أقم بتجربتها ويمكن بسهولة برمجة واجهة للبرنامج فهو بسيط جدا وخياراته ليست معقدة.
@Ali Ahmed: لا أتوقع أن الطريقة التي ذكرتها ستكون فعّالة لأن البيانات لم يتم تشفيرها ولأن تغيير الامتداد لايعني تغيير الملف, في نظام ويندوز يعتمد النظام على الامتداد بتحديد نوعية الملف, أيقونته, البرامج التي تقوم بفتحه… وجميع هذه المعلومات تكون مخزّنة في الريجستري لذلك يمكن خداع النظام بسهولة. في نظام لينوكس يتم الاعتماد على هيدر الملف (الطريقة الصحيحة) وبهذه الحالة حتى لو غيّرت الامتداد لن تستفيد شيء وسيتعامل النظام معه حسب نوعه وليس امتداده. أما هذا البرنامج فيقوم بتشفير واخفاء الملف داخل الصورة دون أن يخرّب الصورة أو يعدّل على الهيدر الخاص بها.
@Mohamed: الطريقة التي ذكرتها عبارة عن ملف مضغوط بداخله صورة مع تغيير الامتداد rar الى jpg وسيقوم ويندوز باعتبار الملف صورة واستعراضها؟ ممكن تنفع لكن بصراحة لم أجرب الطريقة ولست متأكد من صحتها.
تحياتي للجميع.
اجل نبي … تدوينة عن فيدورا و ما هي مميزاتها و عيوبها
من وجهت نظرك و ولماذا اخترت فيدورا دون التوزيعات الأخرى و ..
تحياتي ..

مشكور اخي
انا متابع مدونتك مند عدة شهور والله رائعة و فيها مواضيع متميزة و طريقة شرح صراحة ادهلتني
تقبل اصدق تحياتي
كعادتك رائع ياعبدالمهيمن
هناك العديد من الافكار الي يتم من خلالها أخفاء البيانات وهذه احد الطرق
تمنياتي لك بالتوفيق
يعطيك العالفية اخي عبد المهيمن
بصراحة فكرة البرنامج جميلة بالفعل مين يخطر بباله ان الصورة فيها بيانات مشفرة!؟
سلام عليكم
برنامج جد مفيد لما يوفره من مميزات و يمكن ان يستفيد منه مدراء الشبكات … لاخفاء و استرجاع كلمات المرور عند الحاجة , استخدمته العام الماضي لاني رأيته في احدى ورشات LinuxDay الذي يقام في مدينتي و مواضيع ال steganography شيقة جدا و متيرة و طرقها ربما تكون غريبة احيانا …
على كل تحياتي .
طبعا اخي Br4v3-H34r7 لا ادكر شيء اكون غير متاكد منه او افتراضي او تكهني !
الطريقة التي دكرتها في تعليق سابق للدمج بالدوس لم اكتشفها الا مؤخرا، جربتها و كانت النتيجة ايجابية، و برايي انا البرنامج الدي دكرته يعمل بنفس ديناميكية طريقتي!!
قرات انك تخلصت من ويندوز ، لكن حقيقة : نظام لينيكس لا يتنصب الا في نظام دوس يعني يلزم ان يكون ويندوز موجود عند تنصيبه و عمله ؟؟؟ عندي توزيعة لينوكس لا ادكر اسمها لكن صعبة جدا ولا تدعم العربية ، اشرحلي هادا المفهوم و بما تنصحني ؟؟
@ha299: أخي توزيعات لينوكس مجرد أذواق وكل واحد يستخدم توزيعة حسب احتياجاته, على كل حال قد أكتب موضوع عنها قريبا.. ربما عند صدور Fedora 11
@amine, خالد, Sniper Hell: العفو.. وان شاء الله يكون البرنامج نال اعجابكم وأهلا بكم في المدونة.
@unary: وعليكم السلام.. أتفق معك وبالفعل مواضيع التشفير, التمويه وطرق اخفاء المعلومات ممتعة جدا ولها عالمها الخاص, حاليا افتتحت قسم التشفير بالمدونة للكتابة عن هذه النوعية من المواضيع واذا توسعت بها أكثر ممكن أسوي الأقسام تفصيلية أكثر Steganography, Cryptography… بالمناسبة قرأت من مدة موضوع جميل في أبجدية التقنية يتكلم عن الـ Steganography بأسلوب آخر.
@Mohamed: لم أكن أعلم أنك كاتب الموضوع! لكن أنا متأكد أن الطريقة مختلفة.. ردي على الأخ Ali Ahmed في التعليق 16 قد يفيدك. بالنسبة للينوكس من الذي قال لك هذا الكلام؟ “لزم ان يكون ويندوز موجود عند تنصيبه و عمله” !!!! أنصحك بأخذ جولة في مجتمع لينوكس العربي وخذ الوقت الكافي بالقراءة عن لينوكس, توزيعاته, نظام الحزم فيه, الواجهات الرسومية… ثم قم بتجربة توزيعة سهلة تناسب المبتدئين مثل ubuntu ولديك توزيعة أعجوبة لينكس خيار مناسب.
asowar men naw3 bmp and jpg sahla jedan le tagzeen alma3lomaat!!!!!
Laakin estekhraajha men jadeed ta7taaj ila baraa3 tab3an momken tasta3mel romooz law aradt!!!
السلام عليكم ورحمة الله وبركاته
برنامج مهم ومفيد .. وجاري التجربة .. والله يعطيك العافية على هذا الموقع المبدع .
تدوينة جميلة جدا … علم التعمية هو مشابه لعلم التشفير .. ولكن الفرق الرئيسي بينهما هو ان التعمية “كهذه التدوينة” تعتمد بشكل اساسي بعدم علم المخترق بوجود معلومات في هذه الصورة .. اما في التشفير فوجود المعلومات معلوم للجميع ولكن معرفة محتواها هو التحدي …
في كورس امن المعلومات في الجامعة كان احد الواجبات المنزلية هو كتابة برنامج جافا يقوم بأخفاء ملف نصي في صورة ملونة … ومن ثم محاولة استرجاع الملف بعكس الطريقة .. كانت ايام جميلة ههههه
بالنسبة لاقتراح Ali Ahmed بتغيير امتداد الملف فقط .. هي حيلة ولكن هل لك ان تتخيل ان وقع الملف في يد احدهم وحاول فتحه ولكنه صادف رسالة خطأ؟ سيحاول ان يجرب الامتدادات المعروفة وتوجد برامج تقوم بتجربة الامتدادات بشكل تلقائي
عندها سيتمكن من اختراق خصوصيتك
الطريقه تسمى : stenography
الشرح :
في اي ملف صوره او فيديو او ملف صوتي . يكون هناك مساحه خاويه في اخر الملف و بهذه الطريقه يتم ادراج الملفات داخل هذه المساحه .
طرق اخرى : يمكنك ان تخفي معلومات partion كامله
copy /b file.jpg + file.txt file2.jpg
مشكور اخي الحبي عبد المهيمن بارك الله فيك و تحياتي لك
شكراً أخي عبد المهيمن على طرحك الرائع لهذه الأداة ، وأتمنى أن تسمح لي إضافة بعض المعلومات .
علم الكريبوتولوجي ينقسم إلي قسمين الأول هو علم التشفير Cryptography المعروف الذي يعتمد على تشفير البيانات (البينات تكون متوفرة ولكن في شكل مشفر) ، القسم الثاني هو علم إخفاء البيانات Steganography حيث يقوم بإخفاء البيانات في بيانات أخرى (يعتمد على إخفاء البيانات وليس تشفيرها) .
وأداة Steghide من ضمن ادوات القسم الثاني ، وهي من أكثر الأدوات المتداولة في البحوث العلمية نظراً لما تفضل به الأخ عبد المهيمن من مجانيتها ومصدرها المفتوح .
الأداة تستخدم التقنية المعروفة في إخفاء البيانات وهي LSB وهي إحدى تقنيات Spatial Domain وبما أنها تقوم بإضافة المعلومات في List significant bits هذا يجعل من الصعوبة ملاحظة وجودها .
الهدف الأساسي لتطوير هذه الأداة أن تكون أداة قوية تصد جميع أنواع الهجمات المعروفة وهذا ما أكده ريشنو ولم يذكر ضعف إلا عدم إحتوائها على واجهة رسومية وهذا الآن تم حله فهنالك واجهة رسومية متوفرة لها .
من أهم الطرق لتحليل البيانات ومعرفة إحتوائها على معلومات مخفية هي طريقة First order statistics وهي طريقة معروفة في علم تحليل البيانات المخفية Steganalysis والمدهش أن هذه الأداة قامت بالتغلب على ذلك نظراً لإستخدامها مبادئ الGraph Theory .
على العموم أهم ما يميز هذه الأداة من الأدوات الأخرى :
1- المعلومات المخفية يتم تشفيرها وضغطها .
2-عند إضافة المعلومات في الصورة يتم إستخدام أماكن عشوائية عن طريق الرقم الذي يتم توليده اعتماداً على كلمة السر التي يتم ادخالها .
لا أريد أن أخوض في التفاصيل الدقيقة ولكن هنالك شئ مهم جداً حيث أن ستيفن هلتز الذي قام بتصميمها جعل قابليتها التخزينة ما بين 5 و 10 في المئة من حجم الملف المراد إخفاء البيانات داخله وهذا لأن كل ما زادت البيانات المخفية كل ما زادت قابلية إكتشافها .
في الواقع سبق لي وأن قمت ببحث يشمل مقارنة ما بين أربعة من أدوات إخفاء البيانات Stegnography Tools وكانت من بينها هذه الأداة الرائعة وقمت بتطبيق عدد من الهجمات مثل Rs analysis وغيرها وأثبتت النتائج قوة أداة Steghide فالشكر للأخ عبد المهيمن على هذه التدوينة الأكثر من رائعة .