بعد التطور الكبير الذي يشهده قطاع الالكترونيات في الوقت الحالي وبالأخص تطور أجهزة الهواتف النقالة بشكل كبير جدا و ظهور جيل جديد من الهواتف الذكية, أصبح الموبايل ليس مجرد جهاز للاتصال و التحدث فبعد اضافة تقنيات عدة له أصبح بامكاننا ان نطلق عليه حاسوب مصغر واستخدامه في الكثير من الأمور الـ Penetration Testing احداها!!

سنتكلم اليوم عن كيفية استخدام أجهزة Apple في عملية الـ Penetration Testing و هي (iPhone 2G,iPhone 3G, iPhone 3GS) و بالامكان تطبيق الشرح على اجهزة (iPod Touch).

ملاحظات:

  1. تم تنفيذ الشرح على جهاز iPhone 3G مكسور القفل أي Jailbroken.
  2. لن أقوم بشرح كيفية عمل Jailbreak لجهاز iPhone لأن الطريقة موجود في مواقع أخرى مختصة بهذه الأمور.
  3. عند عمل Jailbroken فمن الضروري أن تعرف أنك تجرد نفسك من دعم شركة Apple لك.
  4. نحن غير مسؤلين عن أي استخدام خاطيء للمعلومات المذكورة أدناه كما أننا غير مسؤولين عما قد يصيب جهازك من جراء تطبيقك للشرح وأنت وحدك تتحمل نتيجة استخداماتك.

 

هناك نوعين من البرامج:

  1. Third Party Applications: هي البرامج التي تكون عادة على شكل حزم debian يتم تنصيبها عن طريق cydia , icy أو من خلال سطر الأوامر باستخدام برنامج apt-get. (أنا شخصيا افضل سيديا و سيكون الشرح عليه)
  2. Apple Application: هي البرامج اللتي تقوم Apple بنشرها و يمكن تنصيبها من خلال برنامج apple store الموجود مع الجهاز.

 

Third Party Applications:

في اول مرة تقوم بتشغيل cydia سيسألك عن طبيعة استخدامك للهاتف اختر hacker لأنه اذا اخترت user سيقوم باخفاء جميع الحزم اللتي تعمل من سطر الاوامر.

في البداية سنقوم بتنصيب terminal لنتمكن من الدخول الى سطر الاوامر, نذهب الى سيديا و نختار search و نكتب في المربع mobileterminla:

iPhone Pentesting 1

 

الآن نضغط على الحزمة وسوف تظهر لنا معلومات عنها:

iPhone Pentesting 2

 

نختار install ثم confirm و سيقوم بتحميل و تنصيب الحزمة.
بعد التنصيب ستظهر ايقونة terminal مع البرامج, نشغّل الـ treminal ليظهر لنا مثل هذه الصورة:

iPhone Pentesting 3

الآن سنقوم بتنصيب بعض الحزم المهمة حتى نتمكن من استخدام الترمنال بشكل كامل
من سيديا قم بتركيب الحزم التالية:

  1. sudo: هذه الحزمة تمكننا من استخدام الامر sudo
  2. system-cmds: لتفعيل الاوامر التالية iostat, login, passwd, sync
  3. wget: لتفعيل امر wget
  4. shell-cmds: لتفعيل الاوامر التالية killall, mktemp, time, which renice
  5. network-cmds: لتقعيل الاوامر التالية ifconfig, arp, netstat, rout, tracerout
  6. Bigboss recomended
  7. bzip2 , gzip و unrar: لنتمكن من التعامل مع الملفات المضغوطة.

ملاحظة: كلمة مرور الـ root في الحالة الافتراضية هي alpine و يمكننا تغييرها عن طريق الامر:

passwd newpass

حيث newpass هي كلمة المرور الجديدة.

 

الخدمات: نقم بتركيب الحزم التالية من سيديا:

  1. openssh
  2. openssl
  3. inetutils تحتوي على:
  • خادم و عميل ftp
  • خادم و عميل telnet
  • خادم و عميل rsh
  • خادم و عميل tftp
  • خادم و عميل rlogin


