ملاحظة ميدانية 03 / أمن البنية التحتية

الخدمة التي تبدأ بالعمل ليست سوى الخطوة الأولى.

تشخيص مشكلة أذونات في حاوية مع إبقاء منافذ الاستماع الخاصة بالمصادقة داخل حدود مقصودة.

  • FreeRADIUS
  • Docker
  • Proxmox

بقلم صالح أبو حسن · مهندس أمن معلومات أول

نقطة البداية.

نشرت FreeRADIUS في بيئة Linux قائمة على Docker ضمن أعمالي في البنية التحتية. وكان على الحاوية أن تبدأ العمل بشكل موثوق وأن تقرأ ملفات الإعداد المُركَّبة فيها، دون كشف منافذ المصادقة على نطاق أوسع مما هو مقصود.

ما قمت به.

  1. تحققت من حساب الخدمة في صورة الحاوية ومن مسارات الإعداد. وكان الحساب freerad يستخدم UID وGID بالقيمة 101 في الصورة التي فحصتها.
  2. شخّصت مشكلة في أذونات الإعداد، وصحّحت ملكية المجموعة لملفات الإعداد المُركَّبة بدلًا من جعلها قابلة للكتابة من قِبل الجميع.
  3. تأكدت من أن الحاوية ظلت قيد التشغيل، وفحصت ربط منافذ UDP. وخلال الاختبار المسجَّل، كان المنفذان 1812 و1813 مربوطين بعنوان loopback.

القرارات والمفاضلات.

01

إصلاح الملكية، لا تعديل الأذونات دون تمييز

التصحيح الذي يراعي حساب الخدمة أدق من chmod 777. ويجب التحقق من المالك والمجموعة المناسبين بمطابقتهما مع الصورة الفعلية والملفات المُركَّبة.

02

البدء بمنافذ استماع على loopback فقط

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

03

الفصل بين الحالة الصحية للخدمة والمصادقة

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

فحص الحالة الصحية للخدمة وحدود الوصول.

أوامر مُعاد بناؤها، تقتصر على القراءة. ولا تتضمن أسرارًا مشتركة، ولا عناوين شبكة فعلية، ولا ملفات إعداد مُصدَّرة.

Shell / مثال تقني
docker inspect --format \
  'Status={{.State.Status}} Restarts={{.RestartCount}}' freeradius

docker port freeradius

docker exec freeradius sh -c \
  'id freerad || id radius; for d in /etc/raddb /etc/freeradius; do [ -e "$d" ] && ls -ld "$d"; done; true'

# Confirm the intended bind address, not just the port number.

ما تحققت منه.

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

النطاق والحدود.

هذه دراسة حالة في الإعداد والتشخيص. ولا تدّعي اكتمال فرض 802.1X، ولا تصميم EAP تم التحقق منه، ولا نشرًا في بيئة الإنتاج. وقيمة UID والمسارات التي فُحصت خاصة بهذه الصورة، ويجب التحقق منها مجددًا عند تغيّر الصورة.

العملية السليمة خط أساس. أما الهدف فهو حدود ثقة تم اختبارها.

مراجع تقنية.

Docker: Publishing and exposing ports (يُفتح في علامة تبويب جديدة)وثائق FreeRADIUS (يُفتح في علامة تبويب جديدة)

الملاحظة الميدانية التالية / البحث الأمني في بيئة مضبوطة

أعِد التجربة. ارصُد. تساءل.

اقرأ دراسة الحالة التالية