● مجتمع
blacktop
🔑 يتطلب مفتاحك
ipsw-skill
بواسطة blacktop · blacktop/ipsw-skill
قم بقيادة واجهة سطر الأوامر "ipsw" من وكيلك - تنزيل/استخراج IPSW، واختلافات kernelcache، وفرز Mach-O، ورؤوس ObjC ذات الإطار الخاص.
تقوم ipsw-skill بتعليم كلود (والوكلاء المتوافقين مثل Codex CLI / Gemini CLI) كيفية تشغيل ipsw الخاص بـ blacktop - وهو CLI للجيش السويسري لبرامج Apple الثابتة والتحليل الثنائي. فهو يعرف الأوامر الفرعية لتنزيل/استخراج IPSWs ومخابئ kernel، وتفريغ رؤوس Objective-C من الأطر الخاصة، وتمييز النوى عبر الإصدارات، ومراجعة الاستحقاقات، وفحص ثنائيات Mach-O. تستهدف الباحثين في مجال أمان نظام Apple الأساسي والمهندسين العكسيين والمهندسين الذين يقومون بتصحيح السلوك على مستوى إطار العمل.
لماذا تستخدمه
الميزات الأساسية
- تنزيل/استخراج IPSWs وkernelcaches
- Userspace RE: التفكيك، البحث عن الرمز، البحث عن السلسلة، العثور على xref
- تفريغ رؤوس Obj-C من الأطر الخاصة
- تحليل النواة وKEXT؛ اختلاف الإصدار
- الاستحقاقات وفحص Mach-O
عرض مباشر
كيف يبدو في الممارسة
حالات الاستخدام
استخدامات عملية: ipsw-skill
متى تستخدمه: تم إسقاط إصدار iOS جديد؛ تريد أن ترى ما تغير في النواة.
الخطوات
-
قم باستخراج كلا kernelcaches
قم باستخراج ذاكرة التخزين المؤقت kernelcache من IPSW A وIPSW B.✓ تم النسخ
→ ملفان kernelcache على القرص
-
فرق
قم بالتمييز بين مخزني النواة؛ قائمة الرموز المضافة/المحذوفة/المعدلة.✓ تم النسخ
→ تغيير القائمة مع فئات الرمز
النتيجة: سجل التغيير المركز للتغييرات على مستوى النواة.
المزالق
- التعامل مع إعادة ترتيب الرموز كتغيير ذي معنى — اسمح لمجموعة الأدوات بإعادة الترتيب مقابل الإضافات/الإزالة الحقيقية
متى تستخدمه: تريد التحقق من استحقاقات وواردات الملف الثنائي قبل شحنه مع تطبيقك.
الخطوات
-
فحص Mach-O
إظهار أوامر التحميل، LC_CODE_SIGNATURE، واستحقاقات <path>.✓ تم النسخ
→ قائمة الاستحقاقات + معلومات التوقيع
-
قائمة الواردات
قائمة الرموز المستوردة مجمعة حسب الإطار.✓ تم النسخ
→ مسح جدول الاستيراد
النتيجة: تقرير تدقيق موجز يمكنك حفظه في سلسلة المراجعة.
التركيبات
اجمعها مع خوادم MCP أخرى لتحقيق نتائج x10
قم بتسليم الوظائف التي تهم غيدرا لإجراء تحليل أعمق
من واردات Mach-O، اختر الوظيفة المشبوهة وافتحها في Ghidra.✓ تم النسخ
استخدم قواعد اللعبة RE الأوسع نطاقًا جنبًا إلى جنب مع أدوات ipsw الخاصة بشركة Apple
قم بدمج سير عمل RE العام مع ipsw لعمل ذاكرة التخزين المؤقت dyld.✓ تم النسخ
أنشئ تطبيقات محلية وتحقق من مطابقتها لملف تعريف الاستحقاقات الذي تتوقعه
بعد xcodebuild، قم بتشغيل استحقاقات ipsw على الأرشيف لتدقيق ما تم تسجيل الدخول إليه في النهاية.✓ تم النسخ
التكلفة والحدود
تكلفة التشغيل
- حصة API
- لا أحد
- الرموز لكل استدعاء
- يختلف الإخراج مع حجم القطعة الأثرية؛ أوامر النطاق بإحكام
- التكلفة المالية
- حر؛ التنزيلات تكلف عرض النطاق الترددي فقط
- نصيحة
- استخدم علامات التصفية الخاصة بـ ipsw حتى لا يقوم الوكيل بلصق 50 ميجابايت من الرموز في السياق.
الأمان
الصلاحيات والأسرار ونطاق الأثر
تخزين بيانات الاعتماد: لا شيء مطلوب للتشغيل الأساسي
نقل البيانات الخارجي: يقوم "تنزيل ipsw" بسحب IPSWs من خوادم Apple العامة. لا يوجد قياس إضافي عن بعد من المهارة نفسها.
- هذه المهارة مخصصة للبحث الدفاعي والتحليل الشخصي/المصرح به. احترم شروط خدمة Apple والقوانين المحلية المتعلقة بالهندسة العكسية.
- لا تقم أبدًا بتحليل البرامج الثابتة أو الثنائيات التي ليس لديك تصريح بدراستها.
- يمكن أن تتغير واجهات برمجة تطبيقات الإطار الخاص دون إشعار — لا تستخدم المحددات المكتشفة في تطبيقات App Store.
استكشاف الأخطاء
الأخطاء الشائعة وحلولها
ipsw: لم يتم العثور على الأمر
قم بتثبيت CLI عبر Homebrew Tap: Brew install blacktop/tap/ipsw.
تحقق: which ipsw
انتهت مهلة التنزيل
يمكن أن تكون خوادم Apple محددة للسعر؛ أعد المحاولة باستخدام --resume. تأكد من أن شبكتك تسمح بالتنزيلات الكبيرة.
تحقق: curl -I https://appldnld.apple.com/...
إرجاع تفريغ الفصل الدراسي فارغًا
تأكد من الإشارة إلى ذاكرة التخزين المؤقت المشتركة للجهاز/القوس الصحيح. تكون ذاكرة التخزين المؤقت للمحاكاة منفصلة عن ذاكرة التخزين المؤقت الخاصة بالجهاز.
تحقق: ipsw dyld info <cache>
البدائل
ipsw-skill مقابل البدائل
| البديل | متى تستخدمها | المقايضة |
| ghidrassistmcp | تريد التفكيك الكامل والبرمجة النصية عبر غيدرا | أثقل بكثير؛ بدء تشغيل أبطأ |
| ida-pro-mcp | لقد قمت بالفعل بترخيص IDA Pro وتريد تكامل MCP | أداة تجارية |
| reverse-engineering-assistant | تريد مساعدًا أوسع لسير عمل RE | ليست خاصة بآبل |