python: الان سنقوم بتنصيب مترجم لغة python, نفس الطريقة في الـ search نكتب python و نقم بتنصيب الحزمة.

صورة تبين اصدار البايثون يعد تركيبه:

iPhone Pentesting 4


perl: بالنسبة للبيرل الطريقة مختلفة, سنحتاج لاضافة سورس جديد و اضافة المفتاح له
نفتح التيرمينال و ننفذ:

su root
password:alpine
wget http://coredev.nl/cydia/coredev.pub
apt-key add coredev.pub
echo ‘deb http://coredev.nl/cydia iphone main’ > /etc/apt/sources.list.d/coredev.nl.list

الان بامكانك تركيب البيرل من سيديا ابحث عن perl ستجدها و تجد مكتباتها أو نفذ:

apt-get update
apt-get install perl

 

– الان بعد اضافة perl و python تخيل عدد الادوات اللتي اصبحت قادر على استخدامها !!

 

metasploit: من سيديا ابحث عن metasploit و نصبها, لتشغيله من سطر الاوامر (بصلاحيات root) نفذ:

msfconsole

انتظر مدة 3-4 دقائق و النتيجة:

iPhone Pentesting 5

 

nmap: بنفس الطريقة بحث من سيديا و install و استعمله من mobile terminal:

iPhone Pentesting 6

بنفس الطريقة نقم بتنصيب أداة netcat , whois و spoofMAC: برنامج بواجهة رسومية لتغيير الـ MAC Address الخاص بالجهاز.

pirni: اداة رائعة جدا تمت برمجتها خصيصا لأجهزة iPhone تقوم بعمل network sniffing + arp spooffing باستخدام هجوم mitm أي (man in the middle)
لاستخدام الاداة ننفذ:

pirni –options

حيث:
i- لتحديد اسم كارد الوايرلس عادة لن تحتاج الى تحديده لانه موضوع على الحالة الافتراضية و هو en0
s- لتحديد الip اللذي تتجه له الحزم و هو ال.default gateway
-d لتحديد ip address للهدف و اذا تركت سيتم الهجوم على جميع الاجهزة الموجودة بالشبكة.
f- لتحديد نوع معين من الحزم ليتم جمعها(FTP, SMTP or HTTP) و اذا تركت فارغة سيتم جمع جميع انواع الحزم.
o- اسم الملف اللذي ستم وضع الحزم اللتي تم جمعها فيه.

مثال:

pirni -d 192.168.1.5 -o out.pcap

 

iPhone Pentesting 7


Apple Applications:

هناك بعض البرامج الموجودة في apple store المفيدة منها:

wifitrack: برنامج لاضهار شبكات الوايرلس المتوفرة و معلوماتها.

iPhone Pentesting 8

 

و عند الضغط على اي شبكة ستظهر معلوماتها بشكل اكثر تفصيلا مع امكانية الاتصال بها:

iPhone Pentesting 9

 

snap: برنامج اكثر من رائع يقوم بعمل بحث عن الاجهزة المتصلة بالشبكة و اضهار معلوماتها و حتى عمل port scan لها!

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

iPhone Pentesting 10

 

بعد الانتهاء من عملية البحث ستظهر لنا الاجهزة المتصلة بالشبكة:

iPhone Pentesting 11

 

الان عند الضغط على اي جهاز سيقوم البرنامج باضهار معلومات مفصلة عنه (في المثال سأقوم بالضغط على الراوتر 192.168.1.254):

iPhone Pentesting 12

 

الآن عند الضغط على scan services سيقوم بعمل port scanning للراوتر:

iPhone Pentesting 13

RDP Remote Desktop: برنامج للاتصال بالحاسوب من خلال الـ Remote Desktop

iPhone Pentesting 14


jaadu VNC:
برنامج للاتصال بالحاسوب عن طريق VNC

 

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

 

دمتم بود…

عن الكاتب:


‫زيد القريشي, Ethical Hacker مهتم في مجال الحماية والـ Penetration Testing. يملك خبرة في اختراق شبكات الوايرلس والبرمجة بلغة Python.

Share on FacebookShare on Google+Tweet about this on TwitterShare on LinkedIn