လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> PHP 0 က်ဘ်ဆိုဒ်ကိုအန္တရာယ်ရှိတဲ့ဖိုင်တင်ချောင်းဖြင့်တိုက်ခိုက်ခြင်းမှမည်သို့ကာကွယ်နိုင်သနည်း။ အကောင်းဆုံးအကာအကွယ်နည်းလမ်းများနှင့်ဥပမာများ

PHP 0 က်ဘ်ဆိုဒ်ကိုအန္တရာယ်ရှိတဲ့ဖိုင်တင်ချောင်းဖြင့်တိုက်ခိုက်ခြင်းမှမည်သို့ကာကွယ်နိုင်သနည်း။ အကောင်းဆုံးအကာအကွယ်နည်းလမ်းများနှင့်ဥပမာများ

M66 2025-07-03

PHP 0 က်ဘ်ဆိုဒ်ကိုအန္တရာယ်ရှိတဲ့ဖိုင်တင်ချောင်းဖြင့်တိုက်ခိုက်ခြင်းမှမည်သို့ကာကွယ်နိုင်သနည်း။

အင်တာနက်အလျင်အမြန်ဖွံ့ဖြိုးတိုးတက်မှုဖြင့်ဝက်ဘ်ဆိုက်များသည် PHP ကိုဖွံ့ဖြိုးရေးဘာသာစကားအဖြစ်ရွေးချယ်သည်။ သို့သော် PHP ၏ပွင့်လင်းမှုနှင့်ပြောင်းလွယ်ပြင်လွယ်မှုသည်၎င်းကိုဟက်ကာများ၏ပစ်မှတ်များထဲမှတစ်ခုဖြစ်သည်။ အန္တရာယ်ရှိတဲ့ဖိုင်တင်ခြင်းတိုက်ခိုက်မှုများသည်တိုက်ခိုက်ရန်အသုံးအများဆုံးနည်းလမ်းများအနက်မှတစ်ခုဖြစ်သည်။ ဟက်ကာများသည် 0 က်ဘ်ဆိုက်ကိုထိန်းချုပ်နိုင်သည့်သို့မဟုတ်အန္တရာယ်ရှိသောကုဒ်များပါ 0 င်သောဖိုင်များကိုတင်ခြင်းဖြင့်အသုံးပြုသူများထံမှအထိခိုက်မခံသောသတင်းအချက်အလက်များကိုခိုးယူနိုင်သည်။ PHP 0 ဘ်ဆိုဒ်များလုံခြုံရေးအတွက်လုံခြုံရေးသေချာစေရန်ဤဆောင်းပါးသည်ထိရောက်သောကာကွယ်မှုနည်းလမ်းများနှင့်နမူနာကုဒ်များကိုမိတ်ဆက်ပေးလိမ့်မည်။

ဖိုင်အမျိုးအစားကိုစစ်ဆေးပါ

ပထမ ဦး စွာကျွန်ုပ်တို့သည်တင်ထားသောဖိုင်များအမျိုးအစားကိုစစ်ဆေးရန်နှင့်တရားမ 0 င်ဖိုင်တင်ခြင်းကိုရှောင်ရှားရန်တင်ထားသည့်ဖိုင်အမျိုးအစားများကိုကန့်သတ်ထားသည်။ PHP ၏ $ _files variable မှတဆင့်သင်သည်တင်ထားသောဖိုင်အမျိုးအစားကိုရယူပြီး၎င်းကိုခွင့်ပြုထားသောအမျိုးအစားနှင့်နှိုင်းယှဉ်နိုင်သည်။ ဤတွင်ရိုးရှင်းသောဥပမာကုဒ်တစ်ခုဖြစ်သည်။

