Home أمن المعلومات مقدمة في تحليل جرائم الانترنت Internet Forensics
مقدمة في تحليل جرائم الانترنت Internet Forensics

مقدمة في تحليل جرائم الانترنت Internet Forensics

522
4

ماذا سوف تتعلم بعد قراءتك هذه المقالة:

  • أهمية تخصص الأدلة الجنائية وتوضيح المهارات التي يجب أن يمتلكها محقق الجرائم الالكترونية
  • كيف يعمل متصفح Firefox وكيف يمكن استرجاع المعلومات التي تفيد أثناء التحقيقات
  • كيف يمكن استرجاع المحادثات من برنامج المحادثة الياهو Yahoo Messenger
  • كيف تقوم بعمل برامج مشابه لتلك البرامج

مع انتشار استخدام الحواسيب وشبكة الانترنت بين المستخدمين ، تزايدت طردياً عمليات تبادل المواد الممنوعة وتزايد عمليات الاحتيال والسرقة والابتزاز على الشبكة بين المستخدمين ، وكان لا بد من أن تبدأ المنشآت الأمنية والحكومية بالاهتمام بتخصص الأدلة الجنائية Computer Forensics حتى يمكن لتلك الجهات التحقق من الجرائم الحاصلة على الشبكة ومن مرتكبيها حتى يثبتوا إدانتهم فعلاً لكي تتم محاكمتهم مثلهم مثل المجرمين على أرض الواقع.

تخصص الأدلة الجنائية المتعلقة بالحاسب تخصص واسع وكبير ويشمل الكثير من المهارات سواء كانت في المنهجيات والأساليب المتبعة للتحقيق في جريمة أو المعرفة في تفاصيل الأنظمة وكيف تعمل من الداخل حتى يمكن للمحقق اكتشاف واسترجاع المعلومات التي يمكن أن تفيده في عملية التحقيق.

وقد لا تخلوا الجرائم الحاسوبية من الاتصال بالويب والاستفادة من خدماتها مثلاً الانترنت أو البريد الالكتروني وتبادل الملفات وخدمة المحادثات بين الأشخاص والمحادثات الهاتفية عبر الانترنت. كل من هذه الخدمات التي تقدمها لنا الويب قد تستخدم بشكل غير لائق أو بأشكال ممنوعة شرعياً، مثلاً عملية تصوير الفتيات من خلال المحادثات عبر برامج المحادثة والتي تسمح بتبادل الصور وملفات الفيديو ثم البدء بعمليات الابتزاز، أو حتى تحميل مواد ممنوعة من مواقع غير مسموح بها والبدء بالمتاجرة بها، وطرق الاستخدام غير الشرعية قد لا تعد ولا تحصى.

من هنا بدأت كثير من الشركات المتخصصة في أمن المعلومات بتقديم حلول برمجية للمحققين حتى تسهل عليهم في عملهم وتيسر لهم الحصول على المعلومات وتجهيزها في أشكال قابلة للفهم من قبل المحقق حتى يقوم بفهمها واستخراج الأدلة التي تثبت فعل الجريمة. ولكن المحققين المحترفين عليهم أن يكونوا على دراية بالتفاصيل في كل ما يحققون فيه حتى يضمنوا أنهم يقوموا بعملهم في أكمل وجه، فالمحقق الذي يعمل على أنظمة الويندوز عليه بتعلم كيف يعمل ذلك النظام، وما هو نظام الملفات في ذلك النظام وكيف يعمل وأين تذهب الملفات المحذوفة فيه، والمحقق المتخصص في التعامل مع الجرائم المتعلقة بالانترنت والتي استخدمت فيها متصفحات الانترنت أو برامج المحادثة عليه معرفة كيفية استرجاع هذه المعلومات بشكل كامل من هذه البرامج وحيث أن هذه البرامج تختلف فيما بينها من الناحية الداخلية وطريقة تخزينها للمعلومات وطريقة تشفير هذه المعلومات ، فإن على المحقق دراسة كل من هذه البرامج على حده حتى يضمن أن سيقوم باسترجاع جميع المعلومات
المتعلقة بالقضية.

