Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
BlockChainConstruction — بناء أمان بلوكتشين | Kitploit
أدوات/GitHubGitHub/al1ex/blockchainconstruction
تحليل الثغرات الأمنيةتحليل الكودأمن الشبكاتالتشفيرالتعلم والتعليمموارد منسقة
GitHubal1ex/blockchainconstruction

BlockChainConstruction

بناء أمان بلوكتشين

عرض المستودع
31منذ 5 سنواتلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

مقدمة

في هذه المقالة، نقدم بشكل رئيسي عدة جوانب من تدقيق السلسلة العامة تستحق الاهتمام. بالنسبة لمدققي الأمن ومطوري السلسلة العامة، يعد هذا مشروعًا جديرًا بالمرجعية والتفكير.

البنية

قبل تقديم بناء نظام السلسلة العامة، دعنا نلقي نظرة على بنية blockchain:

عصر Blockchain 1.0:

البنية: كما هو موضح في الشكل أدناه

المنتجات الممثلة: bitcoin، reborn coin، dogcoin، Leyte coin، MasterCard coin، إلخ

blockchain

عصر Blockchain 2.0:

البنية: كما هو موضح في الشكل أدناه

المنتجات الممثلة: Ethereum، lisk، hyperledger، إلخ

التغييرات الرئيسية:

  • طبقة التطبيق: إضافة العقد الذكي
  • طبقة التحفيز: تقصير زمن الكتلة إلى 16 ثانية
  • طبقة الإجماع: إضافة dpos وPOS وpbft
  • طبقة البيانات: توسيع الكتلة، ودعم إرسال البيانات والمتغيرات، واستخدام خوارزمية تشفير محسّنة وشجرة Merkle

blockchain

عصر Blockchain 2.0

البنية: كما هو موضح في الشكل أدناه

المنتجات الممثلة: EOS، VaR، AE، ash، ELA، dfinity

التغييرات الرئيسية: يمكن لسيناريوهات تطبيق blockchain في جميع مناحي الحياة خارج الصناعة المالية تلبية منطق أعمال أكثر تعقيدًا

blockchain

البناء الأمني

بعد ذلك، سنقدم مقدمة موجزة عن المشكلات الجديرة بالاهتمام في البناء الأمني للسلسلة العامة وفقًا لبنية blockchain. حوالي 75% من المشكلات تسببت في مشكلات أمنية للسلسلة العامة، وهي أيضًا بعض النقاط الجديرة بالاهتمام في تدقيق أمن السلسلة العامة. هنا، نقدمها في شكل أسئلة لإثارة تفكيرنا. إذا كنت ترغب في مزيد من النقاش، يمكنك القيام بذلك مباشرة في issue:

طبقة البيانات

طبقة البيانات هي تقنية الطبقة السفلية، وتتمثل وظائفها الرئيسية في تخزين البيانات وتنفيذ الحسابات والمعاملات والأمان. يعتمد تخزين البيانات بشكل أساسي على شجرة Merkle، والتي تتحقق من خلال بنية الكتلة والسلسلة. معظمها يتم تخزينه بشكل دائم عبر قاعدة بيانات kV، مثل bitcoin وleveldb المعتمدين من Ethereum.

تستحق طبقة البيانات التفكير في النقاط التالية:

  1. هل تصميم بنية بيانات كتلة السلسلة العامة معقول؟
  2. هل تفي خوارزمية تشفير السلسلة العامة بمتطلبات التشفير؟
  3. هل تصميم شجرة Merkle معقول؟
  4. هل تصميم CRUD لعقد شجرة Merkle معقول؟
  5. هل تصميم منطق التحقق من الطابع الزمني لكتلة السلسلة العامة معقول؟
  6. أمان تخزين بيانات قاعدة بيانات السلسلة العامة وعمليات CURD على البيانات؟
  7. هل خوارزمية توليد المفتاح العام/عبارة الاستعادة آمنة بما يكفي؟
  8. هل المفتاح العام/عبارة الاستعادة مشفرة؟
  9. هل هناك أي إساءة استخدام/بقايا ذاكرة في المفتاح العام/عبارة الاستعادة؟

طبقة الشبكة

الغرض الرئيسي من طبقة الشبكة هو تحقيق التفاعل المعلوماتي بين عقد شبكة blockchain. جوهر blockchain هو شبكة نظير إلى نظير (P2P). يمكن لكل عقدة استلام المعلومات وإنتاج المعلومات أيضًا. تحافظ العقد على التواصل من خلال الحفاظ على blockchain مشتركة. في شبكة blockchain، يمكن لكل عقدة إنشاء كتلة جديدة. بعد إنشاء الكتلة الجديدة، سيتم إخطار العقد الأخرى عبر البث. بدورها، ستتحقق العقد الأخرى من العقدة. عندما يجتاز أكثر من 51% من المستخدمين في شبكة blockchain التحقق، ستتم إضافة الكتلة الجديدة إلى السلسلة الرئيسية.

