You are on page 1of 22

‫حماية المعلومات‬

‫بٌن الوقائع النظرٌة‪ ..‬واألسالٌب العملٌة‬

‫ملخص‬

‫ٌتكهى انبحث عن أين انًعهٌيات‪ ,‬يفيٌييا‪ ,‬أنٌاعيا ً طزق فً انتعايم و عيا‪.‬‬


‫إضافة إنى تسهٍظ انضٌء عهى جٌانب يتعهقة بنظى انتشغٍم ًاًايزىا ًانبزيجة ًتعهًٍاتيا كًدخم نبعض األسانٍب انًتبعة فً استغالل‬
‫ىذه األًايز ًانتعهًٍات فً اختزاق اننظى ًاالضزار بيا‪.‬‬
‫ًفً نياٌة انبحث نصائح ًيالحظات ٌنصح باتباعيا نتالفً األضزار انناجًة عن االختزاق اً األعًال انتخزٌبٍة عهى ًجو انعًٌو‪.‬‬

‫مجموعة حرس الحدود| لحماية أفضل‬

‫م‪ .‬طارق ماجد‬

‫بكالرٌوس تقانة معلومات‬

‫‪ 16‬نٌسان ‪2009‬‬
‫‪7rs Group| 4Best Security‬‬ ‫مجموعة حرس الحدود| لحماية أفضل‬

‫لمحة‪..‬‬

‫فً هذا العصر‪ ,‬عصر المعلومات‪ ,‬وبعد انتشار تقنٌة المعلومات واالتصاالت اصبح هناك ماٌسمى بـ ‪, global vision‬‬
‫ومعنى ذلك توجه النظرة نحو العالمٌة ‪ globally‬بعد ان كانت محلٌة ‪ locally‬وذلك قبل ظهور الشبكات واالتصاالت‬
‫الحدٌثة‪ ,‬حتى أنه اطلق على العالم اآلن وصف "القرٌة الصغٌرة"‪.‬‬

‫قدٌما ًا‪ ,‬كانت هذه النظرة مقتصرة على أشخاص محددٌن دون غٌرهم‪ ,‬ولكن ومع استمرار التطور فً مجال المعلومات‬
‫واالتصاالت أصبح من الالزم للجمٌع استخدام هذه التقنٌة وأن تتؤقلم مع الشكل الجدٌد للحٌاة‬

‫أما الشركات فقد اصبح لزاما ًا علٌها أن تستخدم هذه التقنٌة لتبقى ضمن جو المنافسة‪ ,‬التً اقتصرت سابقا ًا على نطاقات‬
‫محلٌة‪ ,‬لتتوسع هذا النطاق اآلن لٌشمل العالم بؤسره!‬

‫كل ذلك صب فً مصلحة الجمٌع‪ ,‬حٌث أصبح باالمكان ألي شخص من خالل شبكة االنترنت أن ٌحصل على ماٌرٌده مهما‬
‫كان ذلك بعٌداًا عنه‪ ,‬فعامل "المسافة" اآلن قد الغً من قائمة "التحدٌات" التً كانت تواجههم‪.‬‬

‫اآلن‪ ,‬أصبح أهم وأكبر تحدي للشركات حالٌا ًا ه و كٌف ستحافظ على مكانها التنافسً فً السوق العالمً باالعتماد على هذه‬
‫التقنٌات للتفوق فً تحقٌق المثالٌة المطلوبة وذلك على الصعٌد االداري واالنتاجً على حد سواء‪.‬‬

‫ي ظل هذا العالم "المفتوح" للجمٌع الخالً من تلك‬


‫ولكن فً ظل كل هذه االٌجابٌات التً أتت على الشركات وعمالئها‪ ,‬وف‬
‫القٌود الصارمة‪ ,‬ظهر عوضا ًا عن تلك التحديات القدٌمة "ك‬
‫المساف" تحدٌات جدٌدة من أهمها "أمن المعلومات"‪ ,‬حٌث انتشر‬
‫ة‬
‫ماٌدعى "الجرٌمة االلكترونٌة" حٌث السرقة والتدمٌر والتخرٌب من خالل الشبكة االلكترونٌة باالعتماد على طرق وتقنٌات‬
‫توصف بعضها بالمعقدة‪ ,‬بعد ذلك تبلورت لهذه الظاهرة قوانٌن خاصة بدأت فً الوالٌات المتحدة فً اواسط التسعٌنٌات من‬
‫القرن الماضً وفرضت على مستحقٌها غرامات باهظة وأحكام بالسجن تصل بعضها لعقود من السنٌن‪.‬‬

‫يفيٌو أين انًعهٌيات‪:‬‬

‫إن "أمن المعلومات" – "‪ "information security‬هو علم حدٌث فً مجال تقنٌة المعلومات ظهر لٌكون مسإوالًا عن‬
‫حماٌة المعلومات وحماٌة انظمة المعلومات "‪ "information systems‬م ماٌسمى بـ "قرصنة المعلومات" –‬
‫"‪ "information hacking‬وهً ماٌشمل ‪:‬‬

‫ًا‬
‫اضافة لمحاوالت التخرٌب والتدمٌر‪.‬‬ ‫محاوالت الدخول أو االستخدام غٌر المصرح به‪,‬‬

‫‪2‬‬
‫‪www.7rs.cc‬‬ ‫‪security@7rs.cc‬‬
‫‪7rs Group| 4Best Security‬‬ ‫مجموعة حرس الحدود| لحماية أفضل‬

‫كيف ظهرت اول أشكال القرصنة االلكترونية ؟‬

‫كان ظهور أول شبكة الكترونٌة موسعة على مستوى المدن فً ستٌنٌات القرن العشرٌن ممثلة بشبكة الهواتف االلكترونٌة‬
‫بداٌة لعصر الشبكات والمشاركة المفتوحة ‪.‬‬

‫فً بداٌة السبعٌنٌات من ذلك القرن‪ ,‬قام شخص باٌجاد طرق‬


‫مع بداٌة هذا العصر ظهرت بوادر لخطر لم ٌكن فً الحسبان‪ ,‬ف‬
‫واسالٌب الختراق شبكة الهواتف واستغالل بعض آلٌات عمل هذه الشبكة‪ ,‬من هذه االستغالالت كانت التجسس على‬
‫مكالمات جارٌة و اجراء مكالمات غٌر محسوبة وغٌرها من األسالٌب‪ ,‬وكل هذه الطرق تعتمد ع فهم آللٌة عمل الشبكة ومن‬
‫ثم اكتشاف مواطن ضعف "بالنسب له" تمكنه من استغاللها ألهدافه الشخصٌة‪.‬‬

‫انتشار واسع ألساليب جديدة في القرصنة بشكل مطرد وظهور طرق للتصدي ‪:‬‬

