The Bug Story

عنوان هذه التدوينة، هو عنوان مقالتي في هذا العدد من مجلة Hakin9 … هذا العدد تركز حول Secure Coding وما الى ذلك، ولهذا كانت مقالتي في نفس سياق المواضيع … The Bug Story تعيد ذكر بعض التاريخ والبرمجيات الخبيثة التي ضربة عالم الأنترنت والحواسيب بشكل سريع جداً … وبعد ذلك يتم تشريح إحدى أخطر الديدان Worms التي أصابة أنظمة الويندوز … التشريح يوضح كيف إستطاعت الدودة من إستغلال ثغرة في نظام الويندوز لغرض الإنتشار والسيطرة بشكل أوسع … كذلك بالمقالة قمت بتوضيح بشكل مختصر جدا كيف يمكن أن تحصل على مثل هذه الديدان لغرض التجارب وذكرت بإنه ممكن يتم عمل ذلك من خلال Honeypots وذكرت إني سأخصص إما مقالة في عدد قادم حول ذلك (من تنصيب الـ Honeypot الى كيفية إستعماله) … في نهاية المقالة قمت بذكر بعض الأمور البسيطة التي ممكن تساعدنا على تجنب هذه الديدان والثغرات والأخطاء البرمجية بشكل مختصر جداً … طبعاً لم ادخل في التفاصيل البرمجية كثيراً بل كانت النقاط تتكلم عن تجنب المشاكل من جانب آخر ليس الجانب البرمجي فقط، ﻷنه ليس هو وحده من يتحمل هذه الأخطاء التي نتج عنها Bugs وبالتالي إستغلال …

أتمنى تعجبكم المقالة لهذا العدد …

Posted in Development, Publications | Tagged , , , , , , | Comments Off on The Bug Story

Routerpwn لإستغلال ثغرات أجهزة الشبكة

RouterPWN

بعض الأحيان حين تقوم بعمل إختبار إختراق، فإنه ومن دون شك سيمر عليك الأجهزة الخاصة بالشبكة (Router, Switch, Wireless AP) وتريد إجراء إختبار عليها، ستضطر للبحث عن ثغرة في هذه الأجهزة، أو البحث بالأنترنت عن مشكلة في هذه الأجهزة … هذه العملية أصبحت أسهل اليوم بوجود Routerpwn والذي هو عبارة عن موقع على الأنترنت يوفر جميع الإستغلالات Exploits لهذه الأجهزة … كل ما عليك هو أن تبحث فيه عن الجهاز المعني ورؤية إن كان له إستغلال ام لا هناك … الموقع يحتوي حسب آخر تحديث على 110 إستغلال و Two Generators … ويمكن مراسلة صاحب الموقع لإضافة المزيد إن كانت لديك إستغلال ولم يكن موجود في الموقع …

كون النظام أو الأداة هذه موجودة على الأنترنت، من السهولة تخزينها على الأجهزة الذكية (Smart phones) لتجريبها أو إستعمالها حتى بدون أنترنت (Offline) لأنها عبارة مبرمجة أصلا بواسطة Javascript والـ HTML لهذا الغرض … لمزيد من التفاصيل ورؤية الإجهزة المتوفر لها إستغلال يرجى مراجعة الموقع الرسمي للأداة هنا … وللحديث بقية هنا

Posted in Firewalls, Mobile, Networks, PenTest, Security | Tagged , , , , , , | Comments Off on Routerpwn لإستغلال ثغرات أجهزة الشبكة

Local and Remote Port Forwarding using SSH

