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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
url-regex-safe — مطابقة التعبيرات النمطية لعناوين URL. نسخة مُحدثة وآمنة ومتوافقة مع المتصفحات من url-regex. يعالج ثغرة CVE-2020-7661 لخوادم Node.js. | Kitploit
أدوات/GitHubGitHub/spamscanner/url-regex-safe
أدوات عامةالتحليل الثابتتحليل الثغرات الأمنيةالبرمجة النصية والأتمتةأمن الويب
GitHubspamscanner/url-regex-safe

url-regex-safe

مطابقة التعبيرات النمطية لعناوين URL. نسخة مُحدثة وآمنة ومتوافقة مع المتصفحات من url-regex. يعالج ثغرة CVE-2020-7661 لخوادم Node.js.

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

الأكثر شعبية

عرض الكل →

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

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

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

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

url-regex-safe

build status code style styled with prettier made with lass license npm downloads

تعبير نمطي لمطابقة عناوين URL. نسخة مُصانة وآمنة ومتوافقة مع المتصفحات من [url-regex][]. تعمل على حل [CVE-2020-7661][cve] لخوادم Node.js. تعمل في Node v14+ والمتصفحات. مُصانة لصالح [Spam Scanner][spam-scanner] و[Forward Email][forward-email].

Table of Contents

  • مقدمة
  • التثبيت
  • الاستخدام
    • Node
    • المتصفح
  • الخيارات
  • نصائح سريعة والانتقال من url-regex
  • القيود
  • المساهمون
  • الترخيص

مقدمة

بعد اكتشاف [CVE-2020-7661][cve] والإفصاح عنه علنًا (من خلال عملي على [Spam Scanner][spam-scanner] و[Forward Email][forward-email]) – استخدمت تنفيذًا من [url-regex][] مع بعض الإضافات في الأعلى لتصفية مطابقات URL غير الصحيحة.

غير أنني بعد استخدامه على [Forward Email][forward-email] في الإنتاج (الذي يعالج مئات الآلاف من رسائل البريد الإلكتروني أسبوعيًا)، وجدت ووثّقت العديد من المشاكل الأساسية الإضافية في [url-regex][].

وإدراكًا مني أن [url-regex][] لم يعد يُصان بنشاط، وأن لديه 9 طلبات سحب مفتوحة حتى وقت كتابة هذا النص، كما أنه يفتقر إلى دعم المتصفحات – قررت كتابة هذه الحزمة للجميع ودمج جميع طلبات السحب المفتوحة.

من المؤمل أن تكون هذه الحزمة أقرب إلى الاستخدام العملي المقصود للتعبير النمطي لعناوين URL، وأن تسمح أيضًا للمستخدم بتهيئتها كما يشاء. يرجى الاطلاع على [Forward Email][forward-email] إذا كانت هذه الحزمة قد ساعدتك، واستكشف الكود المصدري الخاص بنا على GitHub الذي يوضح كيفية استخدامنا لهذه الحزمة.

التثبيت

ملاحظة: السلوك الافتراضي لهذه الحزمة سيحاول تحميل re2 (وهو تبعية اختيارية نظيرة تُستخدم لمنع هجمات حجب الخدمة عبر التعبيرات النمطية وغير ذلك). إذا كنت ترغب في استخدام هذا السلوك، يجب أن يكون لديك re2 مثبتًا عبر npm install re2 – وإلا فستعود الحزمة إلى استخدام نسخ RegExp العادية. اعتبارًا من v4.0.0 أضفنا خيارًا إذا كنت ترغب في إجبار هذه الحزمة على عدم محاولة تحميل re2 حتى (على سبيل المثال، إذا كانت موجودة في node_modules ولكنك لا تريد استخدامها) – فقط مرر re2: false كخيار.

[npm][]:

npm install url-regex-safe

الاستخدام

Node

لقد قمنا بحل [CVE-2020-7661][cve] من خلال تضمين [RE2][] لاستخدام Node.js. لن تضطر بعد الآن إلى لف تعبيرات URL النمطية يدويًا باستخدام new RE2(urlRegex()) عبر url-regex-safe (نحن نفعل ذلك تلقائيًا نيابة عنك).

const urlRegexSafe = require('url-regex-safe');

const str = 'some long string with url.com in it';
const matches = str.match(urlRegexSafe());

for (const match of matches) {
  console.log('match', match);
}

console.log(urlRegexSafe({ exact: true }).test('github.com'));

المتصفح

بما أن [RE2][] غير مصمم للمتصفح، فلن يتم استخدامه، وبالتالي يظل [CVE-2020-7661][cve] مشكلة في جانب العميل. ومع ذلك فهو ليس خطيرًا لأن أقصى ما قد يفعله هو تعطّل تبويب المتصفح (بينما في جانب Node.js كان سيعطّل العملية بالكامل ويُحدث استثناءً بسبب نفاد الذاكرة).

VanillaJS

هذا هو الحل المناسب لك إذا كنت تستخدم وسوم <script> في كل مكان!

<script src="https://unpkg.com/url-regex-safe"></script>
<script type="text/javascript">
  (function() {
    var str = 'some long string with url.com in it';
    var matches = str.match(urlRegexSafe());

    for (var i=0; i<matches.length; i++) {
      console.log('match', matches[i]);
    }

    console.log(urlRegexSafe({ exact: true }).test('github.com'));
  })();
</script>

Bundler

بافتراض أنك تستخدم [browserify][] أو [webpack][] أو [rollup][] أو أي أداة تجميع أخرى، يمكنك ببساطة اتباع استخدام Node أعلاه.

TypeScript

لاستخدام هذه الحزمة مع TypeScript، يمكنك تثبيت حزمة @types/url-regex-safe لتعريفات الأنواع.

npm install --save-dev @types/url-regex-safe

الخيارات

تنزيل الأداة