Bypass Company Firewall using HTTP Tunnels

السلام عليكم ورحمة الله وبركاته

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

ولهذا جاء موضوعي لهذا اليوم وذلك لحل هذه المشكلة ولتجتاوز هذه الحواجز التي وضعها لنا هذا الأدمن :) ولكي نثبت له ولغيره بإننا قادرين على تجاوز وقفز جميع الحواجز … Bypassing قوانينكم ومحدداتكم مستمرة … واليوم نتجاوزها بطريقة غير التي شرحتها في المرات السابقة … اليوم نشرحها بإستخدام برنامج httptunnel …

في أي مؤسسة أو شركة أو دائرة حكومية، ربما المنافذ المفتوحة لك هي فقط 80 و 443 والذي هم لـ HTTP و HTTPS على التوالي … وهذه المنافذ هي التي سنستغلها في تمرير بياناتنا الى المواقع أو الخدمات التي نحتاجها في الخارج والتي يمنعها علينا مدير الشبكة … هذه المنافذ من الصعب غلقها ومن الصعب جداً فلترتها ولهذا هي بيئة خصبة وسهلة لما يسمى بـ HTTP Tunneling … سنقوم بواسطة الأداة التي ذكرتها httptunnel بعمل مجرى لنا لنمرر من خلاله بياناتنا الى الخدمات التي نريدها في خارج المؤسسة، الشركة أو الدائرة … والجميل في ما سأشرحه هو إننا سنقوم بعمل ممر مشفر بإستعمال التشفير الذي يستعمله SSH وبالتالي نحصل على ممرات مشفرة … أليكم هذه الصورة التوضيحية:

بالبداية ما سنحتاج له هو التالي:
جهاز المنزل/
– يكون عليه httptunnel server …
– الإعدادات اللازمة لإستعمال المنافذ المطلوبة (سأشرح شرح الحاجة للمنفذ 22 أي منفذ الـ SSH ولهذا نحتاج هنا الى SSH Server) …
– الإعدادات اللازمة في الجدار الناري لمرور الحزم الى المنفذ 22 …

جهاز العمل/
– برنامج httptunnel client …
– برنامج للإتصال بالـ SSH Server (على جنو/لينوكس ssh نفسه وعلى الويندوز putty) …

الآن لنقم بتركيب البرنامج على النظام في المنزل بالبداية:
Ubuntu/Debian:

apt-get install httptunnel

Fedora/CentOS:

rpm -ivh http://www.macgyver.org/software/httptunnel/httptunnel-3.3-1.i386.rpm.

وللآخرين أستعمل الكود المصدري:

ftp://ftp.nocrew.org/pub/nocrew/unix/httptunnel-3.0.5.tar.gz

وأكيد تعرف الخطوات الباقية ::18

الآن على جهازك الذي بالمنزل نفذ الأمر التالي (بصلاحيات root):

# hts -F localhost:22 443

أو

$ sudo hts -F localhost:22 443

وهذه الخيارات تعني:
– أستعملنا hts والتي هي الـ httptunnel server.
– أستعملنا الخيار F والذي يعني forward تمرير، وهو نفس الخيار –forward-port.
– قمنا بتمرير البيانات الواصلة الى المنفذ 443 الى 22.

الآن لنقوم بإعدادات الخدمة SSH المناسبة (على جهازك المنزلي). قم بتحرير الملف:

# vim /etc/ssh/sshd_config

وبعد ذلك تاكد من وجود هذه الخيارات وبالشكل التالي:

AllowTcpForwarding yes
GatewayPorts yes
X11Forwarding yes
PermitTunnel yes

الآن تريد من جهازك الذي في الشركة أن تستعمل الممر للإتصال بالجهاز الذي في منزلك للدخول الى خدمة SSH نفذ التالي:

htc -F 44444 WORK_IP:443

مثال:

htc -F 44444 172.16.0.166:443

الخيارات هنا تعني:
– استعملنا البرنامج htc والذي هو httptunnel client.
– أستعملنا الخيار F وذلك لتمرير كل الحزم الواصلة الى المنفذ 44444 الى المنفذ 443 على IP الخاص بجهاز في العمل (في المثال 172.16.0.166).
– لا تنسى تستبدل بدل كلمة WORK_IP، رقم الأي بي الخاص بجهازك في العمل.

الآن لنتصل على الجهاز الذي بالمنزل على الخدمة SSH (منفذها 22) والذي حجبت الشركة عندنا في العمل من الوصول له من خلال الأمر التالي:

ssh -p 44444 root@localhost

وهكذا سنكون قد تمكنا من الدخول الى الجهاز المنزلي بواسطة الـ HTTP Tunnel الذي عملناه …

الآن نحن لا نريد الوصول الى جهازنا المنزلي لتنفيذ الأوامر فقط، لا نريد أن نستعمل الممر لإستعمال الخدمات التي تعمل على المنافذ المحجوبة عندنا بالشركة مثل برامج الدردشة مثل GTalk و Yahoo أو إستعمال IRC أو البريد الألكتروني … كل ذلك سنقوم به بالخطوات القادمة … تابع معي …

الآن سنحتاج الى عمل SOCKS Proxy خاص بنا وذلك لتمرير جميع الحزم من خلاله. أول شيء سنقوم به هو فتح الممر:

htc --forward-port 55555 172.16.0.166:443

ثاني شيء سنقوم به هو الإتصال على هذا الممر:

ssh -D 2222 -P 55555 root@localhost

بعد ذلك أذهب الى المتصفح لديك وقم بعمل الإعدادات اللازمة كالتالي:
أذهب الى المتصفح firefox مثلاً ومن ثم الى Edit ومن ثم الى Preferences ومن ثم الى Advanced ومن ثم الى Network ومن ثم الى Settings وقم بإختيار التالي:

Manual Proxy configuration

أختر الخيار الأخير SOCKS Host ومن ثم ضع في الخانة الأولى: 127.0.0.1 وفي الثانية ضع رقم المنفذ الذي أستعملته والذي هو هنا 2222 وتأكد من إختيار SOCKS v5 وأضغط على OK وخلاص …

أو كما في الصورة التالية:

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

لإستعمال برنامج المحادثة مثلاً Pidgin أو البريد Mozilla كلما عليك فعله هو إستعمال نفس الإعدادات التي أستعملتها للمتصفح firefox والمنفذ 2222 وتقوم بالإتصال من خلاله … سأترك إعداداته لكم للتجربة …

لمزيد من المعلومات:
Main httptunnel site
FAQ
Httptunnel for Fedora/CentOS

هذا ما لدي ودمتم بود …

About [email protected]