‫فً ثمانٌنٌات القرن الماضً بدأ انتشار القرصنة االلكترونٌة باالزدٌاد مع مرور الزمن متوازٌا ًا مع انتشار الحواسٌب‬
‫وتطورها المستمر و ظهور تقنٌات جدٌدة فً مجال االتصاالت والشبكات حٌث التطور بالسرعة العالٌة والكلفة األقل مما‬
‫زاد من عدد المستخدمٌن لهذه التقنٌات ومنها االقبال الكبٌر على شبكة االنترنت العالمٌة ‪.‬‬

‫فً تلك الفترة لم ٌكن هناك اي اهتمام او اخذ بالحسبان لهذا التحدي الجدٌد‪ ,‬حٌث لم تتخذ فً ذلك اي اجراءات مناسبة تطبق‬
‫على المعدات التً ٌتم وضعها فً الشبكة‪ ,‬مما أدى اال حصول كوراث كبٌرة لشركات اعتمدت على االنترنت كجزء أساسً‬
‫من عملها‪ ,‬فكانت محاوالت النهب والسلب او التدمٌر لتلك المواد‪.‬‬

‫سرق‬
‫ة‬ ‫اع غٌر مسبوق لنسبة‬
‫وكان أكثر من تضرر الشركات المصرفٌة حٌث سجلت االحصائٌات فً تلك الفترة عن ارتف‬
‫بطاقات االئتمان وكان ‪ %90‬من هذه السرقات تتم من خالل شبكة االنترنت‪.‬‬

‫حٌنها بدأ التفكٌر جدٌا ًا فً خطورة هذا التحدي وأضحى من الضروري لهذه البنوك والشركات العالم ة‬
‫ي ع لى الشبكة‬
‫ي ان تفرض اجراءات وقائٌة أمنٌة وبجدٌة عالٌة لكل ما تملكه على الشبكة ‪.‬‬
‫العنكبوتة‬

‫فً هذه الفترة ظهرت اولى االجراءات الوقائٌة ضد القرصنة االلكترونٌة‪ ,‬سوف ٌكون التكلم عن هذه االجراءات محور‬
‫حدٌثنا فً هذا المقال‪.‬‬

‫‪3‬‬
‫‪www.7rs.cc‬‬ ‫‪security@7rs.cc‬‬
‫‪7rs Group| 4Best Security‬‬ ‫مجموعة حرس الحدود| لحماية أفضل‬

‫تنحصر الطرق واجراءات الحماٌة فً ‪ 3‬اشكال ‪:‬‬

‫‪ - 1‬القواعد والصالحٌات ‪rules/permission‬‬


‫‪ - 2‬المستخدمٌن والملكٌات ‪users/ownerships‬‬
‫‪ - 3‬الجدران النارٌة ‪Firewalls‬‬
‫‪ - 4‬الثغرات األمنٌة ‪Security bugs‬‬

‫هذه االجراءات تعتبر من ابجدٌات العمل بالنسبة للعاملٌن فً مجال ادارة الشبكات واالتصاالت‪.‬‬

‫‪ ‬بما أن أكثر السٌرفرات المستخدمة فً مخدمات المواقع االلكترونٌة تعتمد على انظمة تشغٌل ‪ Linux‬و ‪Unix‬‬
‫لقوتها ودعمها الكبٌر الجراءات الحماٌة‪ ,‬اصبح من الالزم علٌنا التركٌز علٌها فً موضوعنا‪ ,‬بٌد أن األساس‬
‫واحد بالنسبة لجمٌع أنواع أنظمة التشغٌل‬

‫أًالًال‪ :‬انقٌاعد ًانصالحٍات ‪: rules/permission‬‬

‫عندما تضع ملفا ًا ما على شبكتك الداخلٌة باعطائه خاصٌة المشاركة ‪ ,sharing‬تجد أنه البد لك أن تعطً لهذا الملف‬
‫خصائص تحدد العملٌات الممكن اجراءها علٌه‪ ,‬وهذا األمر هو ماٌسمى بالصالحٌات المحددة للملف‪.‬‬

‫الصالحيات هذه على ثالثة أنواع ‪/‬‬

‫صالحٌة القراءة‪ :‬حٌث تعطى للمجلدات لجعله قابل للدخول ومشاهدة محتواه‪ ,‬وباعطاءه للملف ٌصبح باالمكان‬ ‫‪‬‬
‫نسخه او قراءة محتواه‪.‬‬

‫ات‬ ‫ًاة‬
‫قابل الضافة محتوٌات داخلها أو حذفها‪ ,‬كما تعطى لملف‬ ‫صالحٌة الكتابة‪ :‬هذه الخاصٌة ُت‬
‫تحدد للمجلدات لجعلها‬ ‫‪‬‬
‫لجعلهل ًاة‬
‫قابل للتعدٌل علٌها‪.‬‬

‫صالحٌة التنفٌذ‪ :‬تمنح هذه الخاصٌة للملفات التنفٌذٌة لتكون قابلة للتشغٌل والتنفٌذ‪.‬‬ ‫‪‬‬

‫‪4‬‬
‫‪www.7rs.cc‬‬ ‫‪security@7rs.cc‬‬
‫‪7rs Group| 4Best Security‬‬ ‫مجموعة حرس الحدود| لحماية أفضل‬

‫كٍفٍة اعطاء انصالحٍات فً نظاو ي ‪: Linux/Unix‬‬

‫األمر المستخدم العطاء الصالحٌات هو ‪ chmod‬وصٌغته هً‬


