ما هو SMS Pumping؟ وكيف تحمي رسائل OTP وميزانية الإرسال من الاحتيال؟
تعتمد المتاجر والتطبيقات والبنوك والمنصات الرقمية على رسائل OTP للتحقق من رقم الجوال، وتسجيل الدخول، وإنشاء الحسابات، واستعادة كلمات المرور.
لكن أي صفحة تسمح بإرسال رمز تحقق قد تتحول إلى نقطة استهداف إذا تمكنت البرامج الآلية من طلب آلاف الرسائل دون ضوابط كافية.
يُعرف هذا النوع من الاحتيال باسم SMS Pumping أو Artificially Inflated Traffic — AIT، ويؤدي إلى تضخيم حركة الرسائل بصورة مصطنعة، ورفع تكلفة الإرسال، وإرباك مؤشرات الاستخدام، وربما تعطيل تجربة المستخدمين الحقيقيين.

ما هو SMS Pumping؟
SMS Pumping هو إساءة استخدام النماذج أو واجهات API التي تطلق رسائل نصية تلقائيًا. يرسل المهاجم أو البوت عددًا كبيرًا من طلبات OTP أو روابط التحميل أو رسائل التحقق إلى أرقام ووجهات محددة دون وجود مستخدمين حقيقيين خلف هذه الطلبات.
في بعض السيناريوهات، يستهدف المحتال أرقامًا أو شبكات يمكنه الاستفادة ماليًا من حركة الرسائل المرسلة إليها. وفي سيناريوهات أخرى، يكون الهدف استنزاف ميزانية الشركة أو التأثير في خدمتها.
كيف تحدث هجمات ضخ الرسائل؟
لنفترض أن تطبيقًا يعرض حقلًا لإدخال رقم الجوال، ثم يستدعي SMS API مباشرة عند الضغط على زر “إرسال رمز التحقق”.
يمكن للمهاجم إنشاء برنامج آلي ينفذ الخطوات التالية:
- يولد أرقام جوال أو يستخدم نطاقات أرقام محددة.
- يرسل طلبات متكررة إلى صفحة التسجيل أو API.
- يغير عنوان IP أو بيانات الجلسة لتجاوز الضوابط البسيطة.
- يطلق آلاف رسائل OTP خلال مدة قصيرة.
- لا يكمل عملية التحقق أو إنشاء الحساب.
تُسجل الرسائل كحركة إرسال فعلية، رغم أنها لم تنتج مستخدمين أو معاملات حقيقية.
ما الفرق بين SMS Pumping وسرقة رمز OTP؟
في SMS Pumping، يكون الهدف الأساسي توليد الرسائل وتضخيم التكلفة أو الحركة. لا يحتاج المهاجم بالضرورة إلى معرفة الرمز أو تسجيل الدخول إلى حساب الضحية.
أما سرقة OTP فتهدف إلى الحصول على رمز مستخدم حقيقي عبر التصيد أو الهندسة الاجتماعية أو اعتراض الرسالة، ثم استخدامه للوصول إلى حسابه.
قد يستهدف النوعان صفحة التحقق نفسها، لكن مؤشرات الخطر وإجراءات الاستجابة ليست متطابقة.
لماذا تستهدف الهجمات صفحات التسجيل؟
تعد صفحات التسجيل، وتسجيل الدخول، واستعادة كلمة المرور، وإعادة إرسال الرمز من أكثر المسارات عرضة للهجوم؛ لأنها ترسل رسالة فور إدخال رقم الجوال، وغالبًا لا تتطلب وجود حساب موثق مسبقًا.
وتشير وثائق AWS إلى أن البوتات تستهدف خصوصًا تدفقات تسجيل الدخول وإنشاء الحسابات التي تطلق رسالة SMS مباشرة. كما توضح Google أن خدمات المصادقة الثنائية والتحقق من الهاتف أهداف محتملة لاحتيال الرسائل.
علامات تدل على تعرضك لهجوم SMS Pumping
قد تشير علامة واحدة إلى حملة تسويقية ناجحة أو نمو طبيعي، لذلك يجب تحليل مجموعة من المؤشرات معًا، ومنها:
- ارتفاع مفاجئ في عدد رسائل OTP دون نمو مماثل في التسجيلات.
- انخفاض نسبة إكمال التحقق مقارنة بعدد الرموز المرسلة.
- تركّز الرسائل في دولة أو مشغل أو نطاق أرقام محدد.
- تكرار الطلبات من عنوان IP أو جهاز أو جلسة واحدة.
- كثافة الإرسال في أوقات غير معتادة.
- زيادة الأخطاء أو الأرقام غير الصالحة ضمن نطاقات محددة.
- ارتفاع التكلفة اليومية أو بالساعة بصورة غير متوقعة.
- طلبات إعادة إرسال متكررة دون إدخال الرمز.
تعتمد حلول كشف الاحتيال لدى مزودي الاتصالات على أنماط مثل التغير غير المعتاد في الوجهات، وحجم الرسائل لكل رقم أو نطاق أرقام، والأخطاء المرتبطة بهذه النطاقات.
تأثير SMS Pumping على الأعمال
ارتفاع التكلفة
كل طلب ناجح يصل إلى بوابة الرسائل قد ينتج رسالة مدفوعة، حتى عندما لا توجد معاملة حقيقية.
تعطيل المستخدمين الحقيقيين
قد تضطر الشركة إلى تشديد القيود بسرعة، ما قد يمنع بعض العملاء الفعليين من استلام الرمز.
تشويه مؤشرات الأداء
تبدو أعداد التسجيل أو طلبات التحقق مرتفعة، بينما تظل نسبة الإكمال ضعيفة، ما يؤدي إلى قرارات مبنية على بيانات غير دقيقة.
استهلاك الموارد
يزداد الضغط على API وقواعد البيانات والسجلات وأنظمة المراقبة، وقد ينشغل فريق الدعم والعمليات بتحليل الحركة الوهمية.
كيف تحمي رسائل OTP من SMS Pumping؟
لا توجد طبقة واحدة تمنع جميع الهجمات. الحماية الأفضل تجمع بين ضوابط التطبيق، ومراقبة المخاطر، وخصائص مزود الرسائل، وخطة استجابة واضحة.
1. طبّق Rate Limiting على أكثر من مستوى
لا تكتفِ بعدد الطلبات لكل رقم جوال. ضع حدودًا منفصلة حسب:
- رقم الجوال.
- عنوان IP.
- الحساب.
- الجهاز أو الجلسة.
- الدولة.
- بادئة الرقم.
- نقطة API المستخدمة.
يمكن مثلًا فرض فترة انتظار قبل إعادة الإرسال، وحد أقصى للطلبات خلال الساعة واليوم. يجب تحديد الأرقام وفق نمط الاستخدام الحقيقي، وليس نسخ إعداد واحد لجميع التطبيقات.
توفر بعض منصات التحقق حدودًا برمجية توقف الطلبات عند طبقة API قبل إرسال الرسالة، وهو ما يمنع التكلفة من الأساس.
2. احمِ النموذج من البوتات
استخدم نظامًا لتقييم الحركة الآلية أو تحديًا مناسبًا قبل استدعاء SMS API، وتأكد من التحقق من النتيجة على الخادم، لا في المتصفح فقط.
توضح Cloudflare أن Turnstile يولد رمزًا في متصفح المستخدم ثم يجب إرساله إلى الخادم للتحقق من صلاحيته. كما توفر Google تقييمًا للمخاطر يمكن استخدامه لاتخاذ قرار قبل إرسال رسالة التحقق.
لكن CAPTCHA وحده لا يكفي؛ إذ يمكن للمهاجمين تغيير الأجهزة والجلسات أو استخدام خدمات تجاوز التحديات. لذلك يجب دمجه مع Rate Limiting وتحليل السلوك والوجهة.
3. اسمح فقط بالدول التي تخدمها
إذا كانت خدمتك موجهة للسعودية فقط، فلا يوجد سبب افتراضي للسماح بإرسال OTP إلى جميع دول العالم.
استخدم قائمة سماح للدول المطلوبة، واطلب تحققًا إضافيًا أو مراجعة للدول عالية التكلفة أو غير المعتادة. توصي AWS بحظر الدول التي لا تعمل فيها الشركة واستخدام قواعد تصفية للوجهات التي ترتفع فيها مخاطر SMS Pumping.
4. قيّم المخاطر قبل الإرسال
لا تتعامل مع جميع الطلبات بالطريقة نفسها. ارفع مستوى التحقق عندما تجتمع مؤشرات مثل:
- جهاز جديد وIP غير معتاد.
- دولة لا تتطابق مع السوق المستهدف.
- عدد كبير من الأرقام من الجلسة نفسها.
- طلبات متتابعة دون إكمال التحقق.
- بادئة أرقام ظهرت فجأة في الحركة.
يمكن السماح للطلبات منخفضة المخاطر، وطلب تحدٍ إضافي للحركة المتوسطة، وحظر الطلبات عالية المخاطر.
5. اضبط دورة حياة OTP
اجعل رمز OTP:
- صالحًا لمدة قصيرة مناسبة للحالة.
- مستخدمًا لمرة واحدة فقط.
- مرتبطًا بالجلسة أو العملية.
- محدود المحاولات.
- غير قابل لإعادة الاستخدام بعد نجاح التحقق.
كما يجب وضع فترة انتظار لإعادة الإرسال بدل إنشاء رسالة جديدة مع كل ضغطة. توصي AWS باستخدام مدة صلاحية قصيرة لرموز OTP ضمن ممارسات أمان الرسائل.
6. فعّل التنبيهات والحدود المالية
راقب عدد الرسائل والتكلفة كل ساعة ويوم، وضع تنبيهات عند:
- تجاوز الحجم المتوقع.
- زيادة حركة دولة أو مشغل.
- انخفاض معدل التحقق.
- ارتفاع عدد الطلبات لكل مستخدم أو جهاز.
- تجاوز ميزانية محددة.
ويمكن إضافة Circuit Breaker يوقف أو يقيد المسار المتأثر عند تجاوز مستوى خطر معين، بدل انتظار اكتشاف المشكلة في الفاتورة.
7. افصل حركة OTP عن بقية الرسائل
استخدم مفاتيح API أو إعدادات وتقارير مستقلة لرسائل OTP قدر الإمكان. يساعد ذلك على تطبيق حدود دقيقة واكتشاف الانحراف دون التأثير في إشعارات الطلبات أو الرسائل التشغيلية الأخرى.
ماذا تفعل عند اكتشاف هجوم جارٍ؟
ابدأ بتحديد الدولة، والبادئة، وواجهة API، ومصدر الطلبات المتأثرة. ثم نفذ الإجراءات التالية حسب مستوى الخطر:
- شدد Rate Limits للمسار المتأثر.
- أوقف الدول والوجهات غير المستخدمة.
- فعّل تحديات البوتات للحركة المشبوهة.
- احظر عناوين IP والأجهزة والبادئات المتكررة مؤقتًا.
- ضع حدًا ماليًا أو حجميًا طارئًا.
- احتفظ بمعرفات الرسائل والتوقيتات والسجلات.
- تواصل مع مزود الرسائل لتحليل الوجهات والحركة.
- راقب تأثير الإجراءات في المستخدمين الحقيقيين.
- نفذ مراجعة بعد الحادث لتحديث القواعد والتنبيهات.
تجنب إيقاف OTP بالكامل ما لم يكن ذلك ضروريًا؛ فالأفضل عزل الوجهات أو المسارات المتأثرة للحفاظ على دخول المستخدمين الحقيقيين.
أخطاء شائعة
من أكثر الأخطاء شيوعًا وضع حد لكل رقم فقط؛ إذ يستطيع المهاجم استخدام آلاف الأرقام. ومن الأخطاء أيضًا تنفيذ Rate Limiting في واجهة المستخدم بدل الخادم، أو السماح بجميع الدول افتراضيًا، أو إنشاء رمز جديد مع كل طلب إعادة إرسال.
كذلك لا ينبغي انتظار ارتفاع الفاتورة لاكتشاف المشكلة، أو الاعتماد على CAPTCHA وحده، أو استخدام مفتاح API واحد لكل الرسائل دون فصل الصلاحيات والاستخدامات.
قائمة فحص للمطورين
قبل إطلاق أي تدفق OTP، تحقق من الآتي:
- التحقق من صيغة الرقم والدولة.
- السماح بالدول المطلوبة فقط.
- Rate Limiting حسب الرقم وIP والجهاز والجلسة.
- فترة انتظار لإعادة إرسال الرمز.
- حد أقصى للمحاولات.
- صلاحية قصيرة ورمز لمرة واحدة.
- حماية البوتات مع تحقق من الخادم.
- مراقبة نسبة الإرسال إلى التحقق الناجح.
- تنبيهات للحجم والتكلفة والدول.
- سجل تدقيق للحظر وتغيير الإعدادات.
- خطة استجابة ووسيلة تواصل مع مزود SMS.
- اختبار الضوابط قبل الإطلاق وبعد كل تحديث.
كيف تساعد OurSMS في رحلة إرسال OTP؟
توفر OurSMS واجهات SMS API وOTP API لربط المواقع والتطبيقات، إلى جانب مفاتيح API وتقارير حالات الرسائل وWebhooks. ويمكن استخدام هذه البيانات لبناء مراقبة داخلية تربط عدد الرسائل بنتائج التحقق الفعلية.
تبقى حماية SMS Pumping مسؤولية مشتركة بين التطبيق ومزود الرسائل وفرق الأمن والعمليات. لذلك يجب مناقشة الدول المستهدفة، وأحجام الإرسال المتوقعة، وحدود الاستخدام، والتقارير المتاحة مع فريق OurSMS عند تصميم رحلة OTP.
الخلاصة
SMS Pumping ليس مجرد ارتفاع في عدد الرسائل، بل إساءة استخدام لمسار التحقق يمكن أن يستنزف الميزانية ويشوه البيانات ويؤثر في المستخدمين الحقيقيين.
تبدأ الحماية قبل استدعاء SMS API: تحقق من الطلب، وطبّق حدودًا متعددة، واسمح بالوجهات المطلوبة فقط، وراقب معدل التحويل من إرسال الرمز إلى التحقق الناجح.
كلما اكتشفت الحركة غير الطبيعية قبل إرسال الرسالة، انخفضت التكلفة وأصبحت استجابتك أسرع وأكثر دقة.
هل تعتمد منصتك على رسائل OTP لتسجيل الدخول أو إنشاء الحسابات؟
تواصل مع فريق OurSMS لمراجعة متطلبات الإرسال، والدول المستهدفة، وربط OTP API أو SMS API مع تطبيقك، والتعرف على التقارير وWebhooks المتاحة لبناء مراقبة أدق لحركة الرسائل.
الأسئلة الشائعة
ما معنى SMS Pumping؟
هو توليد عدد كبير من رسائل SMS بصورة غير حقيقية من خلال إساءة استخدام صفحات التسجيل أو التحقق أو واجهات API.
هل SMS Pumping يعني سرقة رمز OTP؟
ليس بالضرورة. يركز SMS Pumping على تضخيم حركة الرسائل والتكلفة، بينما تركز سرقة OTP على الوصول إلى حساب مستخدم حقيقي.
كيف أعرف أن التطبيق يتعرض للهجوم؟
من أبرز العلامات ارتفاع رسائل OTP دون زيادة في التحقق الناجح، وتركّز الطلبات في دول أو نطاقات أرقام محددة، وتكرار الإرسال من أجهزة أو عناوين IP متشابهة.
هل يمنع CAPTCHA هجمات SMS Pumping؟
يساعد في تقليل الطلبات الآلية، لكنه لا يكفي وحده. يجب دمجه مع Rate Limiting وتقييد الدول وتحليل السلوك والمراقبة.
ما أفضل Rate Limit لرسائل OTP؟
لا يوجد رقم يناسب جميع التطبيقات. يجب تحديد الحدود بناءً على رحلة المستخدم وحجم الاستخدام، وتطبيقها على الرقم وIP والجهاز والحساب والجلسة.
هل يجب منع الإرسال الدولي؟
يجب السماح فقط بالدول التي تحتاج إليها الشركة. إذا كانت الخدمة داخل السعودية، فمن الأفضل حظر الوجهات الأخرى افتراضيًا إلا عند وجود حاجة موثقة.
ما المؤشر الأهم لمراقبة OTP؟
من أهم المؤشرات نسبة عمليات التحقق الناجحة إلى عدد الرسائل المرسلة، مع متابعة الحجم والتكلفة حسب الدولة والمشغل والوقت.
هل توفر OurSMS حماية تلقائية من SMS Pumping؟
تقدم OurSMS خدمات OTP وSMS API والتقارير وWebhooks، لكن يجب تأكيد خصائص الحماية والحدود المتاحة مع الفريق التقني وعدم افتراض وجود منتج حماية تلقائي غير موثق.