[Between Teams of Red and Blue, I'm with the Purple Team]
This entry was posted in Firewalls, Networks, Security and tagged , , , , , , . Bookmark the permalink.

13 Responses to Bypass Company Firewall using HTTP Tunnels

  1. sd6 says:

    السلام عليكم
    ولاكن لطريقة الي دكرتها سلبيات واجابيات بدون ماندخل قي التفاصيل انت عارف ايش اقصد
    ::6

  2. احمد says:

    ::6

    ايش بدي اقولك
    والله انك مبدع
    تسلم يا غالي
    ::|لايوجد حماية كاملة |::

  3. B!n@ry says:

    sd6 @ وعليكم السلام ورحمة الله وبركاته
    بدون شك لكل شيء سلبيات وإيجابيات … بأذن الله في تدوينة منفصلة سأذكر كيف يتم التصدي لهذا النوع … لكن ياريت تذكر لنا ما عندك وتنورنا … ربما تعرف أمور أجهلها ::20 … شكراً لك ولمرورك وبإنتظار ما لديك ::18

    احمد @ الله يسلمك يارب … أهلا اخوي احمد …
    بدون شك لا يوجد حماية كاملة … شكراً لك ولكلماتك الطيبة ومرورك ::18

  4. ZandeX says:

    أرجو أن يكون الموضوع القادم “كيف يمكن للأدمن أن يوقف الـ HTTP Tunneling ) ::18
    شكراً أخي أبو محمد، دائماً تتحفنا بمواضيعك :)

  5. B!n@ry says:

    ZandeX @ حياك الله أخوي حيدر … بدون أدنى شك الموضوع القادم سيكون حول كيفية التصدي لذلك … لا تقلق مش راح أترك بابك مفتوح لهل درجة (أكيد فهمتني ::18) …

  6. sd6 says:

    السلام عليكم تاني
    اولا لا اريد ان اتسبب لك بمشاكل اخي
    B!n@ry
    لدا كل الي استطيع اقوله اني فية طريقة باستعمال ماشرحته تراق
    واشياء اخرى تسهل لك عملية الاقتحام او الاختراق صدقني نفعتني هد الطرقة خلال الحرب على اسرائيل امل ماتفهمني غلط مو اقصد شلات وووو … بل طرق متقدمة جدا وايضا اريد ان احدرك انت تفضح بعضها دون علمك وايضا كان احسن لو نزلت طريقة التصدي احسن اولا ان مافهمة راسلني

  7. B!n@ry says:

    sd6 @ وعليكم السلام ورحمة الله وبركاته
    يارجل اي مشاكل هذه التي تريد أن تسببها لي ::6 وما القصة عندك أصلاً ؟؟؟؟!!!!
    وأي حرب وأي طرق متقدمة؟؟؟ جميع ما جئت به أنا حاجات موجودة بالنت يعني ما أخترعت أنا شيء ولا فضحت أحد ::6

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

    بالنهاية يا خوي عندك الحلول وحاب تشارك الناس فيها؟ ضعها هنا … ما عندك؟ أنتظر التدوينة القادمة سيكون الحلول لهذه الطريقة موجودة فيها ::18 فلا حاجة لي لمراسلة أحد يا طيب دام الله يخلي لنا الأنترنت والعم Google …

    شكراً لك يا خوي …

  8. Mohamed says:

    Good bless you my btother binary
    You are like a light in the dark

  9. محمد says:

    مشكور على الموضوع

    سؤالي

    نكدر نسنتعمل هذا البرنامج بالتخطي مشكلة الاتصال العكسي

    بالنت كات مع السيرفرات

  10. Ahmed says:

    Hakin9 ? ::6

  11. د/أحمد شولح says:

    هل تنفع مع برامج التورنت؟
    بعض شركات النت فى مصر تحدد السرعة على التورنت
    لا املك مكان اخر لاجرب منه ولكن الطريقة مفيدة جدا

  12. B!n@ry says:

    Mohamed @ الله يخليك يارب أخوي محمد … شكراً لك ولكلماتك الطيبة … إن شاء الله تفيدك الطريقة …

    محمد @ حياك الله أخوي محمد … التجربة يا خوي خير برهان ::18

    Ahmed @ أيوه يا أحمد مجلة Hakin9 منها ومن غيرها الفكرة … وذكرت ذلك لأحد الأخوة (sd6) بإن الطريقة ليست من إختراعي ::20

    د/أحمد شولح @ نعم أخوي المفروض تنفع مع التورنت لكن السؤال هو: ما قصدك بالسرعة هنا؟ ::12

  13. د/أحمد شولح says:

    السلام عليكم
    شكرا لك
    شركة النت تسمح للمستخدم بتحميل عدد 7 gb على سرعى 1 ميجا وبعد كدة بتحجم سرعة التحميل على برمامج الp2p على 256 كيلو وباقى الترفك على 1 ميجا عادى(تصفح وتحميل مباشر مثل التحميل من ياهو مثلا)
    ارجو ان الفكرة تكون وضحت
    وشكرا لك

Comments are closed.