بايت NUL مضمّن هو قيمة صفرية (\u0000) تظهر داخل سلسلة نصية بدلاً من نهايتها. في C والعديد من واجهات برمجة التطبيقات الشبيهة بـ C، تُعامل السلاسل النصية على أنها منتهية بـ NUL، لذلك تتوقف المعالجة بمجرد رؤية NUL. وهذا يعني أن النص الظاهر قد يكون أطول مما تستخدمه الشفرة منخفضة المستوى فعليًا.
تكتسب هذه المسألة أهمية في الأمن لأن اختلاف معالجة السلاسل يمكن أن يؤدي إلى تجاوزات في المصادقة، أو أخطاء في الاقتطاع، أو أخطاء في التعامل مع الأسرار. على سبيل المثال، قد يقبل برنامجٌ أعلى مستوى كلمة مرور تحتوي على بايت NUL مضمّن باعتبارها قيمة واحدة كاملة، بينما قد تقارن دالة C فقط البادئة قبل البايت الصفري. يمكن للمهاجمين استغلال هذا الاختلاف لإضعاف الفحوصات أو إرباك المحللات، بينما يبحث المدافعون عنه عندما يعبر الكود حدود اللغات، خاصة بين Perl وC أو غيرها من الامتدادات الأصلية. يجب أن يمرر الكود الآمن أطوالًا صريحة بدلاً من الاعتماد على محددات النهاية.



