လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> PHP စီမံကိန်း၏ configuration file ကိုလျှို့ဝှက်စွာပြောင်းလဲခြင်းရှိမရှိရှာဖွေရန် MD5_File () ကိုမည်သို့အသုံးပြုရမည်နည်း။

PHP စီမံကိန်း၏ configuration file ကိုလျှို့ဝှက်စွာပြောင်းလဲခြင်းရှိမရှိရှာဖွေရန် MD5_File () ကိုမည်သို့အသုံးပြုရမည်နည်း။

M66 2025-06-23

PHP Projects များတီထွင်သည့်အခါ configuration files များကဲ့သို့သောအရေးကြီးသောအချက်အလက်များ, API keys များစသည်တို့ကိုသိမ်းဆည်းထားသည့်အရေးကြီးသောအချက်အလက်များကိုသိမ်းဆည်းထားသည့်အချက်အလက်များကိုခွင့်ပြုချက်မရှိသော 0 န်ထမ်းများနှင့်အတူပာအနေဖြင့်လုံခြုံရေးအန္တရာယ်များ, အချက်အလက်ချိုးဖောက်မှုများသို့မဟုတ်အစီအစဉ်ပုံမှန်မဟုတ်သော ထို့ကြောင့် configuration file ကိုအနှောင့်အယှက်ဖြစ်စေခြင်းရှိမရှိချက်ချင်းသိရှိရန်အထူးအရေးကြီးသည်။

ဤဆောင်းပါးသည် configuration file ၏သမာဓိကိုရှာဖွေရန် PHP Built-in function MD5_File () ကိုမည်သို့အသုံးပြုရမည်ကိုမိတ်ဆက်ပေးလိမ့်မည်။ ထို့ကြောင့်လျှို့ဝှက်စွာပြောင်းလဲခြင်းရှိ,

MD5_File () နိဒါန်း

MD5_File () သည် PHP မှသတ်မှတ်ထားသောဖိုင်၏ MD5 hash value (hash) ကိုတွက်ချက်ရန်ထောက်ပံ့ပေးသောလုပ်ဆောင်ချက်တစ်ခုဖြစ်သည်။ MD5 သည်ကျယ်ပြန့်စွာအသုံးပြုသော hash function ဖြစ်သည်။

ဖိုင်၏ MD5 တန်ဖိုးကို အသုံးပြု. ယခင်သိမ်းဆည်းထားသော MD5 သည် MD5 သည်လက်ရှိ MD5 နှင့်ကိုက်ညီမှုရှိမရှိနှင့်နှိုင်းယှဉ်နိုင်သည်။ ထို့နောက်ဖိုင်ကိုပြုပြင်မွမ်းမံခြင်းရှိမရှိဆုံးဖြတ်ပါ။

configuration file modification ကိုရှာဖွေရန်အခြေခံအကြံဥာဏ်များ

  1. Configuration file သည်ပုံမှန်ဖြစ်ပြီးလုံခြုံစိတ်ချရသောဖိုင်သည်ပုံမှန်ဖြစ်ပြီးလုံခြုံစိတ်ချရသည့် MD5 တန်ဖိုးကိုသတ်မှတ်ပြီးအထူးဖိုင် ( သို့) ဒေတာဘေ့စ်သို့စာရေးခြင်းကဲ့သို့သော Save လုပ်ပါ။

  2. Detection Phase : ပရိုဂရမ်ဖွင့်သည့်အခါတိုင်း configuration file ၏ MD5 တန်ဖိုးကိုပြန်လည်တွက်ချက်ပြီးယခင်သိမ်းဆည်းထားသောတန်ဖိုးနှင့်နှိုင်းယှဉ်ပါ။

  3. ရလဒ်များဆိုင်ရာဆုံးဖြတ်ချက် -

    • MD5 သည်တညီတညွတ်တည်းဖြစ်ပါက configuration file ကိုပြုပြင်မထားပါ။

    • MD5 သည်ကိုက်ညီမှုမရှိပါက Configuration file ကိုအနှောင့်အယှက်ပေးနိုင်သည်။

နမူနာကုဒ်

configuration file path သည် config.php ဖြစ်သည်ဟုယူဆလျှင်, ရှာဖွေတွေ့ရှိမှုအကောင်အထည်ဖော်ရန်အောက်ပါကုဒ်ကိုသုံးနိုင်သည်။

 <?php
