လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> PHP နှင့် CGI Cross-site script attack (XSS) ကာကွယ်စောင့်ရှောက်ရေးလမ်းညွှန်အပြည့်အစုံနှင့်လက်တွေ့လမ်းညွှန်များ

PHP နှင့် CGI Cross-site script attack (XSS) ကာကွယ်စောင့်ရှောက်ရေးလမ်းညွှန်အပြည့်အစုံနှင့်လက်တွေ့လမ်းညွှန်များ

M66 2025-06-25

PHP နှင့် CGI Cross-site script ကိုတိုက်ခိုက်မှုဆိုင်ရာမဟာဗျူဟာနှင့်လက်တွေ့လမ်းညွှန်

အင်တာနက်လျင်မြန်စွာဖွံ့ဖြိုးတိုးတက်မှုနှင့်အတူကွန်ရက်လုံခြုံရေးပြ issues နာများသည်ပိုမိုအရေးကြီးလာသည်နှင့်အမျှပိုမိုအရေးကြီးလာသည်။ Cross-site scripting (XSS) သည်ဆိုက်ဘာတိုက်ခိုက်မှု၏အသုံးအများဆုံးအမျိုးအစားများအနက်မှတစ်ခုဖြစ်သည်။ ဝက်ဘ်ဆိုက်လုံခြုံရေးကိုပြင်းထန်သောခြိမ်းခြောက်မှုဖြစ်သည်။ ဤဆောင်းပါးသည် PHP နှင့် CGI ပရိုဂရမ်ပတ်ဝန်းကျင်တွင်နက်ရှိုင်းသောနိယာမများကိုနက်နက်နဲနဲလေ့လာသုံးသပ်ပြီးလက်တွေ့ကာကွယ်စောင့်ရှောက်ရေးအစီအမံများနှင့်ကုဒ်အကောင်အထည်ဖော်မှုဥပမာအမျိုးမျိုးကိုမိတ်ဆက်ပေးလိမ့်မည်။

1 ။ Cross-site scripting တိုက်ခိုက်မှု၏အခြေခံနိယာမများ

Cross-site scripting တိုက်ခိုက်မှုများသည်အထိခိုက်မခံသောသတင်းအချက်အလက်များကိုခိုးယူခြင်းသို့မဟုတ် page changes ည့်သည်များအား it ည့်သည်၏ browser တွင် execute လုပ်ရန်ဝက်ဘ်စာမျက်နှာထဲသို့ထည့်သွင်းခြင်းဖြင့်တိုက်ခိုက်သူအားရည်ညွှန်းသည်။ XSS တိုက်ခိုက်မှုများသည်အဓိကအားဖြင့်ပုံစံသုံးမျိုးပါဝင်သည်။ သိုလှောင်မှုအမျိုးအစား, ရောင်ပြန်ရေးအမျိုးအစားနှင့် dom type ။

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

2 ။ PHP နှင့် CGI ကာကွယ်ရေးအစီအမံများနှင့်ကုဒ်အကောင်အထည်ဖော်မှု

1 ။ filtering နှင့်စိစစ်အတည်ပြု

အသုံးပြုသူ input သည် XSS တိုက်ခိုက်မှုများအတွက်အဓိက 0 င်ရောက်ခြင်းဖြစ်ပြီး,

 // PHPအထူးအက္ခရာများကိုစစ်ထုတ်ပါ
function filter_input($input) {
  return htmlspecialchars($input, ENT_QUOTES, 'UTF-8');
}

// PHPinput ကိုအရှည် Verify
function validate_input($input, $min_len, $max_len) {
  $input_len = mb_strlen($input, 'UTF-8');
  if ($input_len < $min_len || $input_len > $max_len) {
    return false;
  }
  return true;
}
 sub filter_input {
  my ($input) = @_;
  $input =~ s/</</g;
  $input =~ s/>/>/g;
  $input =~ s/'/&apos;/g;
  $input =~ s/"/"/g;
  return $input;
}

sub validate_input {
  my ($input, $min_len, $max_len) = @_;
  my $input_len = length($input);
  if ($input_len < $min_len || $input_len > $max_len) {
    return 0;
  }
  return 1;
}