‫]‪chmod [permission] [file/folder name‬‬

‫حٌث ‪ٌ permission‬شٌر للصالحٌات الموكلة للملف او الدلٌل ‪ ,‬وهناك طرٌقتٌن لكتابة الصالحٌات ‪:‬‬

‫األول‪ /‬استخدام الرموز‪:‬‬


‫فً هذه الطرٌقة ٌعطى لكل خاصٌة رمز‪ ,‬فٌرمز للقراءة بـ ‪ , r‬للكتابة ‪ w‬و للتنفٌذ بـ ‪ , x‬اضافة لتحدٌد المالك‪.‬‬
‫فالرمز ‪ٌ a‬شٌر للجمٌع‪ ,‬الرمز ‪ g‬لمجموعة المستخدم الحالً‪ ,‬الرمز ‪ u‬لالشارة الى المستخدم الحالً وأخٌراًا الرمز ‪ o‬لغٌر‬
‫ماذكر (الضٌف ‪)nobody -‬‬

‫فمثالًا العطاء الملف ‪ file.exe‬امكانٌة القراءة والتنفٌذ مع اعطاء الملكٌة للجمٌع يكون األمر ‪:‬‬
‫‪chmod a+rx file.exe‬‬

‫الثاني‪ /‬استخدام األرقام ‪:‬‬


‫هنا تم تعٌٌن رقم خاص لكل صالحٌة ‪ ,‬فصالحٌة القراءة رقم ها ‪ ,4‬الكتابة رقم ها ‪ 2‬والتنفٌذ رقم ه ‪1‬‬

‫ولتمثٌل الملكٌة جعلت لكل من األنواع الثالث (الكل‪,‬المستخدم‪,‬المجموعة) خانة خاصة بها‪ ,‬بحٌث ‪:‬‬

‫الثالث ترمز للضٌف‪-‬‬


‫ة‬ ‫الثانً للمستخدم الحالً‪ ,‬الخانة‬
‫ة‬ ‫الخانة األولى "من الًسار" تعنً الملكٌة لمجموعة المستخدم‪ ,‬الخانة‬
‫‪nobody‬‬

‫فمثالًا فً المثال السابق نطبق هذه الطرٌقة بهذا الشكل ‪:‬‬


‫‪Chmod 555 file.exe‬‬

‫واذا اردناها للمستخدم الحالً مع اعطاء امكانٌة التنفٌذ للبقٌة ٌصبح األمر ‪:‬‬
‫‪Chmod 151 file.exe‬‬
‫وهكذا ‪..‬‬

‫ثانياً‪ :‬المستخدمين والملكيات ‪:users/ownerships‬‬

‫طرٌقة الملكٌة ٌتم من خاللها اعطاء كل مستخدم او مجموعة مستخدمٌن ملكٌات خاصة بهم بحٌث ٌحدد لكل فرد او‬
‫مجموعة أفراد صالحٌات معٌنة بحسب الوظٌفة الموكلة له ‪.‬‬

‫‪5‬‬
‫‪www.7rs.cc‬‬ ‫‪security@7rs.cc‬‬
‫‪7rs Group| 4Best Security‬‬ ‫مجموعة حرس الحدود| لحماية أفضل‬

‫الملكيات هذه على مستويين هما ‪:‬‬

‫مستوى المجموعات ‪/‬‬ ‫‪‬‬

‫ٌستخدم هذا المستوى إذا ما أردنا منح مجموعة كاملة نفس صالحٌات الملكٌة لجمٌع اعضاءها‪.‬‬

‫تمٌز كل مجموعة من المجموعات الملكٌة برقم أو اسم فرٌد ‪.‬‬

‫أما األمر المستخدم لتنفٌذ هذا المنح هو ‪ chown‬شكله ‪:‬‬

‫]‪Chown [-R] [:Group ID/Name] [target‬‬

‫فمثالًا فً أحد شركة ٌوجد لدٌها قسم للموارد البشرٌة ‪ ,‬فلو أردنا لجمٌع المستخدمٌن او الموظفٌن العاملٌن فً هذا القسم أن‬
‫ٌكون لهم نفس الصالحٌات فً الدخول الى الدلٌل ‪ /Employers‬فً المخدم والمخزن علٌه سجالت الموظفٌن فً الشركة‬
‫بغٌة التعامل معها‬

‫ٌتم باستخدام األمر ‪ chown‬بهذه الصٌغة ‪:‬‬


‫‪Chown –R :Department /Employers‬‬

‫حٌث ‪ Employers‬هو اسم المجموعة‬

‫‪ ‬وضعنا الرمز ‪ R‬لتنفٌذ األمر بشكل عودي لجمٌع األدلة الفرعٌة والملفات داخله‬

‫ومن ثم ننفذ األمر ‪ chmod‬لمنح امكانٌة قراءة المجلد من قبل هذه المجموعة ‪:‬‬
‫‪Chmod 400 /Employers‬‬

‫مستوى المستخدم ٌن ‪/‬‬ ‫‪‬‬

‫المستوى السابق كما الحظنا ٌطبق على مجموعة كاملة‪ ,‬لكن ماذا لو كان األفراد فً هذه المجموعة لهم تخصصات مختلفة‬
‫داخل نفس القسم‪ ,‬أو أن أحدهم لدٌه رتبة أعلى من غٌره‪.‬‬

‫ئ نحتاج لمستوى أخفض وهو مستوى المستخدمٌن ‪ ,‬بحٌث ٌتم اعطاء كل مستخدم ملكٌة خاصة تكون مضافة لملكٌة‬
‫حٌن ٍذذ‬
‫المجموعة األكبر (ولٌست بدٌلة عنها)‪.‬‬

‫ٌعطى المستخدم الملكٌة بنفس األمر ‪ chown‬وصٌغته هً ‪:‬‬


‫]‪Chown –R [user ID/Name] [target‬‬

‫‪6‬‬
‫‪www.7rs.cc‬‬ ‫‪security@7rs.cc‬‬
‫‪7rs Group| 4Best Security‬‬ ‫مجموعة حرس الحدود| لحماية أفضل‬

‫بالعودة للمثال السابق‪ ,‬رئٌس قسم الموارد البشرٌة ٌملك صالحٌات اضافٌة وهً امكانٌة حذف او تعدٌل مابداخل الدلٌل‬
‫‪ٌ , /Employers‬صبح األمر حٌنها بهذا الشكل‪:‬‬
‫‪Chown –R 500:Department /Employers‬‬

‫ّق‬
‫تبقى إعطاء هذا المجلد امكانٌة التعدٌل من قبل رئٌس القسم‬
‫‪Chmod 460 /Employers‬‬

‫‪ ‬فً حال أردنا لمجلد ما متاح للضٌف نستخدم الكلمة المحجوزة ‪nobody‬‬

‫مثال‪:‬‬
‫‪Chown nobody /tmp‬‬

‫ولتحدٌد العملٌات ع المجلد ‪: /tmp‬‬


‫‪Chmod 774 /tmp‬‬

‫ثالثاً‪ :‬الجدران النارية ‪: Firewalls‬‬

‫جدار الحماٌة أو الجدار الناري عبارة عن مجموعة متكاملة من اجراءات الحماٌة المصممة لمنع الدخول غٌر المجاز الى‬
‫الشبكة أو النظام المطبق علٌه‪.‬‬

‫جدران الحماٌة هً إما أن تكون أجهزة مادٌة أو برمجٌات‪ ,‬وجمٌع هذه األنواع هدفها األساسً رفض الغٌر المصرح له‬
‫بالدخول‪.‬‬

‫هذا االجراء ٌعتبر من أهم االجراءات الواجب اتخاذها خاصة عند العمل داخل األنظمة الشبكٌة ومنها الشبكة العالمٌة‬
‫"االنترنت"‬

‫ومن أشهر الجداران النارٌة المستخدمة فً االنترنت عبارة عن برمجٌات بسٌطة تعمل على انظمة ‪ Linux‬وتدعى بـ‬
‫‪. htpasswd‬‬

‫هذا الملف ٌمكن كتابته بواسطة أي محرر نصً ومن ثم ٌحفظ بالحقة ‪" htpasswd.‬دون اعطائه اي اسم" بعد ذلك ٌتم‬
‫وضعه فً المكان "مجلد" المراد تطبٌق هذا االجراء علٌه وعند الدخول الى هذا المجلد سوف تظهر رسالة تطلب ادخال اسم‬
‫المستخدم وكلمة المرور‪.‬‬

‫‪7‬‬
‫‪www.7rs.cc‬‬ ‫‪security@7rs.cc‬‬
‫‪7rs Group| 4Best Security‬‬ ‫مجموعة حرس الحدود| لحماية أفضل‬

‫طريقة بسيطة لصناعة جدار ‪: htpasswd‬‬

‫‪ - 1‬نذهب الى الموقع ‪http://www.clockwatchers.com/htaccess_tool.html‬‬

‫‪ - 2‬نبدأ بالخطوة األولى ‪ 1. .htaccess Tool‬سنجد هناك عدة خٌارات لنؤخذ الخٌار األساسً لدٌنا وهو ‪Password‬‬
‫‪ ,Protection‬نقم باختٌاره ومن ثم بؤسف هذا الجدول نضغط على زر ‪ create it‬لتظهر صفحة فٌها مجموعة‬
‫من أسطر اوامر ننسخها بملف نصً ومن ثم نحفظها على هٌئة ‪htaccess‬‬

‫‪ - 3‬ننتقل اآلن للخطوة الثانٌة ‪ 2. .htpasswd Tool‬سنجد حقلٌن األول ‪ username‬حٌث اسم المستخدم والثانً‬
‫‪ password‬حٌث كلمة السر‪ ,‬هناك عدة أسطر فً حال أردنا صنع عدة حسابات وٌمكن االكتفاء بحساب واحد‪,‬‬
‫بعد االنتهاء نضغط على زر ‪ create it‬وستظهر صفحة تحوي االسم ومن ثم كلمة المرور مشفرة بمقٌاس ‪DES‬‬
‫ننسخ المحتوى فً ملف نصً ونحفظه على هٌئة ‪htpasswd‬‬

‫‪ - 4‬فً النهاٌة نضع هذٌن الملفٌن فً الم كان المراد حماٌته بالجدار الناري‪.‬‬

‫رابعاً‪ :‬الثغرات األمنية ‪: Security bugs‬‬

‫من أخطر نقاط الضعف التً ٌمكن للمخترق استغاللها فً الوصول والسٌطرة على النظام هو الثغرات األمنٌة للبرمجٌات‬
‫والتطبٌقات المستخدمة فً ذلك النظام ‪.‬‬

‫حالٌا ًا هناك الكثٌر من الثغرات ٌتم اكتشافها ٌومٌا ًا لمختلف برمجٌات السٌرفرات والمواقع ونجد ذلك جلٌا ًا فً مواقع مختصة‪,‬‬
‫مثل الموقع ‪www.securityfocus.com‬‬

‫ماهي الثغرات ؟‬
‫الثغرة البرمجٌة هً ضعف امنً فً النظام‪ ,‬هذا الضعف ٌجعل من ذلك النظام قابالًا لالستغالل "‪."Vulnerability‬‬

‫‪ ‬كيف تكتشف الثغرات ؟‬

‫ٌمكن الثغرات األمنٌة بشكل عام اعتماداًا على أخطاء أو عٌوب أو رسائل خارجة عن صائد األخطاء ‪.Error Exception‬‬
‫عملٌا ًا‪ ,‬هذه األخطاء تظهر للعٌان عن طرٌق االتصال بالبرنامج بواسطة البورت المخصص له فً السيرفر والذي ٌعمل من‬
‫خالله‪ ,‬من ثم ترسل شٌفرات خاصة تإثر فً عمل التطبٌق بحٌث ٌظهر الخطؤ البرمجً ‪.‬‬

‫‪8‬‬
‫‪www.7rs.cc‬‬ ‫‪security@7rs.cc‬‬
‫‪7rs Group| 4Best Security‬‬ ‫مجموعة حرس الحدود| لحماية أفضل‬

‫اظهار األخطاء البرمجٌة هً من أهم الخطوات التً تساعد المخترق على اكمال استغالله للبرنامج بالشكل المطلوب‬
‫تدعى هذه األخطاء بـ ‪ Input validation errors‬أي اخطاء االدخاالت المإثرة ‪.‬‬

‫تتنوع هذه االدخاالت "الشفرات" تبعا ًا لتنوع اللغات البرمجٌة التً تكتب بها وغٌرها من األمور سنذكرها االن‪.‬‬

‫‪ o‬كل من هذه االدخاالت تمثل ثغرة مستقلة من الثغرات وهً ‪:‬‬


‫‪ )1‬ثغرات حقن األوامر ‪Command Injection‬‬
‫‪ )2‬ثغرات تخطً األدلة ‪Path Traversal‬‬