هذه المقالة موجه للمحققين المتخصصين في التعامل مع الجرائم المختصة بالانترنت ومتخصصين أمن المعلومات بشكل أمن والباحثين والمبرمجين في مجال الأدلة الجنائية، ولأن مجال الحديث واسع والبرامج التي تستخدم الانترنت كثيرة جداً فسيتم الحديث عن أحد البرامج التي تتعامل مع الاتصال بصفحات الانترنت (متصفح Firefox) وسيتم الحديث عن احد برامج المحادثة (برنامج Yahoo Messenger).

الغرض من هذه المقالة هو توضيح كيفية عمل هذه البرامج وخصوصاً عند تخزينها للبيانات حتى تسهل للمحقق استرجاع هذه البيانات عندما يبدأ في التحقيق. وتهدف أيضاً هذه المقالة إلى تدريب المحققين على استخدام الأساليب اليدوية في التحليل بعد فهم آليات العمل والتي قد يتطلب إليها في بعض الأحيان.

عند التحقيق في جريمة تتعلق بالاشتباه في علاقة شخص بجهة معينة وذلك من خلال البحث عن عناوين هذه الجهة في العناوين التي قام المشتبه به في دخولها، وبالرغم من أنه يمكن من خلال برامج المتصفحات نفسها أن تسترجع عناوين المواقع التي دخلها المشتبه به إلا أن هذه المعلومات لا تكفي في التحقيق، ويمكن للمحقق الحصول على المزيد من المعلومات كتاريخ زيارة الموقع المعين وعدد المرات التي زار هذه الموقع وهل يحفظ الموقع في قائمة المفضلة لديه وما هي البرامج والأدوات التي قام المشتبه به بتحميلها موثقة بتاريخ وأوقات كل من هذه العمليات، وبالرغم من أهمية هذه المعلومات إلا أن برامج المتصفحات لا تعطيها أي أهمية وتقوم بتخزين هذه المعلومات بشكل متباعد سواء في ملفات مختلفة أو في جداول مختلفة داخل قاعدة بيانات، مما يستوجب للمحقق أن يدرس طرق التخزين هذه حتى يقوم باسترجاع ما يريد من المعلومات.

أما الجرائم التي يراد أن يطلع فيها على المحادثات بين شخص مشتبه به وشخص مدان مسبقاً فإن من أهم المعلومات التي يريدها المحقق هي المحادثات نفسها بين الطرفين وأوقات جميع هذه المحادثات حتى يستطيع أن يربط بين الإحداث. المشكلة أن برامج المحادثة في الغالب تحفظ هذه المعلومات في ملفات غير معروفة البنية ، أو قد يستوجب استخدام برنامج المحادثة نفسه لكي
يتم قرائه تلك الملفات (مثل برنامج المحادثة من Yahoo والذي ستتم دراسته فيما بعد) لأنها تحفظ الملفات بصيغة غير معروفة إضافة إلى استخدامها لطرق من الترميز لضمان عدم فهم هذه الرسائل. لذلك على المحقق أن يستطيع فهم هذه الملفات ومعرفة بنيتها حتى يستطيع استخراج المعلومات منها بكل يسر وسهولة.

استخراج المعلومات وتحليلها من المتصفح Firefox :
بدئاً من الإصدارة الثالثة من متصفح فايرفوكس الشهير فقد تم تغيير طريقة تخزين المعلومات التي يخزنها المتصفح على الجهاز حيث كانت تحتفظ في ملف بصيغة mork وأصبح المتصفح يستخدم قاعدة بيانات SQLite في تخزين هذه المعلومات. وتختلف مواقع هذه الملفات باختلاف نظام التشغيل المستخدم واصدارة النظام حيث لكل نظام مواقع معروفة تستخدمها البرامج في التخزين. الأسطر التالية تبين مواقع تخزين قاعدة البيانات هذه في أنظمة التشغيل ويندوز:

Windows XP
C:Documents and Settings<user>Application DataMozillaFirefoxProfiles<profile folder>places.sqlite

Windows Vista
C:Users<user>AppDataRoamingMozillaFirefoxProfiles<profile folder>places.sqlite

