يامن
نجم المنتدى
- إنضم
- 4 جانفي 2006
- المشاركات
- 2.647
- مستوى التفاعل
- 5.613
أعزائي أعضاء منتديات تونيزياسات
كما عودناكم دائما على الحصريات في منتدى الابداع نقدم لكم اليوم بسطة عما توصلنا إليه بخصوص كسر حماية سوفت الرواتر من نوع sagem f@st2X04 مثل 2604 و2404 التي يستعملها عدة مزودين في تونس والتي احيانا لا تقبل الا السوفتات الاصلية ان وجدت وهو الحال مثلا مع توبنات التي عكس منافستها بلانات لم تصدر أي سوفت لهذه الرواتر والتي لا تقبل أيضا سوفتات المزودين الآخرين
لمن لا يريد قرائة الموضوع كاملا من هنا الأهم
السوفت الاصلي للتوبنات
topnet2604_fs_kernel_3.21a4G.rar
سوفت بلانات معدل ليعمل على روتر التوبنات
topnet2604_to_planet2604_fs_kernel_3.49a4G_by_tunisia-sat.com.rar
ما المقصود بكسر الحماية؟
ما نقصده بكسر الحماية ليس اختراقا لرواتر الآخرين أو سرقة اشتراكاتهم أو الدخول لشبكاتهم عنوة
كسر حماية الروتر بالمعنى المقصود هنا يمكننا من استخراج السوفت الأصلي للجهاز واستعمال أي سوفت لنفس الروتر لكن من مزود آخر وكذلك تفعيل خاصيات يدعمها الروتر ولكنها مقفلة من قبل المزود وكذلك إضافة خاصيات جديدة للروتر غير متوفرة في السوفت الاصلي بل وابعد من ذلك فمن الممكن انجاز سوفت كامل جديد للروتر وسنتطرق لكل هذه الخيارات في بقية الموضوع وفي المواضيع الموالية
هل يعتبر هذا خرقا للقوانين؟
إذا كان الروتر ملكا لك فالأمر قانوني مائة بالمائة
إذا كنت تستأجر الروتر من المزود فالأمر يخضع لعدة اجتهادات لكن المتعارف عليه في العالم أن المزويدين يقبلون بذلك بل أن العديد منهم يتسابقون لتدعم رواترهم مشاريع السوفتات مفتوحة المصدر مثل OPENWRT و DD-WRT وغيرها والحال أن المزودين نفسهم مطالبون قانونا وحسب منظومة GPL بتوفير لا فقط الدعم للرواتر وانما كذلك الكود سورس الخاص بها نظرا لاستعمالهم نظام لينكس
كيف بدأ المشروع؟
منذ بضعة أيام احتجت لخاصية في الروتر 2604 احتاجها في مشروع آخر واكتشفت أن الخاصية غير متوفرة في نسخة السوفت التي منصبة في الروتر رغم أن الروتر يدعمها فبحثت في المنتدى وفي صفحة المزود توبنات فلم أجد أثرا للسوفت وحتى سوفت بلانات لم يقبله الروتر فبعثت برسالة للمزود أطلب سوفت محين للروتر وبعد يومين أو ثلاثة اتصل بي شخص من توبنات وقال لي أنه لا يمكن ذلك وأن علي الاتصال بمقر توبنات في تونس العاصمة لاستبدال الروتر...فقررت أن اقوم بذلك على طريقتي الخاصة
جمع المعلومات؟
أول شيء وبكل بساطة هو جمع أكبر عدد ممكن من المعلومات عن الروتر سوفت وهارد وهنا نستعين بصديقنا google
جمع المعلومات عبر telnet
الروتر يدعم خاصية TELNET لذا اتصلت بالروتر عبره باستعمال اي تطبيقة تدعم التالنات مثل برنامج putty
عنوان الروتر ان لم تغيره فهو 192.168.1.1
ندخل اسم المستعمل admin وكلمة السر
تظهر لنا عدة خيارات في الروتر نستعملها بادخال رقم من 1 الى 14
لتجاوز هذه الخيارات والدخول لشال "shell" لينيكس كامل يوفره الروتر عبر busybox يكفي ان نكتب الامر "sh"
تظهر لنا نافذة busybox للتحكم كليا في الروتر كنظام لينكس
نكتب امر "help" لنتعرف على قائمة الاوامر التي تدعمها نسخة busybox المنصبة في الروتر
نستعمل الأمر "cat" لنتعرف على معلومات مهمة تخص الروتر ومن هنا بعضها
المعالج
كود:
# cat /proc/cpuinfo
system type : F@ST2604
processor : 0
cpu model : BCM6348 V0.7
BogoMIPS : 254.77
wait instruction : no
microsecond timers : yes
tlb_entries : 32
extra interrupt vector : yes
hardware watchpoint : no
VCED exceptions : not available
VCEI exceptions : not available
كود:
# df
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/mtdblock0 3264 3264 0 100% /
tmpfs 320 244 76 76% /var
tmpfs 16 0 16 0% /mnt
كود:
# df
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/mtdblock0 3264 3264 0 100% /
tmpfs 320 244 76 76% /var
tmpfs 16 0 16 0% /mnt
# cat /proc/mtd
dev: size erasesize name
mtd0: 00321000 00001000 "Physically mapped flash"
# cat /proc/partitions
major minor #blocks name
31 0 3204 mtdblock0
# cat /proc/cmdline
root=31:0 ro noinitrd console=ttyS0,115200
# cat /proc/filesystems
nodev sysfs
nodev rootfs
nodev bdev
nodev proc
nodev sockfs
nodev tmpfs
nodev pipefs
squashfs
nodev ramfs
من خلال البحث تبين لنا انه يمكن ترقية الروتر عبر سرفر TFTP باستعمال الأمر "tftp" لذلك قمت بانشاء سرفر tftp على حاسوبي وعنوانه 192.168.1.2 وسميت السوفت soft.bin ثم جربت الترقية كما يلي
كود:
# tftp -g -t i -f soft.bin 192.168.1.2
kill process [pid: 188] [name: pvc2684d]...
kill process [pid: 610] [name: upnp]...
kill process [pid: 1125] [name: klogd]...
kill process [pid: 1128] [name: syslogd]...
kill process [pid: 1166] [name: pppd]...
Remaining modules:
ipt_string 1776 0 - Live 0xc010c000
ipt_REJECT 4544 0 - Live 0xc0110000
nat_cache 7856 0 - Live 0xc0058000
ip_conntrack 29296 1 nat_cache, Live 0xc005e000
ip_tables 14848 2 ipt_string,ipt_REJECT, Live 0xc000e000
wl 882672 0 - Live 0xc01b6000
bcm_enet 25856 0 - Live 0xc001b000
bcmprocfs 12320 0 - Live 0xc0016000
br2684 66080 4294967295 - Live 0xc0036000
blaa_dd 6880 0 - Live 0xc0013000
adsldd 168240 0 - Live 0xc006f000
atmapi 56000 3 br2684,blaa_dd,adsldd, Live 0xc0027000
Board Id OK.
Allocating 2424844 bytes for broadcom image.
Memory allocated
Total image size: 2424836
هذه الطريقة للترقية تعمل مع السوفت الاصلي ولا تقبل السوفتات الأخرى وهو يعني ان الحماية موجودة في مستوى النظام البدائي وليس فقط عند الترقية عبر متصفح واب
جمع المعلومات عبر تفكيك الروتر
بعد اكتشافنا لاستحالة استخراج السوفت عبر نظام اللينيكس المدمج انتقلنا للمرحلة الثانية هي تفكيك الروتر وفحص مكوناته
لتفكيك الروتر نحتاج فقط لمفك براغي
ننزع اولا الغشاء البلاستيكي ثم نفك الاربع براغي وننزع الغطاء الفوقي بسلاسة
الفحص بالعين المجردة يعطينا معلومات عن القطع الالكترونية المختلفة في الروتر ويأكد مثلا ما اكتشفناه في البدايو عبر النظام ان المعالج هو BCM6348
ربط الروتر بالحاسوب عبر السريال RS232
من يمتلك خبرة قليلة في عالم الاجهزة الرقمية يكتشف من الوهلة الاولى وجود اربع نقاط على اللوحة تمثل مخرح serie uart يمكننا من ربط الروتر بالحاسوب عبر منفذ rs232 والتحكم به عبر console
يمكن استعمال multimetre لاكتشاف ماهية كل نقطة وهي كما يلي
اكتشاف مخرج السريال كان ليمكننا حتما من اتسخراج السوفت الاصلي للروتر لكن اعترضني مشكل وهو ان هذا المخرج يعمل على 3.3 فولت والحال ان سريال الحواسيب يعمل على 12 فولت ، يعني ان الربط المباشر بالحاسوب سيترتب عنه فقدان الروتر نهائيا ويتطلب الامر استعمال قطعة الكترونية بين الروتر والحاسوب وهي rs232_ttl_3v3 او usb_ttl_3v3 لم اجدها في المحلات الالكترونية في تونس
ربط الروتر بالحاسوب عبر الجيتاغ JTAG
عند قلب اللوحة الام للروتر اكتشفت وجود 12 نقطة تمثل منفذ JTAG للتحكم في المعالج مباشرة واسدائه اوامر دون المرور باي سوفت وهي خاصية هامة جدا تدمج في الاجهزة الرقمية وتمكن من شحن الفلاشة ونستطيع من خلالها استعادة اجهزة لا تستجيب للترقية بالطرق العادية
ربط الروتر بالجيتاغ عكس السريال سيعطينا امكانيات كبيرة في التجارب لاننا سنستطيع استعادة الروتر حتى بعد مسح الفلاشة تماما في حين ان السريال يتطلب ان يكون بوتلودر bootloader الروتر سليما
لم يبقى الآن الا اكتشاف تخطيط الجيتاغ واثناء البحث تبين ان معالجات broadcom 63xx تدعم EJTAG لكن هذا الاخير يعمل على 14 نقطة في حين ان جيتاغ الروتر به 12 نقطة فقط لكن بمزيد البحث وعدة تجارب تمكنت من اكتشاف التخطيط المناسب وهو بارة على EJTAG منقوص ومن هنا تخطيطه
الجيتاغ يتطلب في الأصل قطعة الكترونية لربطه بالحاسوب لكن بعض احد الاخصائيين في عالم الالكترونيك تمكن منذ سنوات من استبدال تلك القطعة ببضعة مقاومات ويسمى unbaffered JTAG لكن هذا النوع من الجيتاغ يتطلب أن تكون الاسلاك قصيرة (15 صم كاقصى حد) ليعمل بكفائة
الجيتاغ يمكن صناعته بسهولة لتوفر كل المكونات في اي محل الكترونك باسعار زهيدة
الجيتاغ يربط بين الروتر والحاسوب عبر منفذ الطابعة LPT
الاحتياجات
4 مقاومات بقوة 100 اوم
هذه المقاومات متوفرة في اي محل الكترونيك وسعرها لا يتجاوز 100 مليم للواحدة
منفذ db25 ذكر
متوفر في كل محلات الالكترونيك ويمكن استعمال كابل طابعة قديمة لصناعة الجيتاغ
اسلاك كهربائية رقيقة
يحبذ استعمال اسلاك بالوان مختلفة أو nappe لسهولة التعرف على الاسلاك وللحفاض على تماسكها
مكوات مع رأس صغير ولحام
نقوم بصنع الجيتاغ حسب المخطط أعلاه ونلحمه باللوحة الام للروتر مهي عملية دقيقة تتطلب بعض الخبرة في الحام لان نقاط الحام متقاربة جدا لكن الامر ليس صعبا جدا
بالنسبة لحاسوبي المستعمل في هذا المشروع فان اللوحة الأم لا تتوفر على منفذ طابعة وهو الحال مع جل اللوجات الحديثة لأن الطابعات اصبحت تستعمل جلها منفذ USB لكن هذه اللوحة الأم بها مكان "embasse" لمن يريد استعمال منفذ الطابعة يتم ربطه عبر كابل
هذا الامر لا يصعب الامور بالنسبة لي بل على العكس فانه يمكنني من الاستغناء عن استعمال منفذ db25 وربط الجيتاغ باللوحة الام عبر nappe لقارء اقراص لينة
المهم في كل هذا الامر هو التأكد من الوصلات لمعرفة مكان كل سلك لذا قمت بتخطيط جديد يأخذ بعين الاعتبار خصوصيات حاسوبي
من ثم صنعت الجيتاغ وقمت بلحامه مع الروتر
ومن ثم ربطه مباشرة باللوحة الام للحاسوب
من بين الايجابيات الاخرى لهذا الجيتاغ الخاص هو انه يمكن تركه بصفة دائمة مع الروتر تحت الغطاء واخراجه عند الحاجة وهو ما يوفر علينا اعادة عملية اللحام في كل مرة
الأن وقد أصبح لينا جيتاغ يربط بين الحاسوب والروتر نمر لمحاولة الاتصال عبره وهنا يمكن استعمال عدة برمجيات مختصة مثل برمجية urjtag أو HairyDairyMaid_WRT54G_Debrick_Utility وهو ما استعلته لتوافقه مع عدة انظمة تشغيل كالويندوس و اللينيكس و الماك ولأنه صمم خصيصا للرواتر
استعملت البرنامج مع windows xp وهو يتطلب تنصيب تعريف giveio.sys
ثم نفتح نافذة cmd ودخل حيث وضعنا البرنامج wrt54g
نكتب الامر
كود:
wrt54g -probeonly
ثم نفتح الروتر من زر التشغيل وبعدها مباشرة نضغط على entrer لتفعيل الامر مباشرة مع اقلاع الروتر و قبل ان يشرع في شحن النظام
اذا كان كل شيء على ما يرام فمن المفترض ان تظهر في الشاشة معلومات الروتر كما يلي
ان ظهرت رسالة خطا فذلك يعني وجود خلل اما في اللحام أو في تخطيط ربط الاسلاك وقد يكون ذلك راجعا لأن الاسلاك طويلة اكثر من اللازم وعليك حينها التثبت لاصلاح الخلل والمحاولة ثانية لأن الامر نادرا ما ينجح من الوهلة الاولى
استخراج نسخة من فلاشة الروتر
الآن وقد اصبح لدينا وصلة جيتاغ شغالة بين الحاسوب والروتر ستقوم باستخراج dump او صورة مطابقة للاصل من فلاشة الروتر
لفعل ذلك نكتب هذا الأمر
كود:
wrt54g -backup:wholeflash
عند انتهاء العملية ستجد ملفا في نفس مجلد الجهاز
كود:
WHOLEFLASH.BIN.SAVED_yyyymmjj_xxxxxx
yyyymmjj : التاريخ
xxxxxx : رقم خاص بالبرنامج
البرنامج يتيح عدة خيارات أخرى مثل استخراج جزء فقط من الفلاشة وكذلك الكتابة فيها وكل شيء عن البرنامج موجود في الملف المرفق
استخراج السوفت الأصلي
الآن وقد اصبح لدينا نسخة من فلاشة الروتر أصبح بالامكان استخراج كل اجزاء السوفت المنصب في الروتر لان تخطيط الفلاشة مفتوح المصدر من شركة broadcom المصنعة للمعالج BCM6348 وتوجد معلومات ضافية في الانترنات سنتطرق لها لاحقا تمكننا من معرفة مكان كل جزء من السوفت في الفلاشة
لتبسيط الامر فان سوفت الروتر متكون من 3 أجزاء رئيسية
CFE
وهو برنامج اقلاع الروتر أو bootloader
KERNEL
هو نواة نظام تشغيل الجهاز لينيكس
FILESYSTEM
وهو عادة ملف مظغوط يحتوي على كل ملفات عمل الروتر من برامج وصور وصفحات واب...
سوفت الروتر يحتوي عادة على kernel و filesystem ونادرا على البوتلودر cfe لان اي خطا في تحديث الروتر بسوفت به cfe سيعطب الروتر ولا يمكن استرجاعه الا بالجيتاغ
اذا لم تنجح عملية ترقية الروتر بسوفت لا يحتوي على cfe فان هذا الاخبر به نظام استعادة يمكننا من خلاله استرجاع الروتر عبر طريقة بسيطة سنشرحها لاحقا
تحليل السوفت الاصلي والكشف عن الحماية
بعد استخراج السوفت الاصلي اصبح بالامكان مقارنته بتخطيط السوفت العام حسب شركة broadcom
عند تحليل السوفت الاصلي نلاحظ أن ال20 بايت التي في الصورة والتي هي sig_1 حسب تخطيط broadcom هي بصمة شركة توبنات
كود:
PAIL................
كود:
5041494C00000000000000000000000000000000
تعديل أي سوفت ليقبله الروتر
يعني بكل بساطة إذا أردنا ان يقبل روتر توبنات أي سوفت فعلينا تغيير هذه ال20 بايت المبينة أعلاه والخاصة ببصمة الشركة الداعمة ببصمة توبنات "PAIL" وانتهى !!!!
سوفتات جاهزة للتحميل
التحليل السابق موجه أساسا لهواة التعديلات وهو حصري لتونيزياسات وقد خيرنا طرحه للعموم عوضا عن احتكاره والنقل مسموح مع ذكر المصدر
التجربة تمت على الساجام 2604 الذي املكه ولكنها نفسها حتما للساجام 2404 و 2504 وربما ستصلح كذلك للساجام 1704
للمستعمل العادي نقدم لكم سوفتات جاهزة وقد تم نزع cfe من هذه السوفتات كاجراء حمائي ونقدمها لكم منفردة لمن يحتاجها
السوفت الاصلي للتوبنات
topnet2604_fs_kernel_3.21a4G.rar
سوفت بلانات معدل ليعمل على روتر التوبنات
topnet2604_to_planet2604_fs_kernel_3.49a4G_by_tunisia-sat.com.rar
هذا السوفت به خاصية IP MSAN
نسخة CFE خاصة بالساجام 2604 للتوبنات
cfe(fast2604_topnet).rar
انتاج سوفت معدل مع خاصيات جديدة
هناك تجارب جارية للتعديل على السوفتات الاصلية واضافة خاصيات جديدة وكان من المفروض ان لا انشر هذا الموضوع قبل انتهاء التجارب لكن في الاخير خيرت ان اشاطركم هذا المشروع ليتسنى لبقية الاعضاء استعمال نفس الطريقة على بقية الرواتر وسانشر السوفتات المعدلة حين انتهاء التجارب كما عودناكم في مشارعنا السابقة من التعديلات على اجهزة الالتقاط لتكون اعمالنا في مستوى حرفي وتقدم الاضافة للاعضاء
انتاج سوفت مفتوح المصدر من OPENWRT
مشروع openwrt هو من اشهر المشاريع مفتوحة المصدر للرواتير وان كان الساجام 2604 غير مدعوم رسميا حاليا الا اننا تمكنا بعد تعديلات على السورس من انجاز صورة تعمل لكنها بطيئة حاليا وتتطلب بعض التحسينات والتخفيف لأن فلاشة الساجام 2604 (4 ميغا) تعتبر ضعيفة نسبيا لتشغيل نظام openwrt كاملا
كذلك بالنسبة لهذا المشروع وعلى نفس المبدا سنصدر السوفتات حين نصل لحد أدنى من النجاعة
الخاتمة
هذا الموضوع ليس الا حجر الأساس للمشروع وهو ليس متكاملا وتبقى عدة امور تتطلب شرحا ادق وساحاول اضفائه بكل جديد كما انتظر من بقية اعضاء هذا المنتدى العريق والذين لهم خبرة في "التبريش" المساهمة فيه واثرائه