‫سنستعرض بعون هللا كل من هذه األنواع بشًء من التفصٌل‬

‫أوالً‪ :‬ثغرات حقن األوامر ‪:Command Injection‬‬

‫ٌعتمد استغالل هذه الثغرات على تنفٌذ اكواد برمجٌة من خالل احد نوعً ارسال البٌانات للتطبٌق "‪ "GET , POST‬وهذه‬
‫األكواد ٌختلف نوعها باختالف اللغة البرمجٌة للملف المصاب اضافة لنوع نظام التشغٌل الذي ٌعمل علٌه و نوع قاعدة‬
‫البٌانات المتصل بها ‪.‬‬

‫ثغرات الحقن هذه تنقسم لنوعٌن ‪:‬‬

‫‪- 1‬ثغرة حقن االستعالمات ‪: SQL Injection‬‬

‫فً هذه الثغرة ٌتم تنفٌذ تعلٌمات لغة االستعالمات البنٌوٌة ‪ SQL‬الخاصة بالتعامل مع قواعد البٌانات من جلب واضافة‬
‫وتعدٌل وحذف سجالت ‪ ,‬انشاء وحذف بنى معطٌات‪.‬‬

‫‪ ‬كيفية الحماية من هذه الثغرة ‪:‬‬

‫هناك الكثٌر من طرق الحماٌة من ثغرة حقن االستعالمات وجمٌعها ٌعتمد على مبدأ فلترة المدخالت‪ ,‬أي أن أي قٌمة قبل أن‬
‫تدخل فً االستعالم ٌجب أوالًا أن تمرر على عملٌة فلترة من أي مدخالت ممنوعة ‪. illegal input‬‬

‫سنذكر طرٌقتٌن للحماٌة وجدتها األفضل واألسهل‪ ,‬الطرٌقة األولى هً للقٌم الرقمٌة ‪ , integer‬الثانٌة هً للتعامل مع القٌم‬
‫المحرفٌة ‪. string‬‬

‫‪9‬‬
‫‪www.7rs.cc‬‬ ‫‪security@7rs.cc‬‬
7rs Group| 4Best Security ‫مجموعة حرس الحدود| لحماية أفضل‬

:‫ التعامل مع القيم الرقمية‬:‫ األول‬

‫ حٌث ٌعرض مجموعة من عناوٌن المقاالت وبالضغط على اي رابط‬,‫لدٌنا تطبٌق لعرض مجموعة من المقاالت فً الموقع‬
‫ٌتم عرض المقالة فً الصفحة وٌتغٌر الرابط تبعا ًا لرقم المقال‬

: php ‫نكتب التطبٌق بلغة‬