قواعد البيانات هذه تكون بشكل ثنائي binary وتحتاج لكي تعرف تركيبتها أن تدرس بنية هذه الملفات باستخدام أي Hex Editor أو استخدام الطريقة الأسهل وذلك باستخدام أوامر قاعدة بيانات SQLite والتي يمكن من خلالها معرفة بنية القاعدة والجداول التي بداخلها. ويمكن استخدام سطر الأوامر الذي يأتي مع القاعدة SQLite لغرض توضيح تركيبة القاعدة schema أو استخدام أي من البرامج التي تستخدم واجهة رسومية لها وذلك لتسهيل دراسة القاعدة وإيجاد المعلومات التي يمكن استخراجها منها. الشكل رقم 1 يوضح محتوى ملف قاعدة البيانات places.sqlite داخل محرر بالنظام السادس عشر.

post-51148-025949000 1291234822
الشكل (1) يبين تركيبة قاعدة بيانات متصفح فايرفوكس

المعلومات التي توجد في هذه القاعدة كثيرة ومن أهمها الزيارات التي قام بها المستخدم للمواقع، وعدد الزيارات لكل موقع ووقت وتاريخ هذه الزيارات، ويخزن جميع أسماء المواقع التي تمت زيارتها ويستفيد من تلك المعلومات عن طريق إظهار قائمة منسدلة عندما يقوم المستخدم بكتابة الحرف الأول من الموقع حيث تظهر في تلك القائمة المنسدلة جميع المواقع التي زارها المستخدم وتبدأ بهذا الحرف. كما تخزن هذه القاعدة جميع المواقع والصفحات التي قام المستخدم بوضعها في قائمة المفضلة bookmark.

الشكل رقم 2 يوضح قاعدة بيانات places.sqlite داخل أحدى برامج توضيح تركيبة قواعد بيانات SQLite (يسمى SQLite Spy).

post-51148-048308600 1291234943
الشكل 2 يوضح الجداول والحقول داخل قاعدة بيانات places.sqlite

كما يتضح من الشكل رقم (2) فإن قاعدة بيانات places.sqlite تحتوي على عدد كبير من الجداول وكل من هذه الجداول مكون من العديد من الحقول والتي تحتوي على الكثير من المعلومات، فمثلاً الجدول moz_historyvisits يحتوى على جميع المواقع التي تمت زيارتها ولكنه مرتبط بالجدول moz_places من خلال الحقل الغريب foreign key المسمى ب place_id. وأيضاً الجدول moz_bookmark مرتبط بحوالي 4 جداول.

هذا التداخل في القاعدة وتعقيد تركيبتها تجعل من الصعب أن يقوم المحقق باستخراج المعلومات منها ولو من خلال برنامج كبرنامج SQLite Spy حيث على المحقق أن يكتشف العلاقات بين هذه الجداول ويقوم باستخراج البيانات عن طريق كتابة أوامر SQL كثيرة.

الشكل رقم 3 يوضح شكل تقريبي لتركيبة قاعدة البيانات places.sqlite وهي من إعداد فريق firefoxforensics.com :

post-51148-007327200 1291235214
الشكل (3) يوضح شكل تقريبي للجداول والعلاقات بينها في القاعدة places.sqlite

من الملاحظات على هذه القاعدة هي طريقة تخزينها للوقت والتاريخ حيث هي تخزنه بصيغة Microseconds وليس كما بقية الأنظمة والتي تستخدم seconds في تخزين الوقت (تسمى Unix-Time أو POSIX-Time وهي عدد الثواني من اليوم الأول في الشهر الأول من سنة 1970). ولتحويل من طريقة تخزين الوقت في places.sqlite إلى طريقة Unix-Time يجب القسمة على مليون وبعد ذلك يمكن استخدام الدالة datetime في SQLite والتي سوف تقوم بمهمة تحويل هذه الثواني إلى الوقت والتاريخ بشكل نصي.

الشكل (4) يوضح الاستعلام الذي يمكن من خلاله الحصول على جميع المواقع التي تمت زيارتها موضحاً وقت وتاريخ الزيارة لكل موقع.

post-51148-075152700 1291235308
الشكل (4) يوضح كيفية الحصول على معلومات زيارة المواقع بعد تطبيق بعض من الاستعلامات

من خلال هذه الاستعلامات يمكن الحصول على جميع المعلومات المتعلقة بالمعلومات الموجودة في قاعدة بيانات المتصفح فايرفوكس، ولكن بما أن هذا يتطلب وقتاً لكتابة كل من الاستعلامات حتى يمكن الحصول على النتيجة إضافة لصعوبة تذكر هذه الاستعلامات، فإن كتابة برنامج متخصص في استرجاع هذه المعلومات بكل يسر وسهولة يعتبر أمر ضروري للمحققين حتى تساعدهم في إثبات ما يمكن إثابته على المشتبه به.

