المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : حماية وتأمين tmp ب nodev, nosuid وجعل /tmp كملف نظام



loulou ange
11-02-2013, بتوقيت غرينيتش 02:20 AM
السلام عليكم ورحمة الله وبركاته

درس مفصل حماية جديد وانا شخصياً شايفه مهم جدا .. وهو تأمين مسار tmp بالاختيارات nodev, nosuid,noexec
مسارات التخزين المؤقتة مثل /tmpاو /var/tmp او /dev/shm دول اللى بيوفروا مساحة لملفات الاختراق اللى بتوفر للمخترق المنفذ اللى يمر منه للسيرفر SERVER .

*حماية خاصة ل /tmp وجعله كملف نظام يخلى انه من الصعب جدا اختراقه

رمز PHP:

<code style="white-space:nowrap"> <code> mkdir -p /root/images/
dd if=/dev/zero of=/root/images/tmpfile.bin bs=1 count=0 seek=4G
</code> </code>

ثم
رمز PHP:

<code style="white-space:nowrap"> <code> mkfs.ext4 /root/images/tmpfile.bin
</code> </code>

رمز PHP:

<code style="white-space:nowrap"> <code> mount -o loop,rw,nodev,nosuid,noexec /root/images/tmpfile.bin /tmp
chmod 1777 /tmp
</code> </code>

الخطوة اللى فاتت .. عملنا ملف جديد اصبح ملف نظام واضفنا له الاختيارات الثلاثة
ننفذ التالى
رمز PHP:

<code style="white-space:nowrap"> <code> mount -o rw,noexec,nosuid,nodev,bind /tmp /var/tmp
</code> </code>


رمز PHP:

<code style="white-space:nowrap"> <code> vi /etc/fstab
</code> </code>

هانعدل على ال /tmp كالتالى
رمز PHP:

<code style="white-space:nowrap"> <code> /root/images/tmpfile.bin /tmp ext4 rw,noexec,nosuid,nodev,bind 0 0
</code> </code>

نضيف ايضا
رمز PHP:

<code style="white-space:nowrap"> <code> /tmp /var/tmp none rw,noexec,nosuid,nodev,bind 0 0
</code> </code>

نبحث عن السطر الخاص ب/tmp
رمز PHP:

<code style="white-space:nowrap"> <code> UUID=0aef28b9-3d11-4ab4-a0d4-d53d7b4d3aa4 /tmp ext4 defaults 1 2
</code> </code>

نضيف فى الاختيارات الخاصة اللى قولنا عليها يكون كالتالى
رمز PHP:

<code style="white-space:nowrap"> <code> UUID=0aef28b9-3d11-4ab4-a0d4-d53d7b4d3aa4 /tmp ext4 defaults,nodev,nosuid,noexec 1 2
</code> </code>

نضيفهم ايضا ل /dev/shm
نبحث عن
رمز PHP:

<code style="white-space:nowrap"> <code> tmpfs /dev/shm tmpfs defaults 0 0
</code> </code>

نغير انها تكون



رمز PHP:

<code style="white-space:nowrap"> <code> tmpfs /dev/shm tmpfs defaults,nodev,nosuid,noexec 0 0
</code> </code>

ايضا نحمى التمب ونضيف السطر التالى
رمز PHP:

<code style="white-space:nowrap"> <code> /tmp /var/tmp none rw,noexec,nosuid,nodev,bind 0 0
</code> </code>

نحفظ ونقفل الملف
دلوقتى نفعل الاختيارات من غير مانعمل ريبوت للسيرفر SERVER نفذ التالى :
رمز PHP:

<code style="white-space:nowrap"> <code> mount -o rw,noexec,nosuid,nodev,bind /tmp/ /var/tmp/
mount -o remount,noexec,nosuid,nodev /tmp
mount -o remount,noexec,nosuid,nodev /dev/shm
</code> </code>

ونأكد اللى عملناه بالتالى
رمز PHP:

<code style="white-space:nowrap"> <code> mount
mount | less
mount | egrep --color -w '^(tmpfs|/tmp)|/tmp'
</code> </code>

بعض النقاط :
nodev - عدم ترجمة الرموز اوحجب الادوات الخاصة بملف النظام
noexec - عدم السماح بتنفيذ اى مر مباشرة بملف النظام المنشأ
nosuid - الغاء فاعلية محدد المستخدم او المجموعة

لكم تحياتى IA.




https://fbcdn-sphotos-d-a.akamaihd.net/hphotos-ak-ash4/482113_236967293114455_1193518507_n.png (http://www.dzbatna.com)
©المشاركات المنشورة تعبر عن وجهة نظر صاحبها فقط، ولا تُعبّر بأي شكل من الأشكال عن وجهة نظر إدارة المنتدى (http://www.dzbatna.com)©

استعمل مربع البحث في الاسفل لمزيد من المواضيع


سريع للبحث عن مواضيع في المنتدى