هناك عدة نقاط جديرة بالتفكير في طبقة الشبكة:

  1. هل تصميم خوارزمية اكتشاف العقد في السلسلة العامة معقول؟

  2. هل تصميم عقد السلسلة العامة معقول؟

  3. هل تصميم آلية العقوبة معقول؟

  4. هل تصميم بروتوكول الاتصال معقول؟

  5. هل تصميم معالجة الطلبات لعقد السلسلة العامة معقول؟

  6. هل يوجد حد لحجم حزمة معالجة الطلبات؟

  7. هل تصميم آلية اتصال المعاملات للسلسلة العامة معقول؟

  8. هل آلية مزامنة بيانات الكتلة معقولة؟

  9. هل التصميم المنطقي لمعالجة المعاملات معقول؟

طبقة الإجماع

تمكّن طبقة الإجماع العقد شديدة التشتت من التوصل إلى توافق حول فعالية بيانات الكتلة في نظام لامركزي. يحتاج كل blockchain قيد التشغيل إلى خوارزمية إجماع لضمان فعالية وترتيب إخراج الكتل. تشمل خوارزميات الإجماع الشائعة pow وPOS وdpos وPoa وPOC وغيرها.

على مستوى الإجماع، يجب أن نأخذ في الاعتبار النقاط التالية:

  1. هل تصميم خوارزمية إجماع السلسلة العامة آمن؟

  2. هل تصميم التحقق من إجماع السلسلة العامة معقول؟

  3. هل تصميم مصادرة إجماع السلسلة العامة معقول؟

  4. هل تصميم رسوم خدمة السلسلة العامة معقول؟

  5. هل تصميم التعدين للسلسلة العامة معقول؟

  6. هل تصميم الضبط الديناميكي لصعوبة الكتلة معقول؟

  7. هل التصميم المنطقي لفحص صعوبة الكتلة معقول؟

  8. تصميم إعادة تنظيم السلسلة، وإعادة تعيين السلسلة، وتشعب السلسلة، وما إلى ذلك؟

طبقة التحفيز

الغرض من طبقة التحفيز في السلسلة العامة هو توفير تدابير تحفيزية معينة لتشجيع العقد على المشاركة في التحقق الأمني لـ blockchain، وضمان التوازن والتطور الصحي لبيئة blockchain. في السلسلة العامة اللامركزية، من الضروري إعداد آلية التحفيز المقابلة لتشجيع عقد المحاسبة المشاركة الملتزمة بالقواعد، وإنشاء آلية العقاب لمعاقبة عقد المحاسبة المشاركة غير الملتزمة بالقواعد. تقدم طبقة تحفيز blockchain عوامل اقتصادية إلى نظام تكنولوجيا blockchain، مما يحسن كفاءة التعاون التنظيمي وتبادل القيمة داخل البيئة. آلية تحفيز السلسلة العامة هي آلية مهمة لضمان التطور الإيجابي لـ blockchain.

هناك عدة نقاط جديرة باهتمامنا حول مستوى التحفيز:

  1. هل تصميم آلية إصدار السلسلة العامة معقول؟

  2. هل تصميم آلية العقاب في السلسلة العامة معقول؟

طبقة العقود

تغلف طبقة العقود أنواعًا مختلفة من أكواد البرامج النصية والخوارزميات لنظام blockchain، بالإضافة إلى العقود الذكية الأكثر تعقيدًا الناتجة عنها. إذا كانت المستويات الثلاثة للبيانات والشبكة والإجماع، باعتبارها "الآلة الافتراضية" الأساسية لـ blockchain، تتولى على التوالي وظائف تمثيل البيانات ونشر البيانات والتحقق من البيانات، فإن طبقة العقود هي منطق الأعمال والخوارزميات المستندة إلى الآلة الافتراضية لـ blockchain، وهي الأساس لتحقيق البرمجة المرنة وتشغيل البيانات لنظام blockchain. تستخدم معظم العملات الرقمية المشفرة، بما في ذلك bitcoin، أكواد برامج نصية بسيطة غير مكتملة تورينج لبرمجة عملية المعاملات والتحكم فيها، وهو أيضًا الشكل الأولي للعقد الذكي. مع تطور التكنولوجيا، ظهرت لغات برمجة نصية مكتملة تورينج مثل Ethereum يمكنها تحقيق عقود ذكية أكثر تعقيدًا ومرونة، ويمكن لـ blockchain دعم العديد من تطبيقات الأنظمة المالية والاجتماعية الكلية.

يجب أن نأخذ في الاعتبار النقاط التالية حول طبقة العقود:

  1. تصميم أمان الآلة الافتراضية للعقود؟

  2. نشر/تنفيذ/واجهة العقود؟

  3. الأمان المتعلق بالعقد الذكي؟

طبقة التطبيق