2 ။ output encoding

filtering input ကိုအပြင် output ကို encoding လုပ်ခြင်းသည်အန္တရာယ်ရှိသော scripts များကိုကွပ်မျက်ခြင်းမှကာကွယ်ရန်အရေးကြီးသည်။

 // PHPoutput encoding
function output_encode($output) {
  return htmlspecialchars($output, ENT_QUOTES, 'UTF-8');
}
 sub output_encode {
  my ($output) = @_;
  $output =~ s/</</g;
  $output =~ s/>/>/g;
  $output =~ s/'/&apos;/g;
  $output =~ s/"/"/g;
  return $output;
}

3 ။ လုံခြုံသော HTTP header ကို set up လုပ်ပါ

အကြောင်းအရာ - လုံခြုံရေးမူဝါဒကဲ့သို့သော HTTP ခေါင်းစီးများကိုသတ်မှတ်ခြင်းဖြင့်စာမျက်နှာ၏အရင်းအမြစ်ကိုကန့်သတ်ပြီး XSS အန္တရာယ်များကိုလျှော့ချနိုင်သည်။

 // PHPတည်ဆောက်သည်Content-Security-Policyဉီးခေါင်း
header("Content-Security-Policy: default-src 'self'; script-src 'self' 'unsafe-inline'");
 # CGIတည်ဆောက်သည်Content-Security-Policyဉီးခေါင်း
print "Content-Security-Policy: default-src 'self'; script-src 'self' 'unsafe-inline'";

4 ။ လုံခြုံစိတ်ချရသော session ကိုစီမံခန့်ခွဲမှု

session ပြန်ပေးဆွဲခြင်းနှင့်ပြုပြင်ခြင်းကိုကာကွယ်ရန်နှင့် 0 က်ဘ်ဆိုက်လုံခြုံရေးကိုထိရောက်စွာတိုးတက်စေရန်အတွက်လုံခြုံစိတ်ချရသော session ယန္တရားတစ်ခုကိုအသုံးပြုပါ။

 // PHPတည်ဆောက်သည်sessionဘေးကင်းလုံခြုံရေး parameters တွေကို
session_set_cookie_params(0, '/', '', true, true);
session_regenerate_id();

5 ။ ဆာဗာ firewall configuration ကို

ဆာဗာအဆင့် firewalls များသည်အထိခိုက်မခံသော ports များကိုလက်လှမ်းမီနိုင်ပြီးတိုက်ခိုက်မှုဖြစ်နိုင်ခြေကိုလျှော့ချနိုင်သည်။

3 ။ အကျဉ်းချုပ်

Cross-site scripting တိုက်ခိုက်မှုများသည်လက်ရှိအင်တာနက်ဝန်းကျင်တွင်ဘုံခြိမ်းခြောက်မှုတစ်ခုဖြစ်သည်။ Input filtering နှင့်စိစစ်ခြင်း, output encoding, output encoding, formpp လုံခြုံရေးခေါင်းကိုက်ခြင်း, formpp လုံခြုံရေးခေါင်းကိုက်ခြင်း, developer များသည် application များ၏တည်ငြိမ်မှုကိုသေချာစေရန်လုံခြုံရေးအကောင်းဆုံးအလေ့အကျင့်များကိုဆက်လက်အာရုံစိုက်သင့်သည်။

ဤဆောင်းပါးသည် PHP နှင့် CGI ပတ် 0 န်းကျင်ရှိ Cross-site scripting တိုက်ခိုက်မှုများအတွက်ကာကွယ်ရေးနည်းဗျူဟာများနှင့်ကုဒ်အကောင်အထည်ဖော်မှုကိုအသေးစိတ်ဖော်ပြခဲ့သည်။ လုံခြုံစိတ်ချရသော 0 ဘ်ဆိုဒ်တစ်ခုတည်ဆောက်ရန်သင့်အတွက်အထောက်အကူဖြစ်လိမ့်မည်ဟုကျွန်ုပ်တို့မျှော်လင့်ပါသည်။