مسرد المصطلحات الأمنية

تظهر هذه المصطلحات في الملاحظات الميدانية وفي التقرير الذي نُرسله بعد الفحص. ضع إشارة مرجعية لمداخل بعينها عبر المرساة (/glossary/#dmarc) وارتبط بها بحرّية.

كل تعريف قصير عمداً؛ أمّا الملاحظات الميدانية فتتعمّق أكثر في الكيف واللماذا.

مصادقة البريد الإلكتروني

ثلاثة سجلات DNS وعدد قليل من المساعدين تحدّد مصير البريد الذي يدّعي أنه قادم من نطاقك: هل يُسلَّم، أم يُحجَز في صندوق الرسائل غير المرغوبة، أم يُرفَض؟ ضبط هذه السجلات يوقف انتحال الهوية في مهده؛ وعدم ضبطها يدفع بريدك الحقيقي إلى مجلد السبام.

SPF (Sender Policy Framework)

سجل TXT في DNS يَسرد المضيفين المسموح لهم بإرسال البريد باسم نطاقك في مظروف SMTP (عنوان MAIL FROM، ويُسمّى أيضاً return-path). يبحث الخادم المستقبِل عن السجل، ويقارنه بعنوان IP المتّصل، ثم يسجّل النتيجة: نجاح، فشل، فشل خفيف، محايد، أو خطأ مؤقت.

سجل نموذجي يبدو هكذا: v=spf1 include:_spf.google.com include:mailgun.org -all. الـ -all في النهاية تعني “أي خادم غير مذكور ينبغي أن يفشل في SPF”؛ أمّا قرار رفض الرسالة فيعتمد على سياسة المستقبِل وعلى DMARC. أما ~all (فشل خفيف) و ?all (محايد) فأضعف وعادةً إعدادات مؤقتة لمرحلة النشر، لا حالة نهائية.

لا يُثبِت SPF وحده العنوان الذي يراه الإنسان في حقل “From”. تلك مهمّة DMARC — انظر إلى انحياز DMARC.

See also: DKIM, DMARC, انحياز DMARC.

DKIM (DomainKeys Identified Mail)

توقيع تشفيري يُلحَق بالبريد الصادر. يوقّع المُرسِل ترويسات مختارة وجسم الرسالة بمفتاح خاص؛ يبحث المستقبِل عن المفتاح العام المطابق في DNS عند <selector>._domainkey.<domain> ويتحقّق من التوقيع.

التوقيع الصحيح يُثبِت أمرين: الأجزاء الموقَّعة من الرسالة ما زالت تطابق التجزئة، ومفتاح التوقيع يعود لمن يتحكّم بسجل DNS ذاك. ولا يُثبِت عنوان “From” الذي يراه القارئ، لأن نطاق التوقيع قد يختلف عن المُرسِل المرئي. لذلك تحتاج إلى انحياز DMARC.

تتيح المُنتقيات (selectors) لنطاق واحد تدوير المفاتيح دون توقّف: تنشر مفتاحاً جديداً تحت منتقٍ جديد، وتحوّل الإرسال إليه، ثم تتقاعد عن السجل القديم بعد فترة سماح.

See also: DMARC, انحياز DMARC.

DMARC (Domain-based Message Authentication, Reporting and Conformance)

سجل سياسة في DNS عند _dmarc.<domain> يخبر المستقبِلين المشاركين كيف يتعاملون مع البريد الذي يدّعي أنه من النطاق ثم يفشل في DMARC، وأين يُرسلون التقارير المجمّعة.

تتدرّج السياسة من المراقبة إلى التنفيذ في ثلاث مراحل:

  • p=none — مراقبة فقط؛ يواصل المستقبِلون التسليم ويُرسلون لك تقارير لتعرف من يُرسل باسمك.
  • p=quarantine — يحوّل المستقبِلون البريد الفاشل إلى السبام.
  • p=reject — يرفض المستقبِلون البريد الفاشل، غالباً أثناء معاملة SMTP.

تبدأ معظم النطاقات من none لجمع البيانات وإصلاح المُرسِلين الشرعيّين الفاشلين، ثم تتدرّج إلى quarantine فـ reject. البقاء عند none إلى الأبد هو الخطأ الأكثر شيوعاً — فهو يمنح المنتحلين مرورًا مجانياً.

ويتطلّب DMARC أيضاً الانحياز: انظر المدخل التالي.

See also: SPF, DKIM, انحياز DMARC, BIMI.

انحياز DMARC

القاعدة التي تربط SPF أو DKIM بالعنوان الذي يراه الإنسان فعلاً. يصرّح SPF بمظروف MAIL FROM. ويوقّع DKIM نيابة عن نطاق ما. أمّا الانحياز فيتطلّب أن يطابق أحد هذين النطاقين على الأقل ترويسة From المرئية.

من دون الانحياز يمكن لمُرسِل سبام أن يجتاز SPF لـ [email protected] بينما يُظهر From: [email protected] — ويُغلِق DMARC هذه الثغرة. يتطلّب الانحياز الصارم تطابقاً تاماً للنطاق. أمّا الانحياز المرن، وهو الافتراضي، فيقبل النطاق التنظيمي نفسه: يمكن أن ينحاز mail.example.com إلى example.com، لكن لا ينحاز إلى example.net.

See also: DMARC, SPF, DKIM.

MTA-STS (Mail Transfer Agent Strict Transport Security)

ملف سياسة يُنشَر عبر HTTPS عند mta-sts.<domain>/.well-known/mta-sts.txt مع سجل TXT عند _mta-sts.<domain>. ووفق RFC 8461، يخبران الخوادم المُرسِلة معاً: “استخدم TLS عند التسليم لي؛ هذه أسماء مضيفي MX التي أقبل شهاداتها؛ وإن لم يُمكِن تأمين الاتصال فافشل التسليم بدلاً من الرجوع إلى النص الواضح”.

تُسدّ MTA-STS ثغرة قديمة في SMTP: فـ STARTTLS بذل جهد فحسب، ومُهاجم بين خادمَي بريد يستطيع نزع ترقية TLS وقراءة الرسالة. تحوّل MTA-STS ذلك التراجع إلى فشل في التسليم بدلاً من اختراق صامت.

See also: TLS-RPT.

TLS-RPT (SMTP TLS Reporting)
رفيق لـ MTA-STS، معرّف في RFC 8460، يطلب من خوادم البريد المُرسِلة الإبلاغ عن مشكلات تسليم TLS. تنشر سجل TXT عند _smtp._tls.<domain> يحوي عنوان rua=mailto:؛ فترسل الجهات الداعمة تقارير JSON يومية تلخّص أخطاء الشهادات، فشل السياسة، ومحاولات التراجع. اعتبره طبقة المراقبة تحت سياسة MTA-STS.

See also: MTA-STS.

BIMI (Brand Indicators for Message Identification)
طريقة تتيح للمُرسِلين الذين يُنفّذون DMARC بسياسة quarantine أو reject نشر شعار، وإظهاره لدى عملاء البريد المُشارِكين بجانب الرسائل المُصادَق عليها. بعض مزوّدي البريد يطلبون أيضاً شهادة علامة مُتحقَّق منها (VMC). BIMI إشارة ثقة، لا خطوة مصادقة — لكنها تمنح المُشغِّلين سبباً ملموساً لاستكمال نشر DMARC الذي يتعثّر عند نطاقات كثيرة.

See also: DMARC.

DNS

DNS هو دليل الهاتف العام للإنترنت. معظم الإشارات الأمنية الخارجية تعيش فيه — وذلك يعني أن أي شخص يستطيع قراءتها، بمن فيهم المهاجم الذي يبني قائمة أهدافه.

DNS (Domain Name System)
النظام الذي يربط أسماء بصيغة مفهومة للإنسان مثل zmam.ai بعناوين مفهومة للآلة وبحقائق عامة أخرى عن النطاق. سجلات DNS عامة بالتصميم: يستطيع أي شخص سؤال خادم رسمي عن بيانات A أو MX أو TXT أو CAA. لذلك يكون DNS بنية تشغيلية وخريطةً أولى يقرأها المهاجم قبل فحص الهدف.

See also: DNSSEC.

سجل A / AAAA
السجلات التي تحلّ اسماً إلى عنوان IPv4 (A) أو IPv6 (AAAA). تبدأ معظم الأسئلة الأمنية الأخرى عن اسم مضيف من هنا: هل يشير api.example.com إلى حسابك السحابي، أم CDN، أم مزوّد استضافة قديم، أم عنوان لا يتعرّف عليه أحد في الفريق؟
سجل CNAME
اسم مستعار يقول “لهذا الاسم، ابحث عن ذلك الاسم الآخر بدلاً منه”. شائع للواجهة الأمامية للخدمات عبر شبكة توصيل محتوى (CDN) أو لتوجيه www إلى منصة استضافة. وسجلات CNAME أيضاً مصدر شائع لخطر الاستيلاء على النطاق الفرعي: عندما تُحذَف الخدمة المُستهدفة لكن يبقى CNAME، يصبح السجل مؤشّراً متدلّياً قد يستطيع المهاجم المطالبة به.

See also: DNS مُتدلٍّ, الاستيلاء على نطاق فرعي.

سجل MX
السجلات التي تخبر العالم بالخوادم المُستلِمة للبريد لنطاق ما. كل مدخل MX له أولوية (الأرقام الأقل تُجرَّب أولاً) واسم مضيف. السجلات المفقودة أو الخاطئة ترتدّ معها الرسائل الشرعية؛ والسجلات القديمة قد تترك خدمة بريد سابقة تستقبل رسائل لنطاق تظن أنه انتقل.
سجل TXT
سجل نصّي حرّ التنسيق. معظم الإشارات الأمنية الحديثة — SPF، مفاتيح DKIM العامة، DMARC، MTA-STS، إثباتات ملكية النطاق — تركب على سجلات TXT. يوضّح اسم السجل أو قيمته معناه: v=spf1 لـ SPF، و _dmarc.<domain> لـ DMARC، و <selector>._domainkey.<domain> لـ DKIM.
سجل NS (Name Server)
يحدّد الخوادم الرسمية لمنطقة. إن كانت تلك الخوادم عرجاء (مفوَّضة لكنها لا تجيب فعلاً)، فقد يفشل حلّ النطاق. وإن أشار التفويض إلى خادم أسماء طرف ثالث أزيل ويمكن إنشاؤه من جديد، فقد تكون النتيجة استيلاءً على المنطقة كلها. تتغيّر سجلات NS نادراً؛ والتغيير المفاجئ جدير بالتحقيق.
سجل CAA (Certification Authority Authorization)

سجل DNS يُسمّي سلطات الشهادات التي تسمح لها بإصدار شهادات لنطاقك. مدخل نموذجي: 0 issue "letsencrypt.org". لا تستشير المتصفحات CAA وقت المصافحة؛ تنطبق السياسة وقت الإصدار. يجب على سلطة الشهادات فحص CAA قبل الإصدار، لذلك ينبغي لسلطة غير مذكورة أن ترفض الطلب حتى لو استطاع الطالب إثبات تحكّمه بالاسم.

أضِف 0 iodef "mailto:security@yourdomain" لتتلقّى تقارير الحوادث عند حدوث إصدار مرفوض.

See also: TLS.

DNSSEC (DNS Security Extensions)
مجموعة من امتدادات DNS توقّع السجلات تشفيرياً، فيتمكّن مُحلِّل DNS من كشف التلاعب بينه وبين الخادم الرسمي. لا يُعمّي DNSSEC استعلامات DNS؛ بل يوفّر سلامة الإجابات وأصالة مصدرها. تشغيله متعب، لكنه ذو قيمة حيث تكون كلفة سجل مسموم عالية: البنوك، المسجِّلون، ومزوّدو البريد الكبار.
FQDN (Fully Qualified Domain Name)
اسم مضيف كامل، يشمل كلّ تسمية حتى الجذر — مثل api.zmam.ai. بالنقطة الختامية. تقبل معظم الأدوات الصيغة بدون النقطة، لكن النقطة في صياغة DNS تعني “ابدأ من الجذر، لا من لاحقة بحث محلية”.
شهادة بدل (wildcard)
شهادة TLS تُصدَر لـ *.example.com. تغطّي تسمية واحدة مباشرة تحت example.com، مثل api.example.com، لكنها لا تغطّي a.b.example.com. هذه الراحة لها ثمن: تسريب المفتاح الخاص يكسر كلّ نطاق فرعي مشمول دفعة واحدة. اقرن شهادات البدل بسجلات CAA ودورات تدوير قصيرة.

See also: سجل CAA.

DNS مُتدلٍّ
سجل DNS لا يزال يشير إلى مورد لم تعد تملكه — أكثر شيوعاً CNAME إلى دلو سحابي سابق، أو مضيف SaaS مُتقاعد، أو تطبيق Heroku محذوف. إن كان الاسم المُستهدف قابلاً للتسجيل من أي شخص، استطاع المهاجم تسجيله وتقديم محتوى تحت نطاقك الفرعي. يفحص زمام هذا تلقائياً.

See also: الاستيلاء على نطاق فرعي, سجل CNAME.

أمان النقل (TLS)

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

TLS (Transport Layer Security)
البروتوكول التشفيري الذي يُغلِّف اتصال HTTP (أو SMTP أو IMAP ونحوها) بالتعمية وهوية الخادم. “شهادة SSL” هي الاسم القديم الذي لا يزال الناس يستخدمونه؛ انتقل البروتوكول من SSL إلى TLS عام 1999. الإصداران المناسبان للإنتاج هما TLS 1.2 و TLS 1.3، مع تفضيل TLS 1.3 حيث يدعمه العملاء.

See also: HSTS.

TLS 1.0 / TLS 1.1 (موروث)
أبطلت IETF كلا الإصدارين عام 2021 (RFC 8996)، ولم يعودا مقبولين في خطوط الامتثال الحديثة مثل PCI DSS. يظهران في البيئة لأن عملاء أو وسطاء قدامى يطلبونهما. الاستمرار في قبول TLS 1.0 أو 1.1 يُعدّ مأخذاً تدقيقياً بغضّ النظر عن السائل؛ عطّلهما واجعل العملاء الباقين يرقّون.

See also: TLS, TLS 1.3.

TLS 1.2
الإصدار السائد منذ 2008. آمنٌ إن قُيِّدَت مجموعات شيفراتك بسرّية أمامية وأنماط AEAD مثل GCM أو CHACHA20-POLY1305. الأجزاء الخطرة في TLS 1.2 هي الخيارات الموروثة — RC4 و 3DES و CBC-with-SHA1 وتبادل المفاتيح static RSA وأي شيء يحوي EXPORT. لا ينبغي لموقع صحي أن يفاوض على أي منها.

See also: مجموعة الشيفرات.

TLS 1.3
إعادة التصميم عام 2018 (RFC 8446). يُزيل أنماط الشيفرات الضعيفة، يجعل السرّية الأمامية إلزامية، يقلّص المصافحة المعتادة إلى دورة واحدة، ويُعمّي مزيداً من ميتاداتا المصافحة. مكّنه أينما توفّر وفضّله على TLS 1.2 في الإعدادات.

See also: TLS, TLS 1.2.

مجموعة الشيفرات
مجموعة مُسمّاة من الخوارزميات التي يتفق عليها الطرفان لاتصال TLS. في TLS 1.2 تشمل المجموعة تبادل المفتاح، المصادقة، التعمية، ومصادقة الرسالة؛ أما في TLS 1.3 فتسمّي غالباً شيفرة AEAD والتجزئة، مثل TLS_AES_256_GCM_SHA384. فضّل ما يحوي GCM أو CHACHA20-POLY1305؛ وتجنّب CBC و RC4 و 3DES و static RSA و _SHA1.

See also: TLS 1.2, TLS 1.3.

تثبيت OCSP (Online Certificate Status Protocol stapling)
يجلب الخادم بياناً قصير العمر موقَّعاً من سلطة الشهادات يقول “هذه الشهادة لا تزال صالحة”، ويُثبِّته في مصافحة TLS. من دون التثبيت، يسأل المتصفح سلطة الشهادات بنفسه — أبطأ، وفيه تسريب للخصوصية. ومع التثبيت يستطيع العملاء فحص حالة الإبطال دون تلك الرحلة الإضافية، مع أن متصفحات كثيرة لا تزال تفشل فشلاً ليناً إن غابت الحالة.

ترويسات أمان HTTP

حفنة من ترويسات الاستجابة تحوّل المتصفح من “يثق بالخادم في كل شيء” إلى “يتّبع القواعد التي يصرّح بها الخادم”. معظمها تغيير سطر واحد في الإعدادات يمنع فئات كاملة من الهجمات.

HSTS (HTTP Strict Transport Security)

ترويسة استجابة تقول للمتصفحات “خلال الـ N ثانية القادمة، اتّصل بي عبر HTTPS فقط، حتى لو كتب المستخدم http:// أو نقر رابطاً عادياً”. قيمة نموذجية: Strict-Transport-Security: max-age=31536000; includeSubDomains; preload.

تحمي HSTS كل زيارة بعد أول اتصال HTTPS ناجح بإعادة كتابة محاولات HTTP اللاحقة إلى HTTPS داخل المتصفح قبل خروج الطلب. أمّا أول زيارة على الإطلاق فلا تزال عُرضة للتجريد؛ ويُغلِق التحميل المسبق فجوة الإقلاع هذه.

See also: تحميل HSTS مسبقاً, TLS.

تحميل HSTS مسبقاً
قائمة تشحنها المتصفحات مُضمَّنة فتفرض HTTPS على النطاقات المدرجة من أول زيارة — تُغلِق فجوة الإقلاع في HSTS. للدخول عليك تقديم الترويسة الصحيحة لمدة سنة على الأقل مع includeSubDomains و preload، ثم التقدّم عبر hstspreload.org. قد تستغرق الإزالة دورات إصدارات المتصفحات، فتأكّد أن كل نطاق فرعي يستطيع العيش على HTTPS قبل التطبيق.

See also: HSTS.

CSP (Content Security Policy)

ترويسة استجابة تَسرد مصادر الشيفرات والأنماط والصور والإطارات وبقيّة المحتوى التي يُسمح للمتصفح بتحميلها على هذه الصفحة. أقوى دفاع ضدّ البرمجة عبر المواقع (XSS): حتى إن حقن المهاجم ترميزاً، فإنّ CSP المُقيِّدة ترفض تنفيذه.

ابدأ بـ Content-Security-Policy-Report-Only مع نقطة report-uri أو report-to لتعرف ما تحمّله صفحاتك فعلاً، ثم انتقل إلى التنفيذ. تجنّب 'unsafe-inline' للشيفرات؛ استخدم nonces لكل طلب، ومعها strict-dynamic حيث يناسب.

See also: SRI, XSS.

X-Frame-Options
الطريقة القديمة لمنع تحميل صفحاتك داخل عناصر <iframe> في مواقع أخرى — أساس الدفاع ضدّ اختطاف النقر. DENY يمنع كل التأطير، و SAMEORIGIN يسمح بالتأطير من الموقع نفسه. البديل الحديث هو توجيه frame-ancestors داخل CSP. أرسل الاثنين إن كنت لا تزال تدعم متصفحات قديمة.

See also: اختطاف النقر.

X-Content-Type-Options
ترويسة بقيمة واحدة — nosniff — تقول للمتصفح أن يكفّ عن التخمين الثاني لـ Content-Type الذي تصرّح به للشيفرات والأنماط. من دونها، يمكن لملف رُفِع كصورة وقُدّم من نطاقك أن يُفسَّر كجافاسكربت أو CSS في تبويب الضحية.
Referrer-Policy
تتحكّم بمقدار ما يُسرَّب من العنوان الطالب في ترويسة Referer على الطلبات الصادرة. اضبطها على strict-origin-when-cross-origin (أو أصرم) كي لا يظهر عنوان إعادة تعيين كلمة المرور أو رمز في معاملات استعلام في سجلات طرف ثالث. اسم الترويسة مكتوب تاريخياً بالخطأ Referer؛ أما اسم السياسة فمكتوب بشكل صحيح.
Permissions-Policy
تصرّح بميزات المتصفح التي يجوز لصفحات موقعك (والإطارات المُضمَّنة) استخدامها — الكاميرا والميكروفون وتحديد الموقع و USB والدفع وملء الشاشة وعشرات غيرها. السياسة المحكمة تكون صريحة: ارفض الميزات القوية افتراضياً، ثم فعّل فقط ما تحتاجه الصفحة فعلاً.
SRI (Subresource Integrity)
سمة <script integrity="sha384-…"> على وسوم تُحمِّل جافاسكربت أو CSS من طرف ثالث. يحسب المتصفح تجزئة الملف المجلوب ويرفض استخدامه إن لم تطابق الملخّص. تدافع ضدّ شبكات توصيل محتوى مخترقة أو حقن شيفرة من جانب المورّد: إن استبدل المهاجم الملف يفشل فحص التجزئة.
سمات أمان ملفات تعريف الارتباط (Secure / HttpOnly / SameSite)

ثلاث سمات يمكنك إلصاقها بأي ملف تعريف ارتباط:

  • Secure — لا يُرسَل الملف إلا عبر HTTPS.
  • HttpOnly — لا تستطيع جافاسكربت قراءته عبر document.cookie، مما يُكبِح سرقة الجلسات الناتجة عن XSS.
  • SameSite — يتحكّم بالإرسال بين المواقع: Strict (لا يُرسَل مع التنقّل بين المواقع)، Lax (يُرسَل في تنقّلات المستوى الأعلى الآمنة مثل GET)، أو None (يُرسَل في كل السياقات ويجب اقترانه بـ Secure).

دفاع الجلسات و CSRF الحديث يستخدم الثلاثة، ومعها رموز CSRF للطلبات التي تغيّر الحالة.

See also: CSRF.

ثغرات تطبيقات الويب

الأشكال المتكرّرة من الأخطاء التي تحوّل خادماً نزيهاً إلى رافعة في يد المهاجم. الأنماط هنا هي قائمة OWASP العشرة المعروفة، إضافة إلى أقاربها المختصّة بواجهات API.

XSS (البرمجة عبر المواقع)
أي صنف من الأخطاء يسمح للمهاجم بتشغيل جافاسكربت على موقعك تحت جلسة مستخدم آخر. ثلاثة أشكال: مخزَّن (يُحفَظ في قاعدة بيانات ويُقدَّم لكل من يطالع الصفحة)، منعكس (يُعاد من معامل URL)، ومبني على DOM (يُدخَل من شيفرة العميل). تتراكب التدابير: ترميز المخرجات بحسب السياق، تعقيم HTML عندما يُسمح للمستخدم بتقديم ترميز، استخدام واجهات DOM الآمنة، و CSP شبكةً أخيرة.

See also: CSP, SRI.

حقن SQL (SQLi)
خطأ تُضمَّن فيه مدخلات غير موثوقة في استعلام قاعدة بيانات، مما يتيح للمهاجم تغيير معنى الاستعلام — قراءة بيانات لا ينبغي أن يراها، تعديل سجلات، وأحياناً تنفيذ أوامر نظام تشغيل عبر امتدادات قاعدة البيانات. الإصلاح المُجرَّب هو الاستعلامات المُعَلَّمة أو المهيّأة: ينتقل نص SQL والقيم منفصلين، فيبقى "' OR 1=1 بيانات بدلاً من أن يصبح صياغة.
CSRF (تزوير الطلبات عبر المواقع)
يخدع المهاجم متصفح مستخدم مُصادَق عليه ليُرسل طلباً يُغيّر الحالة — تحويل أموال، تغيير بريد — دون أن يدرك المستخدم. يجمع الدفاع الحديث بين ملفات تعريف ارتباط SameSite ورمز CSRF مربوط بجلسة المستخدم ويُتحقّق منه في كل طريقة غير آمنة. يبقى التحقّق من ترويسة Origin أو Referer طبقة ثانية مفيدة.

See also: سمات أمان ملفات تعريف الارتباط (Secure / HttpOnly / SameSite).

IDOR (Insecure Direct Object Reference)
خطأ يثق فيه الخادم بمعرّف يُمرّره العميل (/order/12345) دون أن يتحقّق ممّا إذا كان المُتّصِل مسموحاً له برؤية ذلك الكائن. ترميم نقطة واحدة نادراً ما يكفي — يشير IDOR عادةً إلى طبقة تخويل غائبة يجب أن تعمل كلما قُرئت الكائنات أو عُدّلت. للنسخة الواجهة-البرمجية اسم خاص بها هو BOLA.

See also: BOLA.

BOLA (Broken Object Level Authorization)
البند رقم واحد في قائمة OWASP لأمان واجهات API — معادل IDOR للواجهات البرمجية. يستدعي مستخدم مُصادَق عليه GET /v1/accounts/<id> بمعرّف جاره فيعيد الخادم حساب الجار. كثيراً ما يكون غير مرئي من الخارج؛ والإصلاح هو فحوصات كائنات من جانب الخادم في كل طلب، لا إخفاء المعرّفات ولا الثقة بالعميل.

See also: IDOR.

SSRF (تزوير الطلبات من جانب الخادم)
خطأ يُمكن خداع الخادم فيه ليُرسل طلب HTTP يختاره المهاجم — ثم يُنفَّذ ذلك الطلب من داخل شبكتك. في البيئات السحابية كثيراً ما يكون SSRF الطريق إلى خدمة الميتاداتا (169.254.169.254) والاعتمادات المؤقتة التي تعيدها. دفاع متعدّد الطبقات: استخدم قائمة سماح للوجهات الصادرة، واحظر العناوين الخاصة، المحلية، link-local، وعناوين الميتاداتا السحابية، واشترط IMDSv2 على EC2 كي لا يستطيع SSRF بسيط يرسل GET فقط جلب الاعتمادات.
RCE (تنفيذ شيفرة عن بُعد)
ينفّذ المهاجم شيفرة عشوائية على خادمك — أسوأ نتيجة عملية لمعظم الأخطاء الأخرى. مسارات شائعة: حقن أوامر في استدعاء قشرة، عيوب فك التسلسل، معالجات رفع ملفات تنفّذ مدخلاتها، مكتبات معالجة صور قابلة للاستغلال. ظهور RCE في وصف CVE يعني أن الأصل يجب تصحيحه فوراً.
إعادة توجيه مفتوحة
عنوان على موقعك يُعيد التوجيه بـ 302 إلى وجهة يتحكّم بها المُتّصِل (/login?next=https://evil.example). خطأ منخفض الخطورة وحده، لكنه يجعل التصيّد أقنع وكثيراً ما يكون مرحلة وسيطة في هجمات OAuth أو SAML. الإصلاح: اسمح بالمسارات النسبية فقط أو بقائمة صغيرة من وجهات إعادة التوجيه الموثوقة.
اجتياز المسار
خطأ يحوي فيه اسم ملف من المستخدم .. أو حيلاً أخرى للهروب من المجلّد المقصود وقراءة أو كتابة ملفات في مواضع أخرى على الخادم. التدبير القياسي: فكّ الترميز وطبّع المسار، ثم حلّه إلى موقع مطلق وتأكّد أنه لا يزال تحت الجذر المقصود قبل فتح الملف. وفي التنزيلات، يكون ربط معرّف بملف أسلم من قبول مسارات من المستخدمين.
اختطاف النقر
تحميل صفحتك داخل إطار في موقع يتحكّم به المهاجم، ثم وضع طبقة شفّافة فوقها ليصطدم نقر المستخدم بصفحتك بدلاً ممّا يراه. الدفاع الحديث: Content-Security-Policy: frame-ancestors 'self' مع X-Frame-Options: DENY الموروث للمتصفحات الأقدم.

See also: X-Frame-Options, CSP.

دورة حياة CVE

مفردات تتيح للمدافعين والموردين والباحثين الإشارة إلى الثغرة ذاتها. زمام يربط كلّ ما يكتشفه بهذا النظام.

CVE (Common Vulnerabilities and Exposures)
معرّف فريد — CVE-2024-12345 — يُمنَح لثغرة برمجية بعينها كي يستطيع كلّ مدافع ومورّد وباحث الإشارة إلى الخلل ذاته. لا يُخبِر المعرّف بذاته عن مدى خطورة الخلل أو ما إذا كان أحد قد استغلّه؛ تأتي تلك المعلومات من درجات CVSS، إثراء NVD، مدخلات CISA KEV، ونصائح المورّدين المرتبطة بالـ CVE نفسها.

See also: CVSS, KEV, NVD.

CVSS (Common Vulnerability Scoring System)
درجة عددية من 0 إلى 10 وسلسلة متّجه تصف سلوك الثغرة: متّجه الهجوم (شبكة، مجاور، محلي، فيزيائي)، تعقيد الهجوم، الامتيازات المطلوبة، تفاعل المستخدم، النطاق، والأثر على السرّية والسلامة والتوافر. المتّجه مثل AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H أنفع من الدرجة وحدها: يخبرك لماذا تكون 9.8 قابلة للوصول عبر الشبكة دون دخول ودون نقرة مستخدم.

See also: CVE.

KEV (Known Exploited Vulnerabilities)
قائمة تحتفظ بها وكالة CISA الأمريكية للـ CVE المعروف استغلالها في البيئة. وجود CVE على KEV يعني أنه لم يعد خطراً نظرياً — استخدمها أحدٌ ضدّ أنظمة حقيقية. عامِل مدخلات KEV كعمل عاجل حتى عندما تبدو درجة CVSS أقل إثارة من عيوب أحدث لم تُستغل بعد.

See also: CVE, CVSS.

NVD (National Vulnerability Database)
قاعدة بيانات NIST الأمريكية التي تُثري CVEs بدرجة CVSS، ونطاقات المنتجات المتأثّرة (CPEs)، والمراجع، والميتاداتا القابلة للقراءة آلياً. قد يتأخر الإثراء عن سجل CVE نفسه، لذلك تبقى نصائح المورّدين مهمة. تستعلم فحوصات CVE في زمام عن واجهة NVD الإصدار 2 لربط الإصدارات المُكتشَفة بثغرات معروفة.

See also: CVE, CVSS.

PoC (إثبات مفهوم)
شيفرة أو طلب يُبرهن أن الثغرة حقيقية، دون تسليحها بالضرورة للأذى. PoCs هي الطريقة التي يُثبت بها الباحثون النتائج للمورّدين والتي يتحقّق بها المدافعون من أن ترقيعهم سدّ الفجوة فعلاً.

See also: استغلال.

استغلال
أداة عاملة تستخدم ثغرة لتحقيق أثر يختاره المهاجم — تنفيذ شيفرة، سرقة بيانات، تصعيد امتيازات. تختلف عن PoC بالنية والصقل: الاستغلال يهدف إلى النجاح في البيئة، عادة بموثوقية وتخفٍّ.

See also: PoC, يوم الصفر.

يوم الصفر
ثغرة لا يوجد لها تصحيح لحظة الهجوم — لم يَملك المدافع أيّ يوم لتطبيق إصلاح من المورّد. يصف الاسم توافر التصحيح، لا ما إذا كان الخلل علنياً. تُغلَق النافذة فور شحن المورّد للإصلاح؛ ومنذ ذلك الحين تصبح “يوم N”.

See also: يوم N.

يوم N
ثغرة يوجد لها تصحيح لكن أنظمة كثيرة لم تُطبِّقه بعد. الغالبية العظمى من حوادث الاختراق في العالم الحقيقي تركب على ثغرات “يوم N”، لأن النصائح وشيفرة الاستغلال وقوائم الأهداف تصبح عامة أسرع مما يصل نشر التصحيح إلى كل خادم.

See also: يوم الصفر.

الهوية والمصادقة

كيف يقرّر الخادم مع من يتحدّث. كل قرار أمني آخر يتّخذه النظام بعد التحية الأولى يستند إلى الآليات المذكورة هنا.

OAuth 2.0
بروتوكول للتـفويض المُفوَّض: يسمح المستخدم لتطبيق ما بأن يعمل نيابةً عنه عند خدمة أخرى دون مشاركة كلمة المرور. مثلاً، يحصل تطبيق تقويم على إذن قراءة Google Calendar دون معرفة كلمة مرور Google. لا يقول OAuth 2.0 بذاته من المستخدم — فتسجيل الدخول بـ Google يستخدم OIDC فوقه.

See also: OIDC, JWT.

OIDC (OpenID Connect)
طبقة هوية فوق OAuth 2.0 تُضيف id_token موقَّعاً يحمل ادّعاءات هوية المستخدم. ما تستخدمه معظم تدفّقات “سجّل الدخول بـ X” تحت السطح هو OIDC. يمنح OAuth الوصول إلى الموارد؛ أما OIDC فيخبر التطبيق أي مستخدم صادق وكيف يتحقّق من ذلك الادّعاء.

See also: OAuth 2.0, JWT.

JWT (JSON Web Token)
كائن JSON موقَّع (واختيارياً مُعمَّى) يُمرَّر كسلسلة معتمة — عادة في ترويسة Authorization: Bearer. تسمح JWTs للخدمات بالتحقّق من ادّعاء دون الرجوع إلى مزوّد الهوية، وهو سريع لكنه يجعل الإبطال صعباً: العُمر القصير ورموز التحديث هي التدبير العملي. تحقّق دائماً من التوقيع و iss و aud و exp؛ ولا تقبل خوارزمية none أبداً.

See also: OAuth 2.0, OIDC.

مفتاح API
سلسلة سرّية طويلة العمر يُرسلها التطبيق المُتّصِل مع كل طلب، عادة في ترويسة HTTP. أبسط من OAuth، لكنها أسهل في التسريب وأصعب في الإبطال السلس. عامِل مفاتيح API بوصفها أسرار إنتاج: أبقها خارج عناوين URL و git، احصر نطاق كل مفتاح بأضيق صلاحيات، دوّرها بجدول، وأبطلها فوراً بعد الانكشاف.
mTLS (TLS متبادل)
يُصادِق كلا طرفي اتصال TLS بعضهما البعض بالشهادات بدلاً من أن يُقدّم الخادم شهادة وحده. تصبح شهادة العميل هي هوية الخدمة المُتّصلة — شائعة في حركة المرور بين الخدمات داخل عنقود، وفي واجهات بنوك أو حكومات تحتاج مصادقة قوية للشركاء.

See also: TLS.

MFA (المصادقة متعدّدة العوامل)
اشتراط دليلين مستقلّين أو أكثر للهوية لتسجيل الدخول: شيء تعرفه (كلمة مرور)، شيء تملكه (مفتاح أجهزة أو هاتف)، شيء أنت (قياس حيوي). أعلى ضابط فردي إيقافاً لاختطاف الحسابات. مفاتيح الأجهزة (FIDO2 / WebAuthn) أفضل مقاومةً للتصيّد؛ تليها تطبيقات TOTP؛ أما SMS فأضعف لأن أرقام الهاتف قابلة للنقل أو الاعتراض. مع ذلك، أي عامل ثانٍ أفضل من كلمة المرور وحدها.
اختطاف الحساب (ATO)
ينتهي الأمر بأن يحوز المهاجم اعتمادات أو جلسة مستخدم شرعي أو رمز جلسة ويتصرّف بوصفه. تتنوّع المصادر — إعادة استخدام كلمات مرور مسرّبة، تصيّد، برمجية خبيثة على جهاز المستخدم، خطأ في الخادم — لكن الحركة داخل التطبيق قد تبدو كأنها من المستخدم الحقيقي. تسجيل التدقيق، كشف الشذوذ، والمصادقة المُكثَّفة للإجراءات الحسّاسة هي الدفاعات الحاملة بعد تمكين MFA.

See also: MFA.

أمان الموبايل

تُشحَن تطبيقات الموبايل في حزم مُجمَّعة يستطيع أي شخص تنزيلها وفكّ شيفرتها. العمل الأمني يحدث وقت التشغيل وفي ملف الإفصاح (manifest) — ولا أحد من هذين سرّياً.

APK (Android Package)
الملف على شكل ZIP الذي يشحن تطبيق أندرويد. يستطيع أي شخص تنزيل APK من متجر Play أو مرآة طرف ثالث وفكّ شيفرته — لا يخفي أندرويد شيفرتك ولا سلاسلك ولا ملفات أصولك. أيّ شيء يجب أن يبقى سرّياً يجب أن يعيش على خادم تتحكّم به.

See also: AndroidManifest, مكوّن مُصدَّر.

IPA (iOS App Archive)
مكافئ Apple لـ APK. التوزيع أكثر تحكّماً من أندرويد — متجر Apple لا يسمح للباحثين بتنزيل IPA عشوائي — لكن جهازاً مخترقاً يعطي الرؤية نفسها، فينطبق منع شحن الأسرار في الحزمة بذات الصرامة.
AndroidManifest
ملف AndroidManifest.xml الذي يشحنه كل APK. يصرّح باسم الحزمة وإصدارها والصلاحيات التي يطلبها التطبيق والمكوّنات (الأنشطة، الخدمات، المستقبِلات، المزوّدون) التي يكشفها — بما في ذلك ما إذا كان كل منها مُصدَّراً لتطبيقات أخرى على الجهاز. في أندرويد الحديث، يجب على المكوّنات ذات intent filters أن تصرّح بـ android:exported صراحةً. ملف الإفصاح هو أسرع نقطة بدء لمراجعة أمان الموبايل.

See also: مكوّن مُصدَّر, APK.

مكوّن مُصدَّر
نشاط أو مستقبِل أو خدمة أو مزوّد محتوى في أندرويد يمكن لتطبيقات أخرى على الجهاز ذاته تشغيله. مفيد عند رغبتك في تعاون التطبيقات؛ خطر عندما يستطيع تطبيق معادٍ تشغيل مكوّنك بمدخلات مُصاغة. ضع android:exported="false" في كل موضع لا يحتاجه؛ وما تبقّى عامِله بوصفه مدخلاً غير موثوق.

See also: AndroidManifest.

الرابط العميق
عنوان يُعالَج داخل التطبيق بدلاً من المتصفح، يُصرَّح به في AndroidManifest (أو نظيره في iOS). الروابط العميقة ميزة UX ممتازة ومتّجه هجوم شائع: يمكن لرابط خبيث إنزال المستخدم داخل تطبيقك في شاشة ذات امتياز، أحياناً مع تجاوز فحص المصادقة أو الحالة الذي يحمي مسار الدخول الطبيعي.

See also: مكوّن مُصدَّر.

تثبيت الشهادة
يرفض التطبيق الوثوق بأي شهادة TLS باستثناء مجموعة صغيرة يتوقعها. يمكن للتثبيت أن يحجب الاعتراض عبر وكيل محلي، وهذا يساعد ضد الشبكات المعادية، لكنه يكسر أيضاً التصحيح، الفحص المؤسسي، والاختبارات الأمنية. ثبّت على المفتاح العام (SPKI)، لا على شهادة طرفية واحدة، واشحن مفاتيح احتياطية وخطة تدوير.

See also: TLS.

MASVS (معيار التحقّق من أمان تطبيقات الموبايل من OWASP)
قائمة بضوابط أمان تطبيقات الموبايل، مُجمَّعة بحسب المنصّة والفئة (تخزين، تشفير، مصادقة، شبكة، جودة الشيفرة، صمود). يستخدم زمام فئات MASVS في تصنيف نتائج APK / IPA.

الوضع السحابي

إعدادات السحابة هي الموضع الذي تتحوّل فيه الأخطاء الصغيرة إلى كوارث كبيرة. مربّع تأكيد نسيت إلغاءه قد يضع قاعدة بيانات على الإنترنت العام. المصطلحات هنا هي الأكثر ظهوراً في تحقيقات ما بعد الحوادث.

IAM (إدارة الهوية والوصول)
نظام مزوّد السحابة الذي يقرّر من (مستخدم بشري، خدمة، خادم) يستطيع فعل ماذا (قراءة دلو، نشر دالة، تغيير مجموعة أمان). تبدأ اختراقات سحابية كثيرة من خطأ في IAM: دور بصلاحيات *:* مُعيَّن لعبء عمل لا يحتاج إلا s3:GetObject على بادئة S3 واحدة.

See also: RBAC.

RBAC (التحكّم بالوصول حسب الدور)
نموذج تحكّم بالوصول تُجمَّع فيه الصلاحيات في أدوار وتُعيَّن الأدوار للأشخاص أو الخدمات. مكافئ Kubernetes لـ IAM السحابي. يتوسّع RBAC أفضل من كتابة صلاحيات لكل مستخدم، لكنه يُفرِط في المنح بسهولة إن حصل كل فريق على دور admin لأن الأدوار الأضيق تحتاج وقتاً للتعريف.

See also: IAM.

دلو S3 عام
دلو Amazon S3 مُهيَّأ للسماح بالقراءات المجهولة (أو، أسوأ، الكتابات). مصدر اختراقات لا حصر لها لأن المحتوى غالباً ملفات عملاء أو نسخ احتياطية. ينطبق الشكل نفسه على كل سحابة — Google Cloud Storage و Azure Blob. ينبغي أن تبقى الصلاحيات مغلقة افتراضياً؛ فعّل ضوابط منع الوصول العام وراجع كل دلو تذكر ACL أو سياسته AllUsers أو Principal: "*" أو كتابة عامة.
IMDSv2 (الإصدار الثاني من خدمة ميتاداتا النسخة)
الإصدار المعتمد على الرموز من خدمة الميتاداتا في AWS. يجب على المُتّصِلين إرسال طلب PUT أولاً للحصول على رمز جلسة، ثم تضمينه في طلبات GET اللاحقة. يحجب هذا كثيراً من مسارات SSRF إلى الاعتمادات لأن أدوات SSRF البسيطة لا تستطيع ضبط الطريقة أو الترويسات. افرض IMDSv2 فقط على كل نسخة EC2.

See also: SSRF.

مجموعة أمان
المكافئ السحابي لجدار ناري مضيف ذي حالة. تسمّيها AWS مجموعة أمان؛ تستخدم سحابات أخرى أسماء مشابهة. قاعدة واحدة مهملة — 0.0.0.0/0 على منفذ قاعدة بيانات — تصبح مصدراً متكرراً للاختراقات. ارفض افتراضياً، اسمح بنطاقات مصدر ضيّقة، وراجع التغييرات بوصفها شيفرة.
ASN (رقم نظام مستقل)
الرقم الذي يحدّد كياناً يُشغِّل شريحة من الإنترنت — مزوّد سحابة، ISP، مؤسسة كبيرة. ينتمي كل عنوان IP إلى ASN واحد بالضبط في وقت معيّن؛ ومعرفة ASN تخبرك هل يقع العنوان مثلاً في مزوّد سحابة، شبكة شركة، أم ISP سكني. لا يثبت ASN الملكية وحده، لكنه قرينة قوية للتوجيه وفرز سطح الهجوم.

See also: CIDR.

CIDR (التوجيه بين النطاقات بلا تصنيف)
ترميز نطاق من عناوين IP: 10.0.0.0/24 يغطّي 256 عنواناً. مُستخدم في كل مكان من قواعد الجدران النارية إلى إعداد VPC ونطاق الاشتباك. الرقم بعد الشرطة المائلة يحسب عدد بتّات العنوان التي تظل ثابتة؛ يستطيع الباقي أن يتغيّر. كلما صغر رقم الشرطة المائلة، كبر النطاق.

الاستكشاف وسطح الهجوم

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

سطح الهجوم
مجموع النقاط التي يستطيع المهاجم تجريبها للدخول أو الاستخراج. يشمل سطح الهجوم الداخلي الموظفين والحواسيب المحمولة ومسارات الحركة الجانبية؛ أما سطح الهجوم الخارجي — الذي يقيسه زمام — فهو كلّ ما يصل إليه شخص من الخارج: نطاقاتك، نطاقاتك الفرعية، شهاداتك، خدماتك المكشوفة، إعداد بريدك، وأي أثر نشرته (متاجر التطبيقات، مستودعات git، ملفات جافاسكربت).

See also: EASM.

EASM (إدارة سطح الهجوم الخارجي)
علم اكتشاف ومراجعة كل ما تكشفه المنظّمة للإنترنت العام باستمرار — كي إن أشار نطاق فرعي منسي إلى خدمة مُتقاعدة أو ظهر لوح إدارة مكشوف أو كشفت شهادة مضيفاً جديداً، تجده قبل أن يجده مهاجم. زمام أداة EASM يمكنك تشغيلها على نفسك.

See also: سطح الهجوم.

نطاق فرعي
اسم يعيش تحت أصلك: api.example.com، staging.example.com. عدد ما تملك غالباً أكبر مما تتذكّر، لأن مضيفات staging وبوابات المورّدين والحملات القديمة تتراكم. تعداد النطاقات الفرعية هو عادةً الجولة الأولى في الاستكشاف الخارجي.
الاستيلاء على نطاق فرعي
هجوم يستغلّ مؤشّر DNS مُتدلٍّ للمطالبة بنطاق فرعي لم تعد تستخدمه. يسجّل المهاجم اسم الدلو السحابي أو اسم مضيف SaaS الذي لا يزال CNAME الخاص بك يشير إليه، ثم يخدم ما يشاء تحت نطاقك الفرعي — وهو ما تعامله المتصفحات ومصادقة البريد على أنه نطاقك. الإصلاح هو حذف سجل DNS في الوقت ذاته الذي تحذف فيه الخدمة.

See also: DNS مُتدلٍّ, سجل CNAME.

مسح المنافذ
سؤال كل منفذ مرقَّم على مضيف عمّا إذا كان هناك ما يستمع. الإخراج هو “مفتوح / مغلق / مُرشَّح” لكل منفذ. تجمع الماسحات الحديثة بين مصافحات TCP وفحوص UDP ومسبارات TLS، وتعمل بمعدّلات لا تُعطّل الخدمات، ثم تُتابع بالتقاط بانر.

See also: التقاط البانر.

التقاط البانر
حالما يُعلَم أن منفذاً مفتوح، سؤال الخدمة على الطرف الآخر أن تعرّف عن نفسها — وتفعل معظم الخوادم ذلك، أحياناً بسلاسل إصدار دقيقة بما يكفي للربط بـ CVE. تستخدم الفحوصات المهذّبة مسباراً أو مسبارين مُحكَمَي الصياغة لكل منفذ؛ أما الفحوصات الصاخبة فتجرّب تخمينات بروتوكول كثيرة وغالباً تشغّل تنبيهات كشف الاقتحام.

See also: مسح المنافذ.

WHOIS
البروتوكول الذي يعيد معلومات تسجيل نطاق أو نطاق IP — المسجِّل، تاريخ التسجيل، خوادم الأسماء، و(حسب الولاية القضائية) جهة اتصال المُسجِّل. RDAP هو البديل الحديث لكثير من عمليات البحث وبصيغة أكثر تنظيماً. تُخفي خدمات الخصوصية معظم تفاصيل الاتصال، لكن تواريخ التسجيل وخوادم الأسماء لا تزال تخبر قصّة مفيدة.
بصمة تقنية
تحديد البرمجيات العاملة خلف نقطة شبكة من أنماط استجاباتها — ترويسات HTTP، الصفحات الافتراضية، خصائص مصافحة TLS، نصّ الأخطاء، حزم جافاسكربت. تُستخدم لبناء قائمة “هذا المضيف يشغّل WordPress 6.4 على Apache 2.4 على Ubuntu” كي تجيب بيانات الثغرات: “أي من هذه الإصدارات معروف السوء؟”

الاشتباك والإجراءات

مفردات العمل الأمني المُصرَّح به. معرفة نوع الاشتباك الذي تجريه تُبقي المختبِرين والمُلّاك والمحامين على الصفحة ذاتها.

اختبار الاختراق
مهمة مُصرَّح بها ومعمّقة يفحص فيها المختبِر أنظمة بعينها بنشاط ليُبرهن ما يستطيع المهاجم فعله. محدّدة الوقت، محصورة النطاق، وموجَّهة بهدف: ربط الأخطاء، تصعيد الامتيازات، إثبات الأثر. تتميّز عن المراجعة الخارجية غير التطفّلية التي لا تقرأ سوى الإشارات العامة وتتجنب الاستغلال.

See also: الفريق الأحمر, الإفصاح المسؤول.

الفريق الأحمر
اشتباك أوسع يشمل الهندسة الاجتماعية ومحاولات الوصول المادي والبقاء بعد الوصول الأوّلي — يحاكي كتيب خصم حقيقي بدلاً من إيجاد أقصى عدد من الأخطاء. كثيراً ما يُقيَّم بما إذا كان المدافعون كشفوا النشاط وحققوا فيه واحتووه.

See also: اختبار الاختراق.

مكافأة الأخطاء
برنامج مستمر تدعو فيه شركة باحثين مستقلّين لإيجاد ثغرات وتدفع مقابل كل تقرير مقبول. يُنشَر النطاق ومستويات الخطورة وطرق الاختبار المقبولة مسبقاً. مستخدمو زمام في السعودية سيعرفون BBSA؛ أما HackerOne و Bugcrowd فمنصّتان عالميتان واسعتا الاستخدام.

See also: الإفصاح المسؤول.

الإفصاح المسؤول
العُرف الذي يمنح فيه باحث وجد ثغرةً للمورّد نافذة معقولة — تسعون يوماً غالباً — لإصلاحها قبل أي حديث علني. يُتوقَّع من المورّدين الردّ، شحن تصحيح، ونسب الفضل للباحث. الإفصاح المنسّق عن الثغرات (CVD) هو الاسم الرسمي الأدق، لأن الطرفين ينسّقان التوقيت والتفاصيل.

See also: مكافأة الأخطاء.

النطاق
الاتفاق المكتوب الذي يُغطّي ما يجوز وما لا يجوز خلال اشتباك أمني — أي مضيف، أي طرق اختبار، أي أوقات، أي بيانات، وأي إثبات يكفي. العمل خارج النطاق ليس اختباراً أمنياً برضى؛ بل إساءة استخدام كمبيوتر، مهما كانت النيّة.

See also: مكافأة الأخطاء.

BBSA (Bug Bounty Saudi Arabia)
المنصّة الوطنية السعودية لمكافأة الأخطاء التي تستضيف قائمة منسّقة من البرامج للشركات المرخّصة أو المقيمة في السعودية. تشبه Bugcrowd أو HackerOne في الشكل، لكن بنطاق ومكافآت وتدفّق تقارير خاصة بالسعودية.

أساسيات التشفير

تقع خمس مفاهيم أولية تحت كلّ ضابط أمني حديث تقريباً. لست بحاجة إلى تنفيذها — بل إلى معرفة ما تَعِد به وأين يُناسب استخدام كلّ منها.

دالة تجزئة (SHA-256)
دالة باتّجاه واحد تُحوِّل مُدخَلاً بأي حجم إلى بصمة بحجم ثابت (“ملخّص”). تنتج SHA-256 ملخّصاً من 32 بايت، ويُعرض غالباً في 64 خانة hex. تُستخدم لبصم الملفات، توقيع المحتوى بطريقة غير مباشرة، وكشف التلاعب: غيّر بايتاً واحداً في ملف فتتغيّر تجزئة SHA-256 بنمط لا يمكن التنبؤ به. التجزئات الأقدم — MD5 و SHA-1 — لا تزال تُرى لكن ينبغي تقاعدها حيث تهم مقاومة التصادم.
HMAC (رمز مصادقة الرسالة المبني على التجزئة)
مخطّط يجمع دالة تجزئة بمفتاح سرّي مُشترَك لإنتاج وسم يُثبِت أن الرسالة جاءت من جهة تملك ذلك المفتاح وأنها لم تُعدَّل. قياسي لتوقيع طلبات API، حمولات webhooks، وملفات تعريف ارتباط الجلسات: أعد حساب الوسم بالسر المشترك وقارنه قبل الثقة بالحمولة. HMAC-SHA-256 افتراضي آمن.
AES (معيار التشفير المتقدّم)
الشيفرة المتناظرة الكُتلية وراء كلّ بروتوكول آمن حديث تقريباً. AES-128 و AES-256 آمنان في أنماط AEAD مثل GCM؛ أما النمط الأقدم CBC فهشّ من دون MAC إضافي وتعامل دقيق مع padding. اختر AES-GCM ما لم يكن لديك سبب محدّد لخلاف ذلك، ولا تعد استخدام nonce في GCM مع المفتاح نفسه أبداً.

See also: التشفير المُصادَق (AEAD).

التشفير المُصادَق (AEAD) (التشفير المُصادَق مع البيانات المُشارَكة)
بناء مجمَّع يُعمّي ويُصادِق في مرور واحد. النص المُعمَّى غير قابل للقراءة بدون المفتاح، والعبث ولو ببتّ واحد يُفشِل فكّ التعمية بشكل نظيف. البيانات المُشارَكة، مثل نوع السجل أو رقم التسلسل، تُصادَق ولا تُعمّى. AEAD هو الافتراضي الصحيح لأي تصميم جديد؛ أما المخطّطات المنفصلة “تعمية + MAC” فأسهل في ارتكاب الخطأ.

See also: AES.

تدوير المفاتيح
ممارسة استبدال مفتاح تشفيري وفق جدول أو بعد اشتباه انكشاف، كي يكون لدى المفتاح المسروق نطاق ضرر محدود. خطّط للتدوير من البداية: ضمّن معرّفات مفاتيح، واقبل القديم والجديد خلال الانتقال، ثم أوقف القديم بعد انتقال كل عميل.