تغلف طبقة التطبيق سيناريوهات وحالات تطبيق متنوعة لـ blockchain، وهي مشابهة لمختلف البرامج في أجهزة الكمبيوتر. إنها منتج يمكن للمستخدمين العاديين استخدامه مباشرة حقًا، ويمكن أيضًا فهمها كمتصفح لمنتجات بنية B/S.

يجب أن نأخذ في الاعتبار النقاط التالية حول طبقة التطبيق (السلسلة العامة فقط، وليس تطبيق المحفظة/Exchange/DEFI، وما إلى ذلك):

المتعلق بالحساب

  1. تصميم منطق CRUD لحساب المحفظة؟

  2. التحقق من أذونات استيراد وتصدير المحفظة؟

  3. تصميم تعقيد كلمة مرور المحفظة؟

  4. التحقق من صحة عنوان حساب المحفظة؟

المتعلق بـ RPC

  1. هل تحتاج واجهة RPC العامة إلى شبكة عامة خارجية؟

  2. هل صلاحيات واجهة RPC للسلسلة العامة مقسمة بوضوح؟

  3. هل تحتوي واجهة RPC العامة على عمليات من الفئة الحساسة؟

  4. هل تتعامل واجهة RPC العامة مع الاستثناءات؟

  5. الحد الأقصى لمعالجة البيانات لواجهة RPC للسلسلة العامة؟

  6. ترميز وفك ترميز بيانات طلبات واجهة RPC للسلسلة العامة؟

  7. هل SSL مفعل لمعالجة طلبات RPC للسلسلة العامة؟

المتعلق بالتزامن

  1. تصميم معالجة الطلبات عالية التزامن في السلسلة العامة؟

  2. تعيين الحد الأقصى لعدد الاتصالات؟

  3. هل تسمح واجهة Web UI للسلسلة العامة بالوصول عن بُعد؟

  4. هل توجد ثغرة من فئة الويب في واجهة webui للسلسلة العامة؟

  5. هل تسمح واجهة webui للسلسلة العامة بتخزين معلومات كلمة المرور محليًا؟

طبقة الكود

صحيح أنه لا توجد "طبقة كود" في السلسلة العامة. هنا، يقترحها المؤلف بشكل أساسي لتصنيف المشكلات التي قد يلزم أخذها في الاعتبار أثناء عملية تطوير السلسلة العامة:

  1. خصائص لغة تطوير السلسلة العامة، مثل readall()، وميزات الإلحاق في قراءة بيانات لغة go

  2. إصدار لغة تطوير السلسلة العامة، على سبيل المثال، بعض إصدارات لغة go بها تنفيذ أوامر عن بُعد

  3. ترميز مواصفات تطوير السلسلة العامة، مثل المؤشر الفارغ، والتقسيم، ومعالجة الاستثناءات وغيرها من العمليات

  4. معالجة التشفير وفك التشفير في السلسلة العامة، مثل الترميز وفك الترميز عالي التعقيد دون فحص الطول

  5. معالجة تحويل أنواع البيانات، مثل hextobyte، وinteger. Parseint()، وما إلى ذلك

  6. تصميم منطق الأعمال الأساسي، على سبيل الم

بنود أخرى

بالإضافة إلى المشكلات المذكورة أعلاه الجديرة بالاهتمام على مستوى بنية blockchain، نحتاج أيضًا إلى النظر في مشكلات الأمان التالية:

أمان العقدة

  1. هل تخزين البيانات مشفر؟

  2. هل صلاحيات الملفات معقولة؟

  3. هل بيئة التشغيل آمنة؟

  4. هل العقدة غير مُشغَّلة بصلاحيات root؟

  5. هل توجد خدمة ويب قابلة للاستغلال في جانب العقدة؟

  6. هل يوجد أي تكوين غير آمن على جانب الخادم للعقدة؟

  7. هل توجد ثغرة وصول غير مصرح به على جانب الخادم للعقدة؟

  8. هل تم تسريب كلمة مرور حساب SSH على جانب الخادم للعقدة؟

هجوم قوة الحوسبة

  1. هجوم 51%

  2. التشعب الصلب للسلسلة العامة

  3. اختطاف الحوسبة (الديدان تصيب أجهزة التعدين)

مكتبات الطرف الثالث

هل يتم استخدام مكتبات الطرف الثالث التي تحتوي على ثغرات، مثل Jackson databind وfastjson وما إلى ذلك؟

البرمجيات الوسيطة

استخدام برمجيات وسيطة قابلة للاستغلال، مثل الإصدارات الأقل من tendermint

متطلبات السلسلة المتقاطعة

  1. هل وضع السلسلة المتقاطعة موثوق ومناسب؟

  2. مخطط تنفيذ السلسلة المتقاطعة المتشابهة & السلسلة المتقاطعة غير المتجانسة؟

  3. تكرار مشكلات الأمان في القسم أعلاه

الصيانة

  • Al1ex@Heptagram

المناقشة

شارك مباشرة في مناقشة المشكلات ذات الصلة في issue

تنزيل الأداة