// configuration ဖိုင်လမ်းကြောင်း
$configFile = __DIR__ . '/config.php';

// လူသိများလုံခြုံရေးပရိုဖိုင်းများကိုကယ်တင်ပါMD5အဘိုး(အမှန်မှာ၎င်းသည်ဒေတာဘေ့စ်သို့မဟုတ်ဖိုင်တစ်ခုမှဖတ်ရှုနိုင်သည်)
$knownMd5 = 'e99a18c428cb38d5f260853678922e03'; // 示例အဘိုး,请替换为实际အဘိုး

// လက်ရှိ configuration ဖိုင်ကိုတွက်ချက်ပါMD5
$currentMd5 = md5_file($configFile);

if ($currentMd5 === false) {
    echo "configuration file ကိုမဖတ်နိုင်ပါ!";
    exit;
}

// ခြားနားMD5အဘိုး
if ($currentMd5 === $knownMd5) {
    echo "configuration file ကိုပြုပြင်မထားဘူး,MD5အတည်ပြုအတည်ပြု。";
} else {
    echo "အသိပေး!configuration file ကိုပြုပြင်ထားသည်,MD5အတည်ပြုပျက်ကွက်!";
    // သင်ဒီမှာမှတ်တမ်းတစ်ခုရေးနိုင်တယ်,အီးမေးလ်များသို့မဟုတ်အခြားနှိုးစက်ပို့ပါ
}
?>

ဥပမာပြပါ

  • စီမံကိန်းကိုဖြန့်ချိပြီးကန ဦး MD5 တန်ဖိုးကိုရယူသည့်အခါ MD5_File () ကို သင်ပထမ ဦး စွာအသုံးပြုနိုင်သည်။

  • ဤဥပမာတွင် ဒေါ်လာသန်းရဂိုဒေသ သည် HardCoded ဖြစ်ပြီး၎င်းသည်အမှန်တကယ်စီမံကိန်းတွင်ဒေတာဘေ့စ်သို့မဟုတ်လုံခြုံစိတ်ချရသောဖိုင်တစ်ခုကဲ့သို့လုံခြုံစိတ်ချရသောသိုလှောင်မှုတစ်ခုသို့ရေးရန်အကြံပြုသည်။

  • configuration file path အပြောင်းအလဲများရှိပါကကုဒ်အတွင်းရှိလမ်းကြောင်းကိုတစ်ပြိုင်တည်းချိန်ကိုက်ရန်လိုအပ်သည်။

ကန ဦး MD5 တန်ဖိုးကိုဘယ်လိုရနိုင်မလဲ။

သင်ကယာယီ script ကိုရေးပြီး configuration file ၏ MD5 တန်ဖိုးကိုရရန်တစ်ကြိမ်လည်ပတ်နိုင်သည်။

 <?php
echo md5_file(__DIR__ . '/config.php');
?>

နောက်ဆက်တွဲနှိုင်းယှဉ်မှုအတွက် output string ကိုစံအဖြစ်သိမ်းဆည်းပါ။

စိတ်ကူးများချဲ့ထွင်

  • အချိန်ကိုက်ထောက်လှမ်းခြင်း - အချိန်မီအလွယ်တကူရှာဖွေတွေ့ရှိရန်ရှာဖွေတွေ့ရှိမှု sconts များကိုပုံမှန်ရှာဖွေခြင်း sconts များကိုပုံမှန်ရှာဖွေရန်စီစဉ်ထားသောအလုပ်များကိုအသုံးပြုပါ။

  • မှတ်တမ်းများနှင့်ပေါင်းစပ် : ဖိုင်ကိုပြုပြင်မွမ်းမံထားကြောင်းရှာဖွေတွေ့ရှိပြီးနောက်, လွယ်ကူသောစုံစမ်းစစ်ဆေးမှုအတွက်သက်ဆိုင်ရာသတင်းအချက်အလက် (အချိန်, IP, etc ။ ) ကိုမှတ်တမ်းတင်ပါ။

  • Multi-file detection : စီမံကိန်းတွင်အရေးကြီးသော configuration files များစွာရှိပါက၎င်းတို့ကိုအသုတ်များနှင့်ကွင်းဆက်ရှာဖွေတွေ့ရှိမှုတွင်သိမ်းဆည်းနိုင်သည်။

ကိုးကားစရာ link

  • PHP တရားဝင်စာရွက်စာတမ်းများ - MD5_File ()