PHP Development တွင်ပုံစံတင်သွင်းမှုကိုကာကွယ်ရန်ပုံစံတင်သွင်းမှု၏အရင်းအမြစ်ကိုအတည်ပြုရန်မရှိမဖြစ်လိုအပ်သည်။ အောက်ပါနည်းလမ်းများသည်တင်သွင်းမှုတောင်းဆိုမှုသည်မျှော်လင့်ထားသည့်စာမျက်နှာမှလာပြီး 0 ဘ်ဆိုဒ်၏လုံခြုံရေးကိုတိုးတက်ကောင်းမွန်စေခြင်းရှိ,
HTTP ကိုးကားချက်ခေါင်းစဉ်တွင်အသုံးပြုသူသည်လက်ရှိစာမျက်နှာကိုရယူရန်အရင်းအမြစ် URL ပါရှိသည်။ ဒီခေါင်းစဉ်ကိုရှာဖွေခြင်းအားဖြင့်တောင်းဆိုမှုသည် domain name မှရရှိသည်ကိုသင်အတည်ပြုနိုင်သည်။
if (isset($_SERVER['HTTP_REFERER']) && strpos($_SERVER['HTTP_REFERER'], 'yourdomain.com') !== false) {
// တူညီသောဒိုမိန်းအမည်မှတောင်းဆိုမှု
}
Post ဒေတာတွင်ပုံစံတင်ပြချက်များနှင့်ပတ်သက်သောအချက်အလက်များပါ 0 င်သည်။ သတ်သတ်မှတ်မှတ်နယ်ပယ်တစ်ခု၏တန်ဖိုးသည်မျှော်လင့်ချက်များနှင့်ကိုက်ညီမှုရှိမရှိစစ်ဆေးခြင်းအားဖြင့်တောင်းဆိုမှု၏ရင်းမြစ်ကိုသင်အတည်ပြုနိုင်သည်။
if (isset($_POST['nonce']) && $_POST['nonce'] === 'expected_nonce') {
// မျှော်လင့်ထားသည့်ပုံစံမှတောင်းဆိုမှု
}
CSRF Token သည် session တစ်ခုစီတွင်ကျပန်းထုတ်ပေးသည်။ ၎င်းကိုပုံစံဖြင့်လျှို့ဝှက်နယ်ပယ်တစ်ခုအဖြစ်တင်သွင်းပြီးသင်ခန်းစာတွင်တိုကင်နှင့်နှိုင်းယှဉ်နိုင်သည်။
// session တစ်ခုအတွက်သိုလှောင် CSRF လက်ခဏာသက်သေ
$_SESSION['csrf_token'] = bin2hex(random_bytes(32));
// ပုံစံအတွက်လျှို့ဝှက်ကွက်လပ်များပါဝင်သည်
<input type="hidden" name="csrf_token" value="<?php echo $_SESSION['csrf_token']; ?>">
// တင်သွင်းစစ်ဆေးပါလက်ခဏာသက်သေ
if (isset($_POST['csrf_token']) && $_POST['csrf_token'] === $_SESSION['csrf_token']) {
// မျှော်လင့်ထားသည့်ပုံစံမှတောင်းဆိုမှု
}
ဆားသည်လက်မထပ်သောအချက်အလက်များနှင့်ထည့်သွင်းထားသည့်ကျပန်း string တစ်ခုဖြစ်ပြီးဒေတာအတုများကိုကာကွယ်ရန် Hashed ဖြစ်သည်။
// ဆားထုတ်လုပ်ပါ
$salt = bin2hex(random_bytes(32));
// ဒေတာမှဆားထည့်ပါ
$data = 'some_data' . $salt;
// ဒေတာဒေတာ
$hash = hash('sha256', $data);
// တင်သွင်းစစ်ဆေးပါ hash
if (isset($_POST['hash']) && $_POST['hash'] === $hash) {
// မျှော်လင့်ထားသည့်ပုံစံမှတောင်းဆိုမှု
}
အထက်ပါနည်းလမ်းများတစ်ခုသို့မဟုတ်တစ်ခုထက် ပို. မှတစ်ဆင့် developer များ PHP ရှိပုံစံတင်ပြချက်များ၏ရင်းမြစ်ကိုထိရောက်စွာအတည်ပြုနိုင်သည်။