1 <?php
2 $dbc=mysql_connect('localhost','root','toor');
3 $sql=mysql_select_db('articldb',$dbc);
4 ?> <!-- ########### Start Articles List########### -->
5 <table align="left" border="0"><tr><td colspan=2><h2>Article's List</h2></td></tr>
7 <?
8 $res=mysql_query("select * from articles");
9 while($row=mysql_fetch_row($res)){
10 ?>
11 <tr><td><? echo "$row[0]"; ?></td>
12 <td><a href="inject.php?id=<? echo "$row[0]"; ?>"><? echo "$row[1]"; ?></a></td>
14 <tr><? } ?></table><!-- ########### End Articles List ########### -->
15 <?php // ########### Start Selected Article ###########

16 if(isset($_GET['id'])){

17 $res=mysql_query("select id,title,content from articles where id=".$_GET['id']);

18 while($data=mysql_fetch_object($res)){

19 echo"$data->title";?></td></tr>

20 <tr><td colspan=2>The Content:<br>

21 <? echo"$data->content";?></td></tr>

22 <!-- ########### End Selected Article ########### -->

10
www.7rs.cc security@7rs.cc
‫‪7rs Group| 4Best Security‬‬ ‫مجموعة حرس الحدود| لحماية أفضل‬

‫فً السطر ‪ 17‬تم ارسال استعالم جلب للمقال المختار من القائمة‬

‫و نالحظ بؤن تحدٌد رقم المقال اعتمد ع الرقم المرسل من الرابط ‪ URL‬بالتالً أصبح اي ادخال لعالمة او تعلٌمة خاصة‬
‫بلغة ‪ SQL‬سوف تصل للقاعدة وبالتالً حصول التؤثٌر المطلوب ‪.‬‬

‫فلو فرضنا أننا ادخلنا التعلٌمة ‪ and 1=0‬فً الرابط بهذا الشكل‬
‫‪http://site.com/file.php?id=1 and 1=0‬‬

‫فستدخل هذه التعلٌمة مع ]‪ $_GET[id‬الى االستعالم لٌصبح كالتالً‪:‬‬


‫‪select id,title,content from articles where id=1 and 1=0‬‬

‫والنتٌجة هو عدم ظهور اي مقالة بسبب التعلٌمة ‪ and 1=0‬التً تعٌد ‪ false‬دوما ًا‬

‫تعتبر هذه الخطوة أساسٌة بالنسبة للمخترق لٌكشف الثغرة فً الموقع اذا كانت موجودة أم ال‬

‫بعد ذلك ٌمكن للمخترق أن ٌشكل استعالم خاص به ٌدخله مع ]‪ $_GET[id‬من خالل الرابط وبالتالً جلب على اي شًء‬
‫من القاعدة‪.‬‬

‫لحماٌة الكود من هذا النوع نستخدم دالة )(‪ intval‬ووظٌفتها الحصول على الرقم الصحٌح ‪ Integer‬من المتحول المدخل‪,‬‬
‫فلو تم ادخال القٌمة ‪ 11abcd‬فسوف نحصل على القٌمة ‪ ,11‬وكذا لو ادخلنا القٌمة ‪ 3.5‬لنحصل على القٌمة ‪ ,3‬وهكذا ‪..‬‬

‫لنعد للمثال‪ ,‬القٌمة المستخدمة عددٌة‪ ,‬اذا نستطٌع أن نضٌف قبل السطر ‪ 17‬السطر التالً ‪:‬‬
‫;)]‪$id=intval($_GET[id‬‬

‫لٌصبح السطر ‪ 17‬كامالًا ‪:‬‬


‫;)‪$res=mysql_query("select id,title,content from articles where id=".$id‬‬

‫اآلن لو تم حقن اي شً فً الرابط فسوف ٌتجاهلة التطبٌق وٌستمر فً عمله ‪.‬‬

‫‪11‬‬
‫‪www.7rs.cc‬‬ ‫‪security@7rs.cc‬‬
7rs Group| 4Best Security ‫مجموعة حرس الحدود| لحماية أفضل‬

‫ التعامل مع القيم المحرفية‬:‫ الثاني‬

‫لنفرض تطبٌقا ًا آخر ٌتعامل مع السالسل المحرفٌة ولٌكن لوحة تسجٌل دخول ٌحوي حقلٌن األول السم الحساب والثانً للرقم‬
,‫السري‬

: ً‫الكود كالتال‬

1 <?php echo <<<_DONE


3 <input type="text" name="username" /> //username field
4 <input type="password" name="password" /> //password field
5 <input type="hidden" name="id" value="1"> //id for URL link
6 <input type="submit" name="query" value="Submit"/> //submit account's information
7 _DONE;
8 $db=mysql_connect('localhost','root','toor');

9 $sql=mysql_select_db('test',$db);

10 $name=$_POST['username']; $pass=$_POST['password']; //gather account's information

11 echo " <form action='$_SERVER[PHP_SELF]' method='post'>";

12 if($_POST['query']){

13 if(empty($pass)) echo "‫;"نسٌت أن تدخل كلمة السر‬

14 else{

15 $res=mysql_query("select * from login

16 where adm_uname='".$name."' and adm_upass='".$pass."'");

17 $num=mysql_num_rows($res); //get records' number

18 if($num > 0){ // a record that similar to the submitted information is exist

19 echo "‫;" معلومات الدخول صحٌحة شكراًا لك‬

20 exit;}

21 else echo "‫ تؤكد منها مرة أخرى‬. ‫}};"المعلومات خاطئة‬

12
www.7rs.cc security@7rs.cc
‫‪7rs Group| 4Best Security‬‬ ‫مجموعة حرس الحدود| لحماية أفضل‬

‫السطر المصاب ‪ 15‬و ‪ 16‬حٌث استعالم جلب السجل الذي ٌطلب تطابق المعلومات المدخلة فً لوحة التسجٌل مع تلك التً‬
‫فً قاعدة البٌانات ‪.‬‬

‫لنفرض اآلن أن المخترق ادخل هذا الشًء ' ‪ or '1'='1‬فً حقل االسم وحقل كلمة السر‪ ,‬لنرى كٌف سٌكون منظره فً‬
‫االستعالم ‪:‬‬
‫'‪select * from login where adm_uname='' or '1' = '1' and adm_upass='' or '1' = '1‬‬

‫انظر فً االستعالم جٌداًا وسوف تالحظ أنه صحٌح ‪ ,‬بعبارة أخرى شرط السطر ‪ 18‬سٌتم عبوره بنجاح وظهور رسالة‬
‫الترحٌب‪ ,‬أي تخطً اللوحة !‬

‫طرٌقة الحماٌة هنا تعتمد باألساس على الغاء تؤثٌر هذه‬


‫نالحظ ان ما ساعد المخترق على االختراق هو عالمة ' ‪ ,‬لذا ف‬
‫العالمة‪ ,‬وٌتم ذلك باضافة عالمة \ قبل المحرف لٌنتج لدٌنا '\ بهذا الشكل لم تعد العالمة مإثرة فً االستعالم ‪.‬‬

‫الدالة التً تقوم بهذه المهمة تدعى ‪ ,mysql_escape_string‬حٌث وسٌط هذه الدالة هو النص الذي ٌحوي عالمة الـ‬
‫‪ , quotes‬وٌعود بالنص بعد تطبٌق الفلترة‪.‬‬

‫لنعد لتطبٌقنا حٌث تشغٌل هذه الدالة على السطر ‪ 10‬لٌصبح كالتالً ‪:‬‬

‫;)]'‪$name= mysql_escape_string ($_POST['username‬‬

‫;)]'‪$pass= mysql_escape_string ($_POST['password‬‬

‫نتٌجة محاولة المخترق ستكون بهذا المنظر ‪:‬‬


‫‪select * from login‬‬
‫'‪where adm_uname='\' or \'1\' = \'1' and adm_upass='\' or \'1\' = \'1‬‬

‫والنتٌجة‪ :‬فشل االختراق ‪.‬‬

‫‪13‬‬
‫‪www.7rs.cc‬‬ ‫‪security@7rs.cc‬‬
‫‪7rs Group| 4Best Security‬‬ ‫مجموعة حرس الحدود| لحماية أفضل‬

‫‪- 2‬ثغرة حقن األكواد )‪:Cross-Site-Scripting (Xss‬‬

‫هذه الثغرة ال تقل خطورة عن ثغرة حقن االستعالمات حٌث ٌمكن للمخترق من خاللها تنفٌذ الكثٌر من الخطط مثل سرقة‬
‫الكوكٌز أو بناء صفحة مزٌفة أو تطبٌق أكواد خبٌثة تخرب الصفحة أو تغٌر من محتوٌاتها‪.‬‬

‫لنفرض محرك بحث فٌه حقل تضع فٌه العبارة المراد البحث عنها وبالضغط على الزر تظهر رسالة كهذه ‪:‬‬

‫‪Your search for 'securtiy news' returned the following results:‬‬

‫لنفرض أن الكود هكذا‪:‬‬

‫‪<p>Your search for '<script> write("form.field.value");</script>' returned the following‬‬


‫>‪results:</p‬‬

‫حسنا ًا‪ ,‬اآلن تخٌل لو المخترق وضع هذه العبارة ‪:‬‬


‫—!<>‪") alert('XSS') </script‬‬

‫لنضعه فً الكود ولنرى كٌف منظره ‪:‬‬

‫‪<p>Your search for '<script> write("") alert('XSS') </script><!--");</script>' returned the‬‬


‫>‪following results:</p‬‬

‫النتٌجة ظهور رسالة ‪ Message‬ناتحة عن دالة ‪ ,alert‬وهذا ٌعنً أن الثغرة تعمل‬

‫ٌمكنه اآلن أن ٌقوم بالكثٌر من األمور كما قلنا ال ٌسعنا ذكرها اآلن‬

‫‪ ‬كيفية الحماية من هذه الثغرة ‪:‬‬

‫الفكرة األساسٌة لجمٌع طرق الحماٌة من هذه الثغرة هً فلترة أي عالمة ذات تؤثٌر برمجً سواء بلغة ‪ Javascript‬او‬
‫‪.html‬‬

‫‪14‬‬
‫‪www.7rs.cc‬‬ ‫‪security@7rs.cc‬‬
‫‪7rs Group| 4Best Security‬‬ ‫مجموعة حرس الحدود| لحماية أفضل‬

‫هذه الرموز موضحة فً الجدول التالً ‪:‬‬


‫‪HTML Entities‬‬
‫‪Character‬‬ ‫‪Encoding‬‬
‫<‬ ‫;‪&lt; or &#60‬‬
‫>‬ ‫;‪&gt; or &#62‬‬
‫;‪& &amp; or &#38‬‬
‫;‪" &quot; or &#34‬‬
‫;‪' &apos; or &#39‬‬
‫(‬ ‫;‪&#40‬‬
‫)‬ ‫;‪&#41‬‬
‫‪#‬‬ ‫;‪&#35‬‬
‫‪%‬‬ ‫;‪&#37‬‬
‫;‬ ‫;‪&#59‬‬
‫‪+‬‬ ‫;‪&#43‬‬
‫‪-‬‬ ‫;‪&#45‬‬

‫فً لغة ‪ php‬توجد دالة تقوم بتحوٌل هذه الرموز الى الشكل الموافق بالصٌغة العشرٌة‪.‬‬
‫تدعى هذه الدالة )(‪.htmlentities‬‬

‫نطبٌق الدالة على الثغرة السابقة ‪:‬‬


‫>‪<script> write("htmlentities(“") alert('hello admin !') </script><!-- “)");</script‬‬