من أشهر البرامج المتخصصة في استرجاع معلومات متصفح فايرفوكس هي Firefox 3 Extractor و FoxAnalysis ووظيفة هذين البرامج مشابه لبعضها حيث تقوم باستخراج كل الزيارات التي قام بها المستخدم Histories ومفضلة المستخدم Bookmarks وملفات الكوكيز Cookies والملفات التي قام بتحميلها المستخدم Downloads ومعلومات تسجيل الدخول (اسم المستخدم وكلمات المرور إذا قام المستخدم بحفظها) Logins. إضافة إلى تزويد المحقق بخاصية البحث في تلك المعلومات وحفظ هذه المعلومات وتصديرها على شكل ملفات أكسل أو ملفات CSV.

استخراج محادثات برنامج المحادثة Yahoo Messenger :
عند إجراء المحادثات عبر برامج المحادثة Yahoo! Messenger فقد يحفظ البرنامج هذه المحادثات حتى تستطيع الرجوع إليها فيما بعد إذا احتجتها وذلك على حسب إعداداتك للبرنامج، النسخ السابقة من برنامج المحادثة Yahoo كانت خاصية الحفظ بها مفعلة بالشكل الإفتراضي عند تنصيب البرنامج، بعد ذلك قامت الشركة بإلغاء خاصية الحفظ التلقائية وجعلها على حسب إعدادات المستخدم.

المحادثات في برنامج Yahoo Messenger لا تحفظ بشكل نصي واضح clear text ولكن تحفظ في ملفات ثنائية binary files لها بنية غير موثقة وغير معروفة والغرض من ذلك جعل هذه المحادثات غير مقروءة لأي شخص يريد الإطلاع عليها. ويستطيع المستخدم الذي نتجت منه هذه الملفات استخدام برنامج ال Yahoo Messenger نفسه لكي يقوم بالحصول على النص الواضح من هذه الملفات. الشكل 5 يبن القائمة التي يمكن من خلالها الحصول على المحادثات بشكل واضح.

post-51148-001922200 1291235461
الشكل (5) يوضح كيف يستخرج برنامج الياهو المحادثات المسجلة

طريقة تشفير المحادثات تتم باستخدام أحد أبسط الأساليب على الإطلاق ( المحادثات في برنامج Yahoo Messenger تشفر باستخدام تطبيق عملية XOR المنطقية مع اسم المستخدم) وعندما سُئل فريق العمل عن ذلك ذكروا بأن الغرض الأساسي هي سهولة حفظ المعلومات وليس الغرض تشفيرها عن المستخدم.

مواقع تخزين هذه الملفات قد تختلف باختلاف نسخة برنامج المحادثة ياهو وباختلاف نسخة نظام التشغيل المستخدم ، ففي نظام ويندوز XP فهي تخزن على المسار التالي: أما في نظام التشغيل ويندوز 7 فتغيرت هذه المسارات وخزنت في مكان أخر. وأسهل طريقة يمكن أن تحصل على هذه الأماكن وذلك بالاستفادة من وجود الخاصية في برنامج Yahoo Messenger والتي تمكنه من قرائه الرسائل (كما في الشكل 5 ) هي عن طريق مراقبة البرنامج عند تطبيق هذا الأمر ثم تتبع ماذا يقوم به حتى يمكن الحصول على المسار. الشكل (6) يبين كيف يمكن الحصول على المسار من خلال مراقبة البرنامج باستخدام process monitor.

post-51148-019916500 1291235593
الشكل (6) يبين كيفية الحصول على مسار تخزين ملفات ال حادثة عن طريق مراقبة برنامج الياهو أثناء التسجيل
كما يتضح من الشكل فإن المسار في نظام ويندوز 7 هو التالي: C:Users<username>AppDataLocalVirtualStoreProgram FilesYahoo!MessengerProfiles<userid>ArchiveMessages<buddyid>