<?php<br> $ lefttypes = array (&#39;image / Jpeg&#39;, &#39;Image / PNG&#39;, &#39;Image / GIF&#39;);<br> $ uploadedfiletype = $ _files [&#39;file&#39;] [&#39;type&#39;s];<br> IF (in_array ($ uploadedfiletype, $ Dileptypes))<br> // ဖိုင်တင်ခြင်းယုတ္တိဗေဒကိုဆက်လက်လုပ်ဆောင်ပါ<br> } အခြား<br> Echo &#39;Image Files&#39; ကိုသာတင်ပါ။<br> }<br> >

ဖိုင်အရွယ်အစားကိုစစ်ဆေးပါ

ဖိုင်အမျိုးအစားများကိုစစ်ဆေးခြင်းအပြင်ကျွန်ုပ်တို့သည်တင်ထားသောဖိုင်များ၏အရွယ်အစားကိုကန့်သတ်ရန်လိုအပ်သည်။ တင်ထားသောဖိုင်များ၏အရွယ်အစားကိုကန့်သတ်ခြင်းအားဖြင့်ဟက်ကာများသည်ဆာဗာအရင်းအမြစ်များကိုထိခိုက်စေခြင်း, ဤတွင်သက်ဆိုင်ရာကုဒ်နမူနာဖြစ်ပါတယ်:

<?php<br> $ maxfilesize = 1024 * 1024; // 1MB အထိကန့်သတ်<br> $ uploadedFileSeize = $ _files [&#39;file&#39;] [&#39;size&#39;];<br> IF ($ uploadedfilesizilizeize <= $ maxfileize) {<br> // ဖိုင်တင်ခြင်းယုတ္တိဗေဒကိုဆက်လက်လုပ်ဆောင်ပါ<br> } အခြား<br> Echo &#39;တင်ဒါဖိုင်အရွယ်အစားသည်ကန့်သတ်ချက်ထက်ကျော်လွန်သည်။<br> }<br> >

ဖိုင်အမည်နှင့်လမ်းကြောင်းပြင်ဆင်ပါ

အန္တရာယ်ရှိတဲ့ဖိုင်များကို တင်. ကွပ်မျက်ခြင်းမှကာကွယ်ရန်နှင့်၎င်းတို့ကိုအကောင်အထည်ဖော်ရန်ကျွန်ုပ်တို့အားတင်ထားသောဖိုင်၏အမည်နှင့်လမ်းကြောင်းကိုပြုပြင်နိုင်သည်။ အသုံးပြုသူမှတိုက်ရိုက်တင်ထားသည့်မူရင်းဖိုင်အမည်ကိုအသုံးပြုမည့်အစား timestamps သို့မဟုတ်ကျပန်းကြိုးများကိုအသုံးပြုခြင်းဖြင့်ဖိုင်အမျိုးအစားအသစ်တစ်ခုကိုထုတ်လုပ်ပါ။ ထို့အပြင် uploaded ဖိုင်ကိုတိုက်ရိုက် 0 င်ရောက်ခြင်းကိုရှောင်ရှားရန်အတွက်တင်ထားသောဖိုင်ကို Non-web root directory တွင်သိမ်းဆည်းရန်အကြံပြုသည်။ အောက်ပါတို့သည်သက်ဆိုင်သောသင်္ကေတများဖြစ်သည်။

<?php<br> $ Uploaddirectory = &#39;/ Path / TO / UPLOAD / Folder / Folder / Folder / Folder / Folder / Folder) // အမှန်တကယ် upload ဖိုင်လမ်းညွှန်သို့ပြုပြင်ပါ<br> $ uploadedFilename = အချိန် () ။ &#39;_&#39; ။ Rand (1000, 9999) Rand ။ &#39;_&#39; ။ $ _files [&#39;file&#39;] [&#39;name&#39;];<br> $ uploadedfilepilepath = $ uploaddirectory ။ $ uploadededfilename;<br> if (Move_uploaded_file ($ _ ဖိုင်များ [&#39;file file&#39;] [&#39;tmp_name&#39;], $ uploadededfilepathat)<br> // ဖိုင်တင်ခြင်းသည်အောင်မြင်ပြီးအခြားစီးပွားရေးယုတ္တိဗေဒကိုဆက်လက်လုပ်ဆောင်သည်<br> } အခြား<br> Echo &#39;File Upload မအောင်မြင်ပါ,<br> }<br> >

whitelist ဖန်တီးပါ

whitelist ဖန်တီးခြင်းဖြင့်တင်ရန်ဖိုင်များကိုကန့်သတ်ထားပါ။ တရားဝင်အသုံးပြုသူများသည်တင်ဒါ၏ IP address ကိုစစ်ဆေးခြင်းနှင့် whitelist နှင့်ကိုက်ညီမှုရှိစေရန်သင်တရားဝင်အသုံးပြုသူများသည်ဖိုင်များကို upload တင်နိုင်သည်။ အောက်ဖော်ပြပါသည်သက်ဆိုင်ရာနမူနာကုဒ်ဖြစ်သည်။

<?php<br> $ leavits = array (&#39;127.0.0.1),&#39; 192.168.0.1 &#39;&#39;; // ယုံကြည်စိတ်ချရသော IP address ကိုမှပြုပြင်မွမ်းမံ<br> $ Uploadedip = $ _server [&#39;remote_addr&#39;;<br> IF (in_array ($ uploadedipedipipp, $ leftiips))<br> // ဖိုင်တင်ခြင်းယုတ္တိဗေဒကိုဆက်လက်လုပ်ဆောင်ပါ<br> } အခြား<br> Echo &#39;ဖိုင်များကို upload လုပ်ရန်ခွင့်ပြုချက်မရှိပါ။<br> }<br> >

အကျဉ်းချုပ်

အထက်ပါအစီအမံများမှတဆင့် PHP ဝက်ဘ်ဆိုက်များသည်အန္တရာယ်ရှိသောဖိုင်တင်ခြင်းဆိုင်ရာတိုက်ခိုက်မှုများကိုများစွာကာကွယ်နိုင်သည်။ သို့သော်ဝက်ဘ်ဆိုက်လုံခြုံရေးသည်စဉ်ဆက်မပြတ်အသစ်ပြောင်းခြင်းများနှင့်တိုးမြှင့်ကာကွယ်စောင့်ရှောက်ရေးအစီအမံများလိုအပ်သည်။ ပုံမှန် php ဗားရှင်းကို အသုံးပြု. စနစ်အားနည်းချက်များအားပုံမှန် pupting လုပ်ခြင်း,