حين نقول عملية Port forwarding أو Tunneling فإننا نقوم بعملية تمرير للحزم أو الـ traffic من خلال ممر أو نفق غير الممر أو المسار الذي تسلكه هذه الحزم بالوضع الإعتيادي أو بطريقة عملها الإعتيادية … وحين نذكر بإننا سنستخدم SSH مثلا في عملية التمرير … فهذا يعني إننا سنقوم بتمرير الحزم أو الـ traffic من خلال نفق نعمله بواسطة خدمة الـ SSH المُشفرة … وبالتالي ممكن نستفيد من عملية التمرير هذه لعدة أمور:
1- تغليف سير بيانات خدمة غير آمنة بواسطة نفق آمن …
2- إخفاء سير بيانات معينة حين تمر بداخل الشبكة سواء الداخلية او الخارجية …
3- الإستفادة منها في طريقة التحايل وتجاوز الجدران النارية … أي الوصول الى خدمة لا تستطيع الوصول أليها بشكل مباشر بسبب الجدران النارية …

الآن هناك نوعان من الـ Port Forwarding:

الأول: Local Port Forwarding أو في SSH ستجدها مرات بإسم LocalForwards
وهي أن تقوم بعملية تمرير الحزم المتجهة الى منفذ محلي Local Port الى منفذ على خادم عن بُعد Remote Port من خلال خادم الـ SSH … مثال على ذلك: لنفرض في المنزل نريد نرسل رسالة من خلال برنامج Thunderbird الى صديق لنا بإستعمال بريدنا مثلا الذي على الياهو … في الكثير من الأحيان ستجد إن شركات خدمة الأنترنت (ISP) تكون قد حجبت المنفذ 25 من المستخدم المنزلي بسبب مشاكل السبام … ولهذا لنتجاوز هذه المشكلة يمكننا عمل نفق بين جهازنا الذي في البيت وخادم موجود على الأنترنت مثلاً لنستعمله لتمرير جميع الحزم الواصلة الى المنفذ 12345 على جهازنا الى المنفذ رقم 23 على الخادم yahoo.com من خلال ممر الـ SSH الذي نعمله بيننا وبين الخادم example.com الذي لدينا صلاحيات دخول SSH عليه …
Continue reading

Posted in Firewalls, Networks, Security | Tagged , , , , , , | Comments Off on Local and Remote Port Forwarding using SSH

برنامج HexorBase لإدارة وتدقيق قواعد البيانات

قبل يومين قمت بترجبة برنامج HexorBase والذي هو عبارة عن برنامج لإدارة قواعد البيانات المختلفة: MySQL, PostgreSQL, MS SQL, Oracle, SQLite … وكذلك لعمل تدقيق (Audit) عليها …

صراحة البرنامج رائع وبسيط في طريقة إستعماله وكذلك تنصيبه لا يحتاج الى الكثير … ممكن قراءة طريقة تنصيبه موجودة هنا

لإستعماله في عملية Audit أو إدارة لخادم معيين … كل الذي عليك فعله هو إدخال أسم المستخدم وكلمة المرور له الخاصة بقاعدة بيانات معينة، في هذا المثال سأستعمل MySQL ومن ثم الضغط على مفتاح Lock as Default Login كما في الصورة:

Continue reading

Posted in Database, Networks, PenTest, Security | Tagged , , , , , , , , , , , , , , | Comments Off on برنامج HexorBase لإدارة وتدقيق قواعد البيانات

Securing a Linux Box with Tariq

وصلتني إستفسارات عدة بخصوص طريقة تركيب وتشغيل طارق Tariq ويبدو إنه هناك لبس بسيط في طريقة عمل البرنامج ولهذا لم يعرف الجميع كيفية تشغيله … سأشرح في هذا الموضوع طريقة تركيب Tariq وكيفية الإستفادة منه … الشرح الذي في هذا الموضوع تم تطبيقه على توزيعة Debian الأخيرة (Debian 6 – Squeeze) … سأقوم بشرح الأمور البسيطة التي في طارق وبعدها نتوسع في مواضيع أخرى لأني أنوي ترقيته والتعديل على بعض الأمور فيه …

