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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CorruptQueryAccessWorkaround — أحدث حل بديل لخطأ "Query is corrupt" الذي ظهر مع CVE-2019-1402 | Kitploit
أدوات/GitHubGitHub/lauxjpn/corruptqueryaccessworkaround
أدوات عامةتحليل الثغرات الأمنيةتحليل الكودسوء التكوينأمن قواعد البيانات
GitHublauxjpn/corruptqueryaccessworkaround

CorruptQueryAccessWorkaround

أحدث حل بديل لخطأ "Query is corrupt" الذي ظهر مع CVE-2019-1402

عرض المستودع

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
مشاركة
31منذ 6 سنواتلم تتم المراجعة بعد

CorruptQueryAccessWorkaround: الاستعلام '' تالف

أحدث حل بديل لخطأ الاستعلام تالف الذي تم تقديمه مع CVE-2019-1402 في MS Access.

توجد حلول بديلة أخرى يجب تطبيقها على مستوى إداري، على سبيل المثال عن طريق إلغاء تثبيت التحديث الخاطئ. على عكس تلك، فإن الهدف من الحل المقدم هنا هو العمل عن طريق تعديل محتوى MDB/ACCDB نفسه تلقائيًا بأقل جهد ممكن.

ملاحظة

أصدرت Microsoft إصلاحًا لهذه المشكلة في 2019-12-10 (يوم التحديثات) والذي سيتم تثبيته تلقائيًا افتراضيًا عبر WSUS وما إلى ذلك. لذلك، يجب أن يصبح هذا الحل البديل قديمًا بعد تطبيق الإصلاح، ويمكن لأي شخص استخدمه استدعاء الدالة RemoveWorkaroundForCorruptedQueryIssue() لاستعادة حالة التطبيق الأصلية.

التعليمات

تأكد من تمكين مرجع إما Microsoft DAO 3.6 Object Library (التوافق مع الإصدارات السابقة) أو Microsoft Office x.x Access Database Engine Object Library ضمن VBA Editor -> Tools -> References (انظر #1 لمزيد من التفاصيل).

استخدم الوحدة basWorkaround.bas لتنفيذ الحل البديل المقترح من Microsoft تلقائيًا (باستخدام استعلام بدلاً من جدول). كإجراء احترازي، قم بعمل نسخة احتياطية من قاعدة البيانات أولاً.

استدعِ AddWorkaroundForCorruptedQueryIssue() لتطبيق الحل البديل وRemoveWorkaroundForCorruptedQueryIssue() لإزالته في أي وقت.

ستضيف الدالة AddWorkaroundForCorruptedQueryIssue() اللاحقة _Table إلى جميع الجداول غير النظامية، على سبيل المثال سيتم إعادة تسمية الجدول IceCreams إلى IceCreams_Table.

ستقوم أيضًا بإنشاء استعلام جديد باسم الجدول الأصلي، سيحدد جميع الأعمدة من الجدول المعاد تسميته. في مثالنا، سيتم تسمية الاستعلام IceCreams وسينفذ استعلام SQL التالي select * from [IceCreams_Table].

تقوم الدالة RemoveWorkaroundForCorruptedQueryIssue() بالإجراءات العكسية.

أنا أستخدم هذا الحل البديل في مشاريع كبيرة تحتوي على أكثر من 400 جدول بمختلف أنواعها، بما في ذلك جداول خارجية غير MDB (مثل SQL Server).

في حالتي، احتجت إلى إعادة تسمية USysRibbons_Table يدويًا إلى USysRibbons، لأنني لم أقم بتمييزه كجدول نظامي عندما أنشأته في الماضي.

ضع الأمور التالية في الاعتبار:

  • استخدام استعلام بدلاً من جدول يمكن أن يؤدي إلى تنفيذ عبارات غير محسّنة ضد قاعدة بيانات خلفية في حالات معينة، خاصة إذا كانت استعلاماتك الأصلية التي استخدمت الجداول إما ضعيفة الجودة أو معقدة جدًا.
  • يجب أن يحتوي الجدول الأساسي يجب أن يحتوي على مفتاح أساسي معرّف، وإلا فلن يكون من الممكن تحديث الصفوف أو إدراجها.
  • من الممكن (اعتمادًا على أسلوب البرمجة لديك) ألا يغطي هذا جميع مراجع الكود الخاصة بك (على سبيل المثال، استخدام عبارات صريحة مثل TableDefs!MyTableName سيتطلب منك القيام ببعض البحث والاستبدال لتلك الحالات في الكود/واجهة المستخدم لديك).

معلومات إضافية

  • Born's Tech and Windows World
  • administrator.de (بالألمانية)
  • وصف الخطأ والحل البديل من Microsoft
  • منتدى Microsoft: تحديثات CVE-2019-1402 (KB4484119، إلخ) تعطل Access 2010/2013/2016/365: الاستعلام '' تالف
  • StackOverflow

رسالة الخطأ بلغات أخرى

  • الألمانية: Abfrage '' ist beschädigt
تنزيل الأداة