تزریق sql – راه امن برای آپلود متن و تصویر در php

فقط می خواهم بررسی کنم که چگونه اسکریپت ها و پروژه های من آسیب پذیر هستند. از تحقیق وبلاگ و پاسخ متخصص، من متوجه شدم حمله و تزریق ممکن است بر اساس

  • نوع فایل
  • اظهارات sql
  • دسترسی به پوشه تصویر در ریشه،

من مطمئن نیستم که چقدر من امن . لطفا راهنمایی کنید که من باید در اسکریپت های زیر برای بهبود امنیت اضافه کنم؟

  200000) {
                echo "فایل خیلی بزرگ است"؛
                خروج ()؛
            }
            اگر ($ imageFileType! = "jpg" && $ imageFileType! = "png" && $ imageFileType! = "jpeg" && $ imageFileType! = "gif") {
                echo "فقط jpg / png / gif تصویر!"؛
                خروج ()؛
            }
            اگر ($ verifyimg ['mime']! = 'image / png' && $ verifyimg ['mime']! = 'image / jpg' && $ verifyimg ['mime']! = 'image / jpeg' && $ verifyimg ['mime']! = 'تصویر / gif ') {
                اکو "تصویر معتبر نیست"؛
                خروج؛
            }
            دیگر {
                $ new_img = substr (md5 (time ())، 0، 10). '.' . $ img_ext؛
                $ target_file = $ target_dir. $ new_img؛
                move_uploaded_file ($ _ FILES ["file"]["tmp_name"]، $ target_file)؛
                $ query = $ con-> prepare ('INSERT به اخبار (عنوان، محتوا، keytag، date، img) VALUES (: head،: content،: keytag،: date،: new_img)')؛
                $ query-> bindParam (': new_img'، $ new_img)؛

            }
        }
        اگر (خالی ($ _ FILES ['file']['name'])) {
            $ query = $ con-> prepare ('INSERT to news (header، content، keytag، date) VALUES (: head،: content،: keytag،: date)')؛
        }
        $ query-> bindParam (': heading'، $ _POST ['heading'])؛
        $ query-> bindParam (': content'، $ _POST ['content'])؛
        $ query-> bindParam (': keytag'، $ _POST ['keytag'])؛
        $ query-> bindParam (': date'، $ _POST ['date'])؛
        اگر ($ query-> execute ()) {
            اکو "به صورت موفقیت آمیز"؛
        }؛
    }
؟>

.htaccess

برای جلوگیری از دسترسی مستقیم

 RewriteEngine در
RewriteCond٪ {HTTP_REFERER}! ^ http: // www  .your-domain  .com /.*$ [NC]
RewriteCond٪ {HTTP_REFERER}! ^ http: // www  .your-domain  .com $ [NC]
RewriteRule. * . (wav | swf | jpg | jpeg | gif | png | bmp | js | css) $ - [F,NC,L]