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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
hibernate-orm — CVE-2019-14900 | Kitploit
أدوات/GitHubGitHub/shanika04/hibernate-orm
أدوات عامةتحليل الثغرات الأمنيةتحليل الكودأمن قواعد البيانات
GitHubshanika04/hibernate-orm

hibernate-orm

CVE-2019-14900

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

الأكثر شعبية

عرض الكل →

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

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

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

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

Hibernate ORM هي مكتبة توفر دعمًا لرسم الخرائط الكائني/العلائقي (ORM) للتطبيقات والمكتبات والأطر البرمجية.

كما توفر تنفيذًا لمواصفة JPA، وهي المواصفة القياسية لجافا الخاصة بـ ORM.

هذا هو مستودع شيفرتها المصدرية: راجع Hibernate.org للحصول على معلومات إضافية.

Build Status Language grade: Java

البناء من المصادر

يتطلب البناء توفّر JDK لجافا 8 في JAVA_HOME.

ستحتاج إلى Git للحصول على المصدر.

تستخدم Hibernate Gradle كأداة بناء. راجع قسم مدخل إلى Gradle أدناه إذا كنت جديدًا على Gradle.

يجب على المساهمين قراءة دليل المساهمة.

راجع الأدلة الخاصة بإعداد IntelliJ أو Eclipse كبيئة تطوير لك.

اطّلع على قسم البدء في CONTRIBUTING.md لبدء العمل على الشيفرة المصدرية لـ Hibernate.

التكامل المستمر

تستخدم Hibernate Jenkins لتلبية احتياجاتها من التكامل المستمر (CI). يُبنى المشروع باستمرار مع كل عملية دفع إلى المستودع الرئيسي. بشكل عام، هناك عدد من الوظائف المختلفة، يمكن الاطلاع على جميعها في http://ci.hibernate.org/view/ORM/

مدخل إلى Gradle

يصف هذا القسم بعض الأساسيات التي قد يحتاج المطورون والمساهمون الجدد في Gradle إلى معرفتها ليصبحوا منتجين بسرعة. توثيق Gradle مُتقن جدًا؛ وهناك وثيقتان على وجه الخصوص لا غنى عنهما:

  • دليل مستخدم Gradle هو دليل مستخدم نموذجي من حيث أنه يتبع نهجًا موضوعيًا لوصف جميع إمكانيات Gradle.
  • دليل Gradle DSL فريد وممتاز في اكتساب الإلمام السريع بجوانب معينة من Gradle.

استخدام غلاف Gradle

للمساهمين الذين لا يستخدمون Gradle في الأساس ولا يريدون تثبيته، يقدم Gradle ميزة رائعة تسمى الغلاف (Wrapper). تتيح لك تشغيل عمليات بناء Gradle دون توزيعة Gradle مثبتة مسبقًا وبطريقة لا تتطلب أي إعدادات (zero-conf). تقوم Hibernate بإعداد غلاف Gradle نيابةً عنك. إذا كنت تفضل استخدام الغلاف وعدم تثبيت Gradle (أو لضمان استخدام إصدار Gradle المخصص للبناءات الأقدم)، فما عليك سوى استخدام الأمر gradlew (أو gradlew.bat) بدلاً من gradle (أو gradle.bat) في المناقشات التالية. لاحظ أن gradlew متاح فقط في الدليل الجذر للمشروع، لذا اعتمادًا على دليل العمل الخاص بك قد تحتاج إلى تعديل المسار إلى gradlew أيضًا.

تستخدم الأمثلة صيغة gradle، ولكن ما عليك سوى استبدال gradle بـ gradlew (بمسار نسبي صحيح) إذا كنت ترغب في استخدام الغلاف.

سبب آخر لاستخدام gradlew هو أنه يستخدم الإصدار المحدد من Gradle الذي صُمم البناء ليعمل به.

تنفيذ المهام

يستخدم Gradle مفهوم مهام البناء (المكافئة لأهداف Ant أو مراحل/أهداف Maven). يمكنك الحصول على قائمة بالمهام المتاحة عبر

root@kitploit:~
gradle tasks

