ລໍາດັບການຫລົບຫນີສອງເທົ່າຫມາຍເຖິງສະຖານະການທີ່ຕົວລະຄອນບາງຢ່າງຖືກຫລົບຫນີຫຼາຍຄັ້ງໃນເວລາຫນີສາຍ. ໃນການເຂົ້າລະຫັດ URL, ຕົວອັກສອນພິເສດມັກຈະຖືກຫລົບຫນີເພື່ອຮັບປະກັນວ່າພວກມັນຖືກສົ່ງຜ່ານຢ່າງຖືກຕ້ອງແລະຖືກວິເຄາະໂດຍເຄື່ອງແມ່ຂ່າຍ. ຕົວຢ່າງ, ຊ່ອງຫວ່າງຖືກຫລົບອອກເປັນ "%20", ແລະເຄື່ອງໝາຍບວກ (+) ປົກກະຕິແລ້ວຈະບໍ່ຖືກຫລົບອອກເນື່ອງຈາກມັນສະແດງເຖິງຊ່ອງຫວ່າງໃນ URL. ແນວໃດກໍ່ຕາມ, ຖ້າເຊີບເວີຫຼົບໜີຕົວລະຄອນທີ່ຫຼົບໜີແລ້ວຜິດພາດອີກຄັ້ງ, ລຳດັບການໜີສອງເທົ່າຈະຖືກສ້າງຂຶ້ນ.
ເຊີບເວີລາຍງານວ່າໂມດູນການກັ່ນຕອງຄໍາຮ້ອງຂໍຖືກຕັ້ງຄ່າເພື່ອປະຕິເສດຄໍາຮ້ອງຂໍທີ່ມີລໍາດັບການຫລົບຫນີສອງເທົ່າ, ເຊິ່ງອາດຈະຫມາຍຄວາມວ່າເຄື່ອງແມ່ຂ່າຍເຊື່ອວ່າເຄື່ອງຫມາຍບວກໃນ URL ໄດ້ຖືກຫລົບຫນີສອງຄັ້ງ, ນັ້ນແມ່ນ, ເຄື່ອງຫມາຍບວກແມ່ນຫນີເປັນ %2B ແລະ ຫຼັງຈາກນັ້ນຫນີອີກເທື່ອຫນຶ່ງ ຄໍານິຍາມແມ່ນ %252B, ເຊິ່ງຖືວ່າບໍ່ຖືກຕ້ອງ. ເຊີບເວີອາດຈະປະຕິເສດການຮ້ອງຂໍດັ່ງກ່າວ ເພາະວ່າມັນອາດຈະເຮັດໃຫ້ເກີດຄວາມຜິດພາດໃນການວິເຄາະ ຫຼືບັນຫາຄວາມປອດໄພ.
ທົບທວນຄືນ
applicationHost.config
ການຕັ້ງຄ່າໄຟລ໌, ກະລຸນາສໍາຮອງໄຟລ໌ກ່ອນທີ່ຈະດັດແປງມັນໃນກໍລະນີ.
%SystemDrive%\Windows\System32\inetsrv\config
ຊອກຫາໄຟລ໌ການຕັ້ງຄ່າເວັບໄຊທີ່ສອດຄ້ອງກັນພາຍໃຕ້ໂຟນເດີ, ໂດຍປົກກະຕິ \applicationHost.config
, ແລະຫຼັງຈາກນັ້ນເປີດມັນດ້ວຍຕົວແກ້ໄຂຂໍ້ຄວາມ (ເຊັ່ນ: Notepad).<requestFiltering>
ສ່ວນ. ໃນ IIS 7, ໂມດູນ URLScan ອາດຈະຂັດຂວາງການຮ້ອງຂໍ URL ທີ່ມີເຄື່ອງຫມາຍບວກໂດຍຄ່າເລີ່ມຕົ້ນ.<requestFiltering>
ພາກສ່ວນ, ທ່ານສາມາດເພີ່ມ a <allowDoubleEscaping>
ອົງປະກອບ, ກໍານົດມູນຄ່າຂອງຕົນເປັນ true
, ເພື່ອອະນຸຍາດໃຫ້ມີເຄື່ອງຫມາຍບວກຢູ່ໃນ URL. ຕົວຢ່າງ:<security> <requestFiltering allowDoubleEscaping="true"></requestFiltering> </security>