قبل أن أشرح طريقة إستخدام طارق (Tariq) … أود أن أشرح بشكل مبسط جداً طريقة عمله الهيكلية أو التقنية … أولاً طارق (Tariq) عبارة عن نظام لعمل الـ Port Knocking وأمور أخرى أكثر تقدماً من مجرد كونه طارق على المنافذ والتي نعرفها في التقنيات الموجودة حالياً، وسأوضح ذلك في مواضيع أخرى إن شاء الله … طريقة عمل طارق (Tariq) هي من خلال إعطائك أمر له ليقوم بتنفيذه … يأخذ هذا الأمر ويقوم بتشفيره بواسطة مفتاح العميل ومن ثم يقوم بإخفاءه بداخل صورة معينة … بعد ذلك يتم إرسال هذه الصورة مُجزئة على أجزاء بسيطة بداخل عدد الدقات التي ستقوم بها … طبعاً يفضل أن لا تكون الصورة كبيرة الحجم، وذلك لأنك وقتها ستحتاج الى وقت أكثر لترسل التعليمة المراد تنفيذها، وكذلك ستحتاج الى إما زيادة عدد الدقات، أو الى إرسال حٌزم كبيرة الحجم وذلك بحكم تقسيم الصورة على الحزم المرسلة … هذه العملية الى الآن تمت على العميل … حين يستلم طارق (Tariq) الدقات يراعي إنها أولاً تحمل بيانات ومن ثم يراعي إنها جائت وفق دقات معينة تم الإتفاق عليها وكذلك بالترتيب الذي تم الإتفاق عليه … الى هنا طارق لم يحلل ما في داخل الحزم المرسلة … بعد ذلك يعيد إرسال لنسميه تأكيد الى العميل، والتأكيد عبارة عن رقم عشوائي … هذا الرقم العشوائي يكون مُشفر بواسطة مفتاح عميل طارق العام ويُرسل بواسطة حٌزمة Packet الى العميل مرة أخرى لكي يقوم العميل بإثبات إن هذا الأمر فعلاً هو من قام بإرسالها له … العميل يستلم الحزمة، وكونها مٌشفرة بمفتاحه العام يقوم بفكها ثم يقوم بإرسال هذا الرقم مرة أخرى الى الخادم ليؤكد إنه نعم أنا صاحب الطلب والرجاء تنفيذ طلبي … هكذا تمت عملية الـ Mutual Authentication أو البعض يسميها 2Way Authentication … إذا تحقق كل هذا، يقوم طارق بتجميع الحزم وإستخراج الصورة منها … ثم يستخرج النص أو الأوامر المطلوبة منه تنفيذها من خلال فك تشفير النص المخفي بداخل الصورة بإستعمال المفتاح العام للعميل … هذا بإختصار شديد آلية عمل طارق … والكود المصدري للنظام موجود بإمكانكم تحميله والإطلاع عليه وتعديله أو العمل معي على تحسينه حسب ما ترونه … بالنهاية هو مفتوح المصدر ويخضع لرخصة GPL … وكذلك هو منشور في موقع Port Knocking الرسمي ضمن قائمة التطبيقات التي تمت في هذا المجال … هذا النظام سيفيدك في فتح المنافذ وغلقها وتنفيذ الأوامر والعمليات التي تحتاجها بدون أن تقوم بفتح الخدمة للجميع … يرجى مراجعة أنظمة Port Knocking وما هي فائدتها بهذا الخصوص أو للإستفادة أكثر …

الآن ندخل في عملية إستعمال طارق (Tariq) وقبل كل شيء ستحتاج عزيزي القاريء الى تركيب الحزم التي بالأسفل سواء للخادم أو للعميل … وعملية تركيبهم على دبيان وباقي التوزيعات اليوم أصبحت جداً بسيطة:

* Python >= 2.6
* python-imaging  - Python Imaging Library (PIL)
* GnuGP
* Scapy
* نواة حديثة تستخدم iptables مثال على ذلك هو نواة (2.6)

Continue reading

Posted in Development, Firewalls, Linux Security, Linux Services, Networks, PortKnocking, Security | Tagged , , , , , , , , , , , , , | 4 Comments