‫والنتٌجة ‪:‬‬

‫;‪Your search for '&quot; &#41; alert&#40; &aposHello admin ! &apos&#41; &lt;/b&gt‬‬
‫‪script&gt; &lt;! &#45; &#45;' returned the following results:‬‬

‫الكود كما الحظنا ظهر بعد التشفٌر دون أن ٌفسر من قبل المتصفح‬

‫ولكن لنفرض أنه تم حقن كود ال ٌحوي الرموز السابقة‬

‫فمثال تخٌل أن الحقنة داخل سطر ‪ html‬ولٌكن التالً‪:‬‬

‫>‪<div style="…."> Here is <span >my content</span> place </div‬‬

‫اذا كانت الحقنة محصورة داخل وسم ‪ ,span‬فالمخترق ٌمكنه حقن الكود التالً‪:‬‬
‫‪Onclick=document.cookie‬‬

‫‪15‬‬
‫‪www.7rs.cc‬‬ ‫‪security@7rs.cc‬‬
7rs Group| 4Best Security ‫مجموعة حرس الحدود| لحماية أفضل‬

: ‫داخل الكود‬
…….. <span onclick=document.cookie >……….

!‫النتٌجة ظهور معلومات الكوكٌز لزائر المواقع‬

‫ على‬javascript ‫اذا فً هذه الحالة نحن بحاجة ألن نصمم دالة خاصة بنا نقم فٌه بتحوٌل التعلٌمات المإثرة الخاصة بلغة‬
‫ الموجودة ضمن لغة‬replace ‫ سنحتاج فً التحوٌل الى الدالة‬,‫وجه الخصوص الى الشٌفرة الموافقة لتعطٌل ذلك التؤثٌر‬
: javascript

1 <script type="text/javascript">
2 function killXSS() {
3
4 var text = document.getElementById('secure').innerHTML;
5 text = text.replace(/\n/m,"<br>");
6 text = text.replace(/\r/m,"<br>");
7 text = text.replace(/\<s/gi,"&#60;&#115;"); // stop <script and <style
8 text = text.replace(/\<i/gi,"&#60;&#105;"); // stop <iframe and <import
9 text = text.replace(/\<o/gi,"&#60;&#111;"); // stop <object
10 text = text.replace(/\<e/gi,"&#60;&#101;"); // stop <embed
11 text = text.replace(/\<l/gi,"&#60;&#108;"); // stop <link
12 text = text.replace(/\<m/gi,"&#60;&#109;"); // stop <meta
13 text = text.replace(/\<f/gi,"&#60;&#102;"); // stop <frame
14 text = text.replace(/on(.*)\b[(.*)=]/gi,"");
15 text = text.replace(/eval\((.*)\)/gi, "");
16 text = text.replace(/\(/g,"&#40;"); // (
17 text = text.replace(/\)/g,"&#41;"); // )
18 text = text.replace(/\:/g,"&#58;"); // :
19 text = text.replace(/\@/g,"&#64;"); // @
20 text = text.replace(/\=/g,"&#61;"); // =
21 text = text.replace(/\</g,"&#60;"); // <
22 text = text.replace(/\>/g,"&#62;"); // >
23 document.getElementById('secure').innerHTML = text;
24 }
25 </script>

