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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
DBShield — جدار ناري لقواعد البيانات مكتوب بلغة Go | Kitploit
أدوات/GitHubGitHub/nim4/dbshield
أدوات دفاعيةأمن الويبأمن قواعد البياناتكشف الشذوذ
GitHubnim4/dbshield

DBShield

جدار ناري لقواعد البيانات مكتوب بلغة Go

عرض المستودعالموقع الإلكتروني
684161منذ 8 سنواتتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

Linux Windows Go Report Card codecov Dev chat GoDoc MIT licensed

DBShield

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


كيف يعمل؟

على سبيل المثال، هذه هي الطريقة التي يتفاعل بها خادم الويب عادةً مع خادم قاعدة البيانات:

خادم ويب وقاعدة بيانات عينة

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

وضع التعلم

بعد جمع عدد كافٍ من الأنماط، يمكننا تشغيل DBShield في وضع الحماية. يمكن لوضع الحماية تمييز نمط الاستعلام غير الطبيعي والمستخدم والمصدر واتخاذ إجراء بناءً على التكوينات.

وضع الحماية


عرض توضيحي

للعرض التوضيحي، نستخدم sqlmap (أداة استغلال حقن SQL واستيلاء على قاعدة بيانات تلقائيًا) لاستغلال ثغرة حقن SQL في user.php

في السيناريو الأول، نجح sqlmap في استغلال حقن SQL عندما كان تطبيق الويب متصلاً مباشرة بقاعدة البيانات (MySQL). في السيناريو الثاني، قمنا بتعديل user.php بحيث يتوسط DBShield بين تطبيق الويب وقاعدة البيانات، مما يؤدي إلى إسقاط محاولة الحقن وجعل sqlmap يفشل.

عرض توضيحي

نماذج من المخرجات

CLI

root@kitploit:~
$ go run main.go
2016/10/15 16:25:31 [INFO]  Config file: /etc/dbshield.yml
2016/10/15 16:25:31 [INFO]  Internal DB: /tmp/model/10.0.0.21_postgres.db
2016/10/15 16:25:31 [INFO]  Listening: 0.0.0.0:5000
2016/10/15 16:25:31 [INFO]  Backend: postgres (10.0.0.21:5432)
2016/10/15 16:25:31 [INFO]  Protect: true
2016/10/15 16:25:31 [INFO]  Web interface on https://127.0.0.1:8070/
2016/10/15 16:25:33 [INFO]  Connected from: 10.0.0.20:35910
2016/10/15 16:25:33 [INFO]  Connected to: 10.0.0.21:5432
2016/10/15 16:25:33 [INFO]  SSL connection
2016/10/15 16:25:34 [DEBUG] Client handshake done
2016/10/15 16:25:34 [DEBUG] Server handshake done
2016/10/15 16:25:34 [INFO]  User: postgres
2016/10/15 16:25:34 [INFO]  Database: test
2016/10/15 16:25:34 [INFO]  Query: SELECT * FROM stocks where id=-1 or 1=1
2016/10/15 16:25:34 [WARN]  Pattern not found: [53 55 51 52 55 52 50 53 55 51 53 49 115 116 111 99 107 115 53 55 51 53 50 105 100 54 49 52 53 53 55 51 55 57 53 55 52 48 52 53 55 51 55 57 54 49 53 55 51 55 57] (SELECT * FROM stocks where id=-1 or 1=1)
2016/10/15 16:25:34 [WARN]  Dropping connection

واجهة الويب

واجهة الويب


التثبيت

احصل عليه

root@kitploit:~
$ go get -u github.com/nim4/DBShield

ثم يمكنك رؤية المساعدة باستخدام الوسيط "-h":

root@kitploit:~
$ $GOPATH/bin/DBShield -h
DBShield 1.0.0-beta3
Usage of DBShield:
  -a	get list of abnormal queries
  -c file
      config file (default "/etc/dbshield.yml")
  -h	show help
  -k	show parsed config and exit
  -l	get list of captured patterns
  -version
      show version

وقم بتشغيله مع التكوين الخاص بك، مثل:

root@kitploit:~
$ $GOPATH/bin/DBShield -c config.yml

انظر ملف التكوين النموذجي

⚠️ تحذير: لا تستخدم الشهادات الافتراضية في بيئات الإنتاج!


المدعوم:


المهام المستقبلية

(مرتبة حسب الأولوية)

  • تحسين التوثيق
  • إضافة Microsoft SQL Server
  • إضافة المزيد من وسائط سطر الأوامر
  • تحقيق تغطية اختبار 90%
  • دعم SSL لأوراكل
تنزيل الأداة
قاعدة البياناتحمايةSSL
DB2نعملا
MariaDBنعمنعم
MySQLنعمنعم
Oracleنعملا
Postgresنعمنعم