المخاطر الأمنية المحتملة في المدونات مفتوحة المصدر: كيفية حماية المعلومات الشخصية من التسريب

نظرة عامة

تُعد صفحات GitHub منصة مجانية لاستضافة المدونات مفتوحة المصدر، وتُستخدم على نطاق واسع نظرًا لسهولتها ومجانيتها. ومع ذلك، تتطلب النسخة المجانية من هذه الخدمة أن يكون المستودع علنيًا لتقديم خدمة الوصول العلني، وهذه الخاصية قد تؤدي إلى مخاطر تسريب معلومات غير متوقعة.

حتى لو لم يحتوِ محتوى المقال على معلومات حساسة، فقد يُسرب مستودع مصدر الكود الخاص بالمدونة دون قصد معلومات خاصة بالمستخدم. تناقش هذه المقالة هذه المخاطر المحتملة وتوفر حلولًا عملية.

🔍 أنواع التسريبات الشائعة

كلمات صينية حساسة

الكلمات الصينية التالية قد تحتوي على معلومات شخصية حساسة، ويُنصح بالتحقق منها قبل إرسال الكود:

  • 密码 (كلمة المرور)
  • 账号 (رقم الحساب)
  • 身份证 (بطاقة الهوية)
  • 银行卡 (بطاقة بنكية)
  • 支付宝 (Alipay)
  • 微信 (WeChat)
  • 手机号 (رقم الهاتف المحمول)
  • 家庭住址 (عنوان المنزل)
  • 工作单位 (مكان العمل)
  • 社保卡 (بطاقة الضمان الاجتماعي)
  • 驾驶证 (رخصة القيادة)
  • 护照 (جواز السفر)
  • 信用卡 (بطاقة الائتمان)

كلمات إنجليزية رئيسية

يجب الانتباه بعناية للكلمات الإنجليزية التالية في البيئة النصية:

  • username
  • password
  • account
  • key
  • ini
  • credential
  • card
  • bank
  • alipay
  • wechat
  • passport
  • id
  • phone
  • address
  • company

استخدام التعبيرات العادية لاكتشافها

يمكن استخدام التعبير العادي التالي لمسح المستودع بحثًا عن معلومات حساسة محتملة:

(密码|账号|身份证|银行卡|支付宝|微信|手机号|家庭住址|工作单位|社保卡|驾驶证|护照|信用卡|username|password|passwd|account|key\s*:|\.ini|credential|card|bank|alipay|wechat|passport|id\s*:|phone|address|company)

مسح في VSCode

إذا كنت تستخدم VSCode كمحرر مدونة، يمكنك اتباع الخطوات التالية لمسح شامل للمعلومات الحساسة:

  1. افتح VSCode
  2. استخدم اختصار لوحة المفاتيح Ctrl+Shift+F (Windows/Linux) أو Cmd+Shift+F (Mac) لفتح البحث الشامل
  3. أدخل التعبير العادي أعلاه في مربع البحث
  4. فعّل وضع التعبير العادي (انقر على أيقونة .* بجانب مربع البحث)
  5. انقر فوق “بحث”، وتحقق من النتائج لمعرفة المعلومات الحساسة المحتملة

مثال مسح التعبير العادي في VSCode

🕰️ تسريب المعلومات في سجل Git

قد يحتوي سجل إصدارات Git على معلومات حساسة من ملفات تم حذفها. حتى لو لم يكن الكود الحالي يحتوي على معلومات حساسة، فإن الإرسالات السابقة قد لا تزال تحتفظ بهذه المعلومات.

مسح سجل Git

يمكنك مسح إرسالات المدونة السابقة للتحقق من وجود تسريب معلومات باستخدام نص بسيط.

تنظيف سجل Git

إذا تأكدت من ضرورة تنظيف المعلومات الحساسة من سجل Git، يمكنك استخدام الطريقة التالية:

⚠️ تنبيه هام: يؤدي تنفيذ الأوامر التالية إلى حذف سجل Git بشكل دائم، يُرجى التأكد من عمل نسخة احتياطية للبيانات المهمة، وتأكد من فهمك التام لمعنى هذه الأوامر.

# إعادة التعيين للإرسال الأول (مع الاحتفاظ بتغييرات منطقة العمل)
git reset --soft ${first-commit}

# دفع إجباري إلى المستودع البعيد
git push -f

ملاحظة: إذا كنت بحاجة للحفاظ على سجل الإرسال الكامل، لا تستخدم الطريقة أعلاه.

🛠️ أدوات مسح احترافية موصى بها

بالإضافة إلى الفحص اليدوي، يمكنك استخدام أدوات احترافية لمسح أكثر شمولاً:

TruffleHog

TruffleHog أداة قوية لاكتشاف، التحقق من، وتحليل بيانات الاعتماد المسربة.

شعار TruffleHog

الميزات:

  • عدد نجوم GitHub: 17.2k
  • عدد Forks: 1.7k
  • يدعم طرق مسح متعددة
  • يمكنه اكتشاف معلومات حساسة مدمجة بعمق

🔒 حلول بديلة لنشر مدونة آمنة

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

1. استخدام GitHub Pro

  • يدعم GitHub Pro نشر صفحات من مستودع خاص
  • التكلفة: حوالي 4 دولارات أمريكية شهريًا
  • المزايا: الحفاظ على خصوصية الكود المصدري، مع الاستمتاع بسهولة Pages من GitHub

2. استخدام Cloudflare Pages

  • إعداد المستودع كخاص
  • نشر من خلال Cloudflare Pages
  • المزايا: مجاني بالكامل، يدعم المستودعات الخاصة

3. استراتيجية مستودعين

  • مستودع خاص: لتخزين المقالات والمسودات قيد التعديل
  • مستودع علني: لتخزين المقالات المنشورة فقط
  • المزايا: حماية أقصى للمسودات والمحتوى غير المنشور
  • ملاحظة: إذا كنت تستخدم أنظمة تعليقات تعتمد على GitHub مثل giscus، فستظل بحاجة إلى مستودع علني

📝 أفضل الممارسات المقترحة

  1. مراجعة دورية: قم بمسح المستودع بانتظام باستخدام أدوات المسح لاكتشاف المعلومات الحساسة
  2. التحقق قبل الإرسال: تحقق قبل كل إرسال من عدم احتواء الكود على معلومات حساسة
  3. استخدام .gitignore: قم بتكوين ملف .gitignore بشكل صحيح، لاستبعاد الملفات الحساسة
  4. متغيرات البيئة: احفظ الإعدادات الحساسة في متغيرات البيئة، وليس في مستودع الكود
  5. إدارة المسودات: فكّر في استخدام نظام مسودات متخصص لتجنب إرسال المسودات بالخطأ

🎯 ملخص

على الرغم من أن المدونة مفتوحة المصدر مريحة، إلا أنها بالفعل تنطوي على مخاطر تسريب المعلومات. من خلال استخدام الأدوات والأساليب المناسبة، يمكننا تقليل هذه المخاطر بفعالية. اختيار منصة النشر والاستراتيجية المناسبة، يمكننا الاستمتاع براحة المصدر المفتوح مع حماية خصوصيتنا الشخصية.

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

مصادر مرجعية