لتنفيذ مهمة عبر جميع الوحدات، ما عليك سوى تنفيذ تلك المهمة من الدليل الجذر. سيزور Gradle كل مشروع فرعي وينفذ تلك المهمة إذا كان المشروع الفرعي يعرّفها. لتنفيذ مهمة في وحدة معينة يمكنك إما:

  1. استخدام cd للانتقال إلى دليل تلك الوحدة وتنفيذ المهمة
  2. تسمية «مسار المهمة». على سبيل المثال، لتشغيل اختبارات وحدة hibernate-core من الدليل الجذر يمكنك كتابة gradle hibernate-core:test

المهام الشائعة المتعلقة بجافا

  • build - يجمع المشروع (jar) ويختبره
  • buildDependents - يجمع ويختبر هذا المشروع وكل المشاريع التي تعتمد عليه. لذا، إذا قمت بتشغيل هذا في hibernate-core، فسيقوم Gradle بجمع واختبار hibernate-core وكذلك hibernate-envers (لأن envers يعتمد على core)
  • classes - يصرّف الفئات الرئيسية
  • testClasses - يصرّف فئات الاختبار
  • compile (إضافة Hibernate) - ينفذ جميع مهام التصريف بما في ذلك تجهيز الموارد من main و test معًا
  • jar - يُنشئ أرشيف jar يحتوي على جميع الفئات المصرّفة
  • test - يشغّل الاختبارات
  • publish - بمثابة Maven deploy
  • publishToMavenLocal - يثبّت jar المشروع في ذاكرة التخزين المؤقت المحلية لـ Maven (وتُعرف أيضًا بـ ~/.m2/repository). لاحظ أن Gradle لا يستخدم هذا أبدًا، لكنه قد يكون مفيدًا لاختبار البناء الخاص بك مع بناءات محلية أخرى قائمة على Maven.
  • eclipse - يُنشئ مشروع Eclipse
  • idea - يُنشئ مشروع IntelliJ/IDEA (على الرغم من أن النهج المفضل هو استخدام استيراد Gradle الخاص بـ IntelliJ).
  • clean - ينظف دليل البناء

الاختبار وقواعد البيانات

يمكن إجراء الاختبار على قاعدة بيانات محددة بطريقتين مختلفتين:

استخدام «المكوّن الإضافي لاختبار المصفوفات» (Matrix Testing Plugin) الخاص بـ Gradle.

قريبًا...

استخدام «الملفات التعريفية» (profiles)

يعرّف بناء Hibernate عدة «ملفات تعريفية» (profiles) لاختبار قواعد البيانات في databases.gradle. هذه الملفات التعريفية يمكن تنشيطها بالاسم باستخدام خاصية البناء db، والتي يمكن تمريرها إما كخاصية نظام JVM (-D) أو كخاصية مشروع Gradle (-P). الأمثلة أدناه تستخدم نهج خاصية مشروع Gradle.

root@kitploit:~
gradle clean build -Pdb=pgsql

لتشغيل اختبار من بيئة التطوير المتكاملة (IDE)، يجب التأكد من حدوث توسعات الخصائص. استخدم الأمر التالي:

root@kitploit:~
gradle clean compile -Pdb=pgsql

ملاحظة: إذا كنت تشغّل اختبارات ضد برنامج تشغيل JDBC غير متوفر عبر Maven central، فتأكد من إضافة هذه البرامج إلى ذاكرة التخزين المؤقت لمستودع Maven المحلي (~/.m2/repository) أو (الأفضل) إضافته إلى خادم مستودع Maven شخصي

تشغيل اختبارات خاصة بقاعدة بيانات معينة من IDE باستخدام «الملفات التعريفية» (profiles)

يمكنك تشغيل أي اختبار على أي قاعدة بيانات معينة تم تكوينها في ملف تعريفي databases.gradle.

كل ما عليك فعله هو تشغيل الأمر التالي:

root@kitploit:~
gradlew setDataBase -Pdb=pgsql

أو يمكنك استخدام النسخة المختصرة:

root@kitploit:~
gradlew sDB -Pdb=pgsql

يمكنك القيام بذلك من الوحدة التي تهتم باختبارها أو من المجلد الجذر hibernate-orm.

بعد ذلك، ما عليك سوى اختيار أي اختبار من IDE وتشغيله كالمعتاد. ستختار Hibernate تكوين قاعدة البيانات من ملف hibernate.properties الذي تم إعداده بواسطة مهمة Gradle setDataBase.

تنزيل الأداة