ويتم تغيير <username> باسم المستخدم للنظام وتغيير <userid> باسم حساب المستخدم في الياهو وتغيير <buddyid> باسم حساب الطرف الآخر في المحادثة، وعند فتح ذلك المجلد سوف نجد جميع المحادثات التي تمت بين هذه الطرفين في ملفات ثنائية بالامتداد .DAT ، كل من هذه الملفات يكون اسمه مكون من تاريخ بدء المحادثة واسم المستخدم والذي سيستخدم كمفتاح في عملية فك تشفير الرسالة المخزنة.

post-51148-077243600 1291235640
الشكل (7) يبين المحادثات المسجلة في الجهاز

بنية هذه الملفات تتكون من : أربعة بايتات تمثل تاريخ المحادثة ويتم تخزينها ك Unix-time تليها أربعة بايت محجوزة (أو لا يعرف الغرض منها) ثم تليها أربعة بايتات أخرى توضح هل الرسالة قادمة من الطرف الأول صاحب البريد (تكون القيمة صفر) أو أنها قادمة من الطرف الآخر (تكون القيمة واحد) ثم تليها أربعة بايتات توضح عدد بايتات الرسالة (إلى هنا جميع هذه المعلومات تخزن بترميز Little Endianes ) ثم تأتي بعد ذلك الرسالة ويكون عدد بايتاتها معلوم لأن الحقل الذي سبقها كان يحدد عدد بايتات الرسالة، وعندما تنتهي الرسالة تأتي أربعة بايتات أخرى تكون قيمتها صفر وذلك لكي تفصل ما بين كل رسالة ورسالة. الشكل (8) يبين كيف يمكن الحصول على الرسالة الأولى التي تم إرسالها من الطرف الأول للطرف الثاني.

post-51148-039240900 1291235956
الشكل (8) يبين كيف يمكن فك تشفير الرسالة للحصول على النص الأصلي الذي كتب في البرنامج

هكذا يستطيع المحققين استخراج هذه الرسائل بشكل يدوي، ولكنها عملية متعبة وتستغرق كثير من الوقت لاستخراج الرسائل وفك ترميزها وتحويل الوقت وما إلى ذلك من عمليات. لذلك اللجوء إلى البرامج التي تساعد المحققين أمر مهم جداً. هناك بعض من البرامج التي تقوم بهذه المهمة منها مجاني ومنها تجاري .ويمكنك عمل برنامج مشابه لذلك و يستخرج جميع الرسائل وأوقات هذه الرسائل كما يوضح المرسل والمرسل إليه لكل من الرسائل.

خاتمة:
تناولت هذه المقالة عن أهمية علم الأدلة الجنائية والتحقيق في الجرائم المتعلقة باستخدام الانترنت كبرامج التصفح وبرامج المحادثة، وتناولت المقالة أساليب التحليل التي يتبعها المحللون حتى يستخرجوا المعلومات بشكل يدوي، وكمثال على ذلك تم تحليل برنامج التصفح فايرفوكس وتم استخراج المعلومات التي تفيد المحققين أثناء التحقيق في الجرائم الالكترونية، كما تم تحليل برنامج المحادثة ياهو وتوضيح كيف يمكن استخراج المعلومات والمحادثات بعد فك تشفير هذه المحادثات.

المراجع:
Yahoo! messenger archive file 
Access Data’s FTK: Internet Forensics
http://hiddenillusio…gid=6&Itemid=63

 

(522)

وجدي عصام مهندس برمجيات مهتم بعلوم الحاسب وبالأخص مجال الخوارزميات وهندسة البرمجيات وحماية التطبيقات،

Comment(4)

  1. هل حذف بيانات سجل المتصفح (بالطريقة العادية من خلال المتصفح نفسه) يقوم ايضا بحذف البيانات من ملف places.sqlite ام أنها تبقى ويجب التخلص من الملف يدويًا؟

    مقالة رائعة مشوقة ومعلومات رائعة ومفيدة .. تسلم ايديك يا وجدي واستمر من فضلك

    1. نعم يؤدي لنفس الهدف ويتم حذف البيانات من هذا الملف، لكن الكثير ينسى ذلك خصوصاً لو كان لديه اكثر من متصفح لذلك برامج التنظيف ما زالت تستخدم للآن

      شاكر لك مرورك

    2. شكرا على التوضيح. اتوقع ان متصفح Tor Browser لا يحتوي على ملف مشابه ولا يقوم بتخزين اي بيانات عن سجل التصفح. صحيح؟

LEAVE YOUR COMMENT

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

مشاركة