: ‫ فً الصفحة ونعدٌل فً المثال السابق لٌصبح‬killXSS() ‫نشغل الدالة‬


<<div style="…."> Here is <span id='secure'>my content</span> place </div>

16
www.7rs.cc security@7rs.cc
‫‪7rs Group| 4Best Security‬‬ ‫مجموعة حرس الحدود| لحماية أفضل‬

‫النتٌجة‪ :‬المخترق سوف ٌهجر الموقع !‬

‫‪: Path Traversal‬‬ ‫ثانياً‪ :‬ثغرات تخطي المسارات‬

‫تعتبر هذه الثغرة األخطر من ناحٌة سهولة التنفٌذ وخطورة النتائج‪ ,‬حٌث تمكن المخترق من استعراض مجلدات وملفات‬
‫موجودة ع المخدم اٌا ًا كان مكانها‪.‬‬

‫ٌمكن من خالل هذه الثغرة تخطً الموقع الحالً والدخول الى أدلة أخرى فً المخدم‬

‫عملٌا ًا عادة المخترقٌن ٌستخدمون هذه الثغرة على ماٌلً ‪:‬‬

‫ملف الحسابات ‪ ,/etc/passwd‬الذي ٌحوي مسارات واسماء حسابات أصحاب المواقع فٌستفٌد منها المخترق فً القٌام‬ ‫‪‬‬
‫بالتخمٌن بواسطة ادوات خاصة لكشف كلمات السر لهذه الحسابات ‪ ..‬تسمى هذه العملٌة ب ‪. Brute Force‬‬

‫‪ ‬ملف الشادو ‪ ,/etc/shadow‬وٌحوي أسماء الحسابات مع كلمات السر مشفرة بمقٌاس ‪ٌ ,DES‬مكن للمخترق أن ٌستخدم‬
‫برامج خاصة لفك التشفٌر ‪.‬‬

‫‪ ‬ملفات الجدران النارٌة ‪ ,.htpasswd‬حٌث ٌمكن تخطً هذه الملفات بسهولة وحتى ٌمكن قراءة محتواها‪ ,‬أي االسم‬
‫وكلمة المرور المشفرة بمقٌاس ‪.DES‬‬

‫اضافة لملفات أخرى قد تحوي معلومات هامة مثل ملفات االتصال بقاعدة البٌانات التً تحوي على اسم وكلمة مرور االتصال‬
‫بقاعدة بٌانات السٌرفر ونحوها‪.‬‬

‫مثال لهذه الثغرة ‪:‬‬ ‫‪‬‬

‫لنفرض فً احد المواقع ٌوجد عرض كتب الكترونٌة حٌث ٌتم عرضها من الموقع مباشرة بحٌث شكل الرابط كالتالً‪:‬‬

‫‪http://site.com/files.php?get=ebook.pdf‬‬

‫المبرمج سوف ٌطبق هذا االسلوب بواسطة دالة )(‪ include‬فً لغة ‪ php‬ووظٌفتها استٌراد ملفات خارجٌة اٌا ًا كان امتدادها‪.‬‬

‫‪17‬‬
‫‪www.7rs.cc‬‬ ‫‪security@7rs.cc‬‬
‫‪7rs Group| 4Best Security‬‬ ‫مجموعة حرس الحدود| لحماية أفضل‬

‫لٌكن الكود كتب كالتالً‪:‬‬

‫‪1‬‬ ‫‪<?php‬‬
‫‪2‬‬ ‫;) ‪include ( "/home/users/public_html/pdfiles/" . $pdfile_include‬‬
‫‪3‬‬ ‫>?‬

‫فً هذا الكود ٌتم استٌراد الملفات داخل الدلٌل ‪ pdfiles‬باالعتماد على القٌمة المسندة الى المتغٌر ‪$pdfiles‬‬

‫مثال ‪:‬‬
‫‪http://site.com/files.php?pdfile_include=security.pdf‬‬

‫هنا تكمن الثغرة‪ ,‬حٌث ٌمكن التحكم بمحتوى هذا المتغٌر كٌفما نرٌد فمثالًا ٌمكن أن نستعرض أي ملف حتى لو كان خارج‬
‫المسار المحدد‪ ,‬وهنا ٌتم االعتماد على العالمة ‪ ../‬التً تساعدة فً الخروج من المسار الحالً‬

‫مثالًا ٌمكن عرض ملف ‪ index.php‬الموجود فً الصفحة الرئٌسٌة ‪:‬‬


‫‪/home/users/public_html/index.php‬‬

‫بهذه الطرٌقة ‪:‬‬


‫‪http://site.com/files.php?pdfile_include =../index.php‬‬

‫هذه القٌمة ستدخل فً المتغٌر ‪ pdfile_include‬ومن ثم الى الرابط المحدد ضمن )(‪ include‬لٌتشكل المسار ‪:‬‬

‫‪/home/users/public_html/pdfiles/../index.php‬‬

‫وهذا ٌكافئ‪:‬‬
‫‪home/users/public_html/index.php‬‬

‫اذا ٌمكن للمخترق اٌضا ًا أن ٌعرض أي ملف فً المخدم اٌا ًا كان مكانه باالستفادة مما سبق‪.‬‬

‫‪18‬‬
‫‪www.7rs.cc‬‬ ‫‪security@7rs.cc‬‬
‫‪7rs Group| 4Best Security‬‬ ‫مجموعة حرس الحدود| لحماية أفضل‬

‫فمثالًا ٌمكنه عرض ملف الحسابات بهذه الطرٌقة ‪:‬‬

‫‪http://site.com/files.php?pdfile_include=../../../../etc/passwd‬‬
‫وهكذا‪..‬‬

‫ٌدعى هذا النوع من التخطً باسم ‪Local File Include‬‬

‫ٌدعى باسم ‪.Remote File Include‬‬


‫الثنً ف‬
‫أما النوع ا‬

‫وتعبر هذه الثغرة أخطر من السابقة‪ ,‬وٌعود ذلك فً امكانٌة استدعاء وتشغٌل ملفات من خارج النظام فً هذا النوع‪.‬‬

‫أما برمجٌا ًا فتختلف هذه عن سابقتها فً كون دالة االستٌراد تستقبل متغٌراًا فً بداٌتها وهذا ٌكفً ألن ٌصبح باالمكان استٌراد‬
‫ملفات من الخارج سواء تم تحدٌد مسار بعد المتغٌر أم ال ألنه باالمكان الغاء ماسٌؤتً بعده ا بوضع عالمة ? او عالمة‬
‫‪" %00‬تكافئ برمجٌا ًا الكلمة ‪. "Null‬‬

‫ٌمكن التعدٌل ع المثال السابق لنحصل على هذه الثغرة ‪:‬‬

‫‪1‬‬ ‫‪<?php‬‬
‫‪2‬‬ ‫;)"‪include ($pdfile_include . "/home/users/public_html/pdfiles/‬‬
‫‪3‬‬ ‫>?‬

‫كما الحظنا تعدٌالًا بسٌطا ًا على المثال السابق ٌعنً تغٌر فً نوع الثغرة من مستوى الى مستوى هو األعلى واألعنف على‬
‫االطالق ‪.‬‬

‫‪19‬‬
‫‪www.7rs.cc‬‬ ‫‪security@7rs.cc‬‬
‫‪7rs Group| 4Best Security‬‬ ‫مجموعة حرس الحدود| لحماية أفضل‬

‫‪ ‬كيفية الحماية من هذه الثغرة ‪:‬‬

‫الحظنا فٌما سبق أن المخترق اعتمد على نقطتٌن رئٌسٌتٌن وهما ‪:‬‬

‫‪ - 1‬استخدام متغٌرات عامة ‪ Global variable‬غٌر محددة عند التعامل مع دوال االستٌراد ‪.‬‬
‫‪ - 2‬استخدام العالمة ‪ ../‬للتنقل فً المخدم بحرٌة ‪.‬‬

‫استٌعاب تلك النقاط ٌساعد المخترق كما ٌساعد مإمن الموقع على حد سواء‪.‬‬

‫أفضل اسلوب ٌتبع للتصدي لتلك النقاطهو تثبٌت اسماء الملفات والمجلدات المراد استٌرادها‬

‫ولجعل األمر أكثر دٌنامٌكٌا ًا ٌمكن مثالًا تسمٌة الملفات بهذا الشكل ‪ file_1.pdf , file_2.pdf‬وهكذا بحٌث نثبت هنا‬
‫جزء ونغٌر فً الجزء الثانً والنتٌجة نفسها اي الحصول على الملفات المطلوبة ‪ ,‬نالحظ فً هذه االسماء ان المتغٌر هنا‬
‫الترقٌم والثابت الكلمة _‪ file‬واالمتداد ‪pdf‬‬

‫بالتالً نجعل هذا الرقم هو الوحٌد المسند للمتغٌر‪ ,‬ونبثت الباقً‪ ,‬اٌضا ًا هنا ٌمكن استخدام الدالة )(‪ Intval‬لقصر أي قٌم ة‬
‫داخله لتبقى رقمٌة وحٌنئ ٍذذ ٌستحٌل تغٌٌر المحتوى الى غٌر الملفات المطلوب عرضها‪.‬‬

‫النتٌجة للمثال السابق ‪:‬‬

‫‪1‬‬ ‫‪<?php‬‬
‫‪2‬‬ ‫;)"‪include ("/home/users/public_html/pdfiles/file_" . intval($pdfile_include) . "pdf‬‬
‫‪3‬‬ ‫>?‬

‫‪20‬‬
‫‪www.7rs.cc‬‬ ‫‪security@7rs.cc‬‬
‫‪7rs Group| 4Best Security‬‬ ‫مجموعة حرس الحدود| لحماية أفضل‬

‫نصائح متنوعة في حماية المعلومات‬

‫أسرد لكم ماجتهدته من نصائح تعتبر من األبجدٌات التً على الشخص أن ٌتعلمها وأن ال ٌغفل عنها لضرورتها فً حماٌة كل‬
‫ماٌخصك من معلومات ومقتنٌات ضد أي هجوم أو استهداف خارجً ‪.‬‬

‫‪ )1‬الحرص على وضع الملفات الهامة أو الخاصة فً أماكن بعٌدة عن اي اتصال خارجً (كالمشاركة المحلٌة ‪,sharing‬‬
‫أو المجلدات المعروضة على ‪ ,)ftp‬واذا احتاج األمر فالضٌر من اقفال هذه المجلدات بكلمة مرور (كاستخدام الجدار‬
‫الناري)‪.‬‬

‫‪ )2‬االنتباه من وجود برامج ضارة على الجهاز الخاص من فٌروسات أو تروجونات أو ملفات اتصال عن بعد ‪.‬‬

‫‪ )3‬تحمٌل برنامج ‪ internet security‬الذي ٌعتبر حالٌا ًا أفضل من برامج ‪ anti-virus‬لوجود خاصٌة مراقبة البٌانات‬
‫الداخلة والخارجة ومراقبة البورتات المفتوحة فً الحاسب المتصل بشبكة سواء محلٌة أو شبكة االنترنت‪ ,‬كم ٌنصح‬
‫بشدة التحدٌث الدوري لهذا البرنامج ‪.‬‬

‫‪ )4‬االنتباه من وجود اي ثغرات أمنٌة فً موقعك الخاص أو حتى السٌرفر المستضٌف لك وٌنصح االستعانة بشركة مختصة‬
‫لفحص الثغرات ‪.‬‬

‫‪ )5‬من األفضل أن تتابع األخبار األمنٌة المتعلقة بآخر الثغرات والفٌروسات ونحوه‪ ,‬والطرق الجدٌدة والتحذٌرات المتبعة‬
‫للحماٌة من هذه األمور ‪.‬‬

‫‪ )6‬الحرص على عدم قراءة الرسائل المجهولة القادمة الى برٌدك االلكترونً فبعضها قد ٌعرض برٌدك أو حتى حاسبك‬
‫للخطر ‪.‬‬

‫‪ )7‬القٌام بالنسخ االحتٌاطً المستمر لملفات حاسبك وموقعك تحسبا ًا ألي طار ٍذ‬
‫ئ ٌؤتٌك من حٌث ال تعلم ‪.‬‬

‫‪ )8‬الحذر من أسلوب ٌدعى ‪ Social Engineering‬وهو أحد طرق واسالٌب المخترقٌن التً تعتبر األخطر على االطالق‬
‫ألنها ال تعتمد على ثغرة برمجٌة أو برمجٌات خبٌثة ‪ ,‬بل تعتمد على خداع الضحٌة والحصول على المراد منه‪ ,‬وهنا‬
‫ٌرجع لطرق كثٌرة فً هذا النوع من االختراقات توصف بعضها بالخطٌرة للغاٌة نظراًا لنجاحها مع الكثٌر من الحاالت‬
‫خاصة الشركات‪ ,‬والشركات الضخمة منها‪.‬‬

‫‪21‬‬
‫‪www.7rs.cc‬‬ ‫‪security@7rs.cc‬‬
7rs Group| 4Best Security ‫مجموعة حرس الحدود| لحماية أفضل‬

References:
http://en.wikipedia.org universal encyclopedia
http://www.owasp.org open community for webapp security
http://sla.ckers.org Security Forum
http://www.acunetix.com/websitesecurity specialist of security issues

22
www.7rs.cc security@7rs.cc

You might also like