• 0

كيف احمي تحميل الصور من برمجيات خبيثه

السلام علسكم ...

عندي في موقعي تحميل صور + التطبيق تحميل صوره شخصيه . 

كيف احمي موقعي من تحميل صوره تم وضع في شفرتها برمجيات خبيثه او تحميل اي برمجيات خبيثه ؟

وكذلك تطبيقي كيف اظمن مكان الصوره الشخصيه لا يوجه برمجيات خبيثه ؟

الموقع بلغه البايثون و التطبيق كوتلن و سويفت

تمّ تعديل بواسطة Khaled Almousawi
1 شخص أعجب بهذا

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 1

مرحبا 
أنا أستخدم إطار العمل laravel الخاص بلغة php و عند عملية التحقق من صورة أستعمل الكود التالي
 

<?php

// ....

public function store(Request $request)
{

  $request->validate([
      'image' =>  'required|image|mimes:jpeg,png,jpg,gif|max:2048'
  ]);
  
  // ....
	
}

هذا بإستعمال validation image الموجودة في الإطار 
لكن لارافيل يتيح لنا إنشاء custom validation خاص بنا بهذا الشكل مثلا 
 

<?php

Validator::extend('is_png',function($attribute, $value, $params, $validator) {
    $image = base64_decode($value);
    $f = finfo_open();
    $result = finfo_buffer($f, $image, FILEINFO_MIME_TYPE);
    return $result == 'image/png';
});

و بعدها يمكننا استعماله بهذا الشكل
 

<?php

// ....

public function store(Request $request)
{

  $request->validate([
      'image' =>  'required|is_png'
  ]);
	
  // ....
}

ستجد أشياء مماثلة لما تبحث عنه باللغة التي تريدها لأن مطورين اللغة يطورون بإستمرار على اللغة و يضيفون أشياء جديدة 
بالتوفيق

2 اشخاص أعجبوا بهذا

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 1

السلام عليكم @Khaled Almousawi

يمكنك الحماية من الإختراق أو الثغرات المشابه لما ذكرت ببساطة من خلال منع الفنكشنز المسؤولة عن فك التشفير أو تنفيذ الأكواد الخبيثة على موقعك حيث يتم تشفير المحتوى الخبيث عن طريق تشفير base 64 وتستخدم الفنكشن eval (وهي المسؤولة عن هذا النوع من الثغرات)لتشغيل ذلك النص وهو عبارة عن أكواد خبيثة ,لمنع ذلك من الأساس الحل هو تعطيل تلك الفنكشن في إستضافتك أو السيرفر الخاص بك من خلال إضافة الكونفجريشن التالي إلى ملف php.ini الخاص بإستضافتك وسيعطل عمل تلك الأكواد 

allow_url_fopen = off
allow_url_include = off 
disable_functions = "apache_child_terminate, apache_setenv, define_syslog_variables, escapeshellarg, escapeshellcmd, eval, exec, fp, fput, ftp_connect, ftp_exec, ftp_get, ftp_login, ftp_nb_fput, ftp_put, ftp_raw, ftp_rawlist, highlight_file, ini_alter, ini_get_all, ini_restore, inject_code, mysql_pconnect, openlog, passthru, php_uname, phpAds_remoteInfo, phpAds_XmlRpc, phpAds_xmlrpcDecode, phpAds_xmlrpcEncode, popen, posix_getpwuid, posix_kill, posix_mkfifo, posix_setpgid, posix_setsid, posix_setuid, posix_setuid, posix_uname, proc_close, proc_get_status, proc_nice, proc_open, proc_terminate, shell_exec, syslog, system, xmlrpc_entity_decode"

حيث هذه الفنكشنز معروفة بثغراتها 

1 شخص أعجب بهذا

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

و عليكم السلام 

أولا الحماية هو علم قائم بحد ذاته و لا يمكن حصره في مقال واحد أو إثنين لذلك على المبرمج أن يكون دائم الإطلاع على مستجدات الثغرات و كيفية الحماية منها أنصحك بقراءة بعض المقالات عن هذا العلم 

بخصوص سؤالك و هو كيفية منع المستخدم من رفع برمجيات خبيثة بدل صورة ببساطة هذا يندرج تحت التحقق من البيانات أو data validation و الأكيد و الجدير بالذكر أن أي لغة برمجية تتيح و توفر لك أدوات من خلالها تستطيع التأكد أن ما رفعه المستخدم عبارة عن صورة بالفعل ليس التحقق من اللاحقة فقط ( jpg , png , .... ) بل التحقق من الملف كامل هل هو صورة أم لا فإن كان صورة تقوم بحفظه و إستخدامه في موقعك إن كان لا تخبر المستخدم أن ما قام برفعه ليس صورة 

أنا لا أستعمل اللغات التي ذكرتها لكن بإمكانك الإستعانة ب Google بكتابة : 

 Image validation in python 

و سيقترح عليك كيفية التحقق 

بالتوفيق

 

 

تمّ تعديل بواسطة عبود سمير
1 شخص أعجب بهذا

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

شكرا لك   لكن بعض الهكر يقوم بتحويل الصوره الى كود من خلال base64 picture

كما في هالموقع

 https://www.base64-image.de/#fallback

تستطيع تحويل الصور لكود و الاكواد لصوره مره اخرى

قد يدخل الهكر شفرته الى شفره الصوره و اعاده تحويلها الى صوره بامتداد jpg مثلا و رفعها للموقع 

يتعرف عليها الموقع كصوره لكنها محتويه لبرمجه خبيثه

ما الحل ؟

ارجو ان تكون فهمتني

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

و عليكم السلام 

يمكن أيضا التحقق من الصورة و هي على هيئة base64 

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

1 شخص أعجب بهذا

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

شكرا لك ممكن مثال لطريقه التحقق من الصوره كامله ومن محتواها كامل عن طريق base64 ... حتى لو كان المثال باي لغه من لغات البرمجه لكي افهم

1 شخص أعجب بهذا

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن