أغلق الثغرات قبل أن يجدها أحد
أداة فحص رؤوس الأمان تقرأ رؤوس الحماية التي يرسلها خادم موقعك وتقيّم كل واحد منها: هل مضبوط أم غائب، وما أثر غيابه فعليًا على أمان الموقع. تناسب أي مسؤول موقع يريد إغلاق ثغرات شائعة قبل أن يستغلها طرف خبيث، خصوصًا مواقع تجمع بيانات عملاء أو تعرض نماذج دخول.
شغّلها أونلاين
شغّل هذه المهمة على خوادمنا باستخدام حسابك. الأدوات المجانية تعمل داخل متصفحك، أما هذه فتُخصم من رصيدك في KIT حسب السعر الموضّح أعلاه.
الرؤوس التي يقيّمها الفحص
يفحص التقرير رأس Content-Security-Policy الذي يحد المصادر المسموح تحميل محتوى منها داخل الصفحة، رأس Strict-Transport-Security الذي يفرض الاتصال المشفر دومًا مع الموقع، رأس X-Frame-Options الذي يمنع تضمين صفحتك في إطار من موقع خارجي، ورؤوسًا أخرى تتعلق بحماية المتصفح من هجمات شائعة معروفة منتشرة على الويب. يظهر كل رأس مع حالته: مضبوط بقيمة آمنة، مضبوط بقيمة ضعيفة، أو غائب تمامًا عن الاستجابة.
لماذا تهم هذه الرؤوس تحديدًا
غياب رأس X-Frame-Options يسمح لموقع خبيث بتضمين صفحة دخولك داخل إطار مخفي وخداع الزائر للنقر على عناصر لا يقصدها، وهجوم يُعرف باسم اختطاف النقرة الخبيث. غياب رأس Content-Security-Policy يوسّع أثر أي ثغرة حقن كود لو وُجدت في الموقع، بينما رأس Strict-Transport-Security يمنع خداع المتصفح للاتصال بنسخة غير مشفرة من الموقع نفسه في أي وقت من الأوقات مهما حاول أحد اختراقها.
من يحتاج هذا الفحص أكثر من غيره
أي موقع يعرض نموذج دخول أو يجمع بيانات دفع أو معلومات شخصية يستفيد أكثر من غيره من إغلاق هذه الثغرات، لأن أثر أي هجوم عليه أكبر بكثير من موقع تعريفي بسيط لا يجمع بيانات حساسة. المكاتب التي تتعامل مع بيانات عملاء حساسة — كمكاتب المحاماة والاستشارات المالية — تحتاج مراجعة دورية لهذه الرؤوس ضمن التزامها بحماية بيانات عملائها من أي تسريب.
تفسير التقرير وتطبيق التصحيح
يرفق التقرير مع كل رأس غائب شرحًا مختصرًا لأثره الفعلي على أمان الموقع، فتعرف أي إعداد تصلحه أولًا حسب خطورته الحقيقية عليك، لا قائمة تقنية مبهمة بلا ترتيب واضح للأولويات المهمة. سعر الفحص $0.002 فقط، ويُنصَح بتكراره بعد أي تعديل على إعدادات الخادم أو بعد إضافة خدمة خارجية جديدة للموقع تحمل كودًا تفاعليًا مضمّنًا يستحق المراجعة الدقيقة والمتكررة كل فترة.
حالات الاستخدام
مكتب محاماة يراجع نموذج تسجيل العملاء
قبل إطلاق نموذج تسجيل عملاء جديد على موقعه، يفحص مكتب محاماة رؤوس الأمان فيكتشف غياب رأس X-Frame-Options، فيضبطه قبل نشر النموذج للعموم.
متجر إلكتروني يستعد لموسم مبيعات كبير
قبل موسم مبيعات كبير، تفحص شركة الواحة للتجارة المحدودة رؤوس الأمان لصفحة الدفع، للتأكد من إغلاق كل ثغرة معروفة قبل ذروة الزوار.
وكالة تراجع أمان مواقع عملائها دوريًا
تفحص شركة الخليج الرقمية رؤوس الأمان لكل مواقع عملائها شهريًا عبر API، وتنبّه كل عميل برأس ناقص قبل أن يستغله أحد.
الأسئلة الشائعة
هل غياب رأس واحد يعني موقعي مخترق؟
لا، الغياب يعني ثغرة محتملة يمكن استغلالها لا اختراقًا فعليًا وقع بالفعل؛ الفحص وقائي لا تشخيص حادثة سابقة.
كم تكلفة فحص رؤوس الأمان لموقع واحد؟
$0.002 للفحص الواحد، ويُنصَح بتكراره بعد أي تعديل على إعدادات الخادم.
ما الفرق بين هذه الأداة وقراءة رؤوس HTTP العادية؟
هذه الأداة تركز فقط على رؤوس الحماية وتقيّم كل واحد منها؛ قراءة الرؤوس العادية تعرض كل الرؤوس دون تصنيف أمني.
هل يصلح التقرير الإعدادات تلقائيًا؟
لا، يرفق التقرير شرحًا لكل رأس غائب وأثره، لكن التطبيق الفعلي يتم من إعدادات الخادم لديك.
هل يناسب الفحص موقعًا صغيرًا لا يجمع بيانات حساسة؟
نعم، مفيد لأي موقع، لكنه أكثر إلحاحًا لمواقع الدفع ونماذج تسجيل الدخول تحديدًا.
هل أحتاج حسابًا للاستخدام؟
لا حساب اليوم؛ تفحص مباشرة وتدفع عبر PayPal عن كل استخدام فعلي.
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/web/security-headers \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://ejemplo.com"}'const res = await fetch("https://api.kit.forhosting.com/web/security-headers", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"url": "https://ejemplo.com"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/web/security-headers",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"url": "https://ejemplo.com"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/web/security-headers", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"url":"https://ejemplo.com"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"url":"https://ejemplo.com"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/web/security-headers", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"url": "https://ejemplo.com"
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "web.security_headers",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الحدود
timeout_sec | 30 |
max_crawl_pages | 25 |
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |