FixVibe
Covered by FixVibemedium

ການຕັ້ງຄ່າສ່ວນຫົວຄວາມປອດໄພບໍ່ພຽງພໍ

ແອັບພລິເຄຊັນເວັບມັກຈະລົ້ມເຫລວໃນການປະຕິບັດສ່ວນຫົວຄວາມປອດໄພທີ່ສໍາຄັນ, ເຮັດໃຫ້ຜູ້ໃຊ້ສໍາຜັດກັບ scripting ຂ້າມເວັບໄຊທ໌ (XSS), clickjacking, ແລະການສີດຂໍ້ມູນ. ໂດຍການປະຕິບັດຕາມຄໍາແນະນໍາດ້ານຄວາມປອດໄພຂອງເວັບໄຊຕ໌ທີ່ສ້າງຕັ້ງຂຶ້ນແລະນໍາໃຊ້ເຄື່ອງມືການກວດສອບເຊັ່ນ MDN Observatory, ນັກພັດທະນາສາມາດແຂງຕົວສໍາລັບຄໍາຮ້ອງສະຫມັກຂອງເຂົາເຈົ້າຕໍ່ກັບການໂຈມຕີທົ່ວໄປໂດຍຕົວທ່ອງເວັບ.

CWE-693

ຜົນກະທົບ

ການບໍ່ມີສ່ວນຫົວຄວາມປອດໄພເຮັດໃຫ້ຜູ້ໂຈມຕີສາມາດດໍາເນີນການຄລິກ, ລັກຄຸກກີ້ຂອງເຊດຊັນ, ຫຼືດໍາເນີນການສະຄຣິບຂ້າມເວັບໄຊ (XSS) [S1]. ຖ້າບໍ່ມີຄໍາແນະນໍາເຫຼົ່ານີ້, ຕົວທ່ອງເວັບບໍ່ສາມາດບັງຄັບໃຊ້ຂອບເຂດຄວາມປອດໄພ, ນໍາໄປສູ່ການຂູດຂໍ້ມູນທີ່ມີທ່າແຮງແລະການກະທໍາຂອງຜູ້ໃຊ້ທີ່ບໍ່ໄດ້ຮັບອະນຸຍາດ [S2].

ສາເຫດ

ບັນຫາດັ່ງກ່າວເກີດມາຈາກຄວາມລົ້ມເຫລວໃນການຕັ້ງຄ່າເວັບເຊີບເວີ ຫຼືກອບໂປຣແກຣມເພື່ອລວມເອົາສ່ວນຫົວຄວາມປອດໄພ HTTP ມາດຕະຖານ. ໃນຂະນະທີ່ການພັດທະນາມັກຈະຈັດລໍາດັບຄວາມສໍາຄັນຂອງ HTML ແລະ CSS ທີ່ເປັນປະໂຫຍດ [S1], ການຕັ້ງຄ່າຄວາມປອດໄພແມ່ນຖືກຍົກເລີກເລື້ອຍໆ. ເຄື່ອງມືການກວດສອບເຊັ່ນ MDN Observatory ຖືກອອກແບບມາເພື່ອກວດພົບຊັ້ນປ້ອງກັນທີ່ຂາດຫາຍໄປແລະໃຫ້ແນ່ໃຈວ່າການໂຕ້ຕອບລະຫວ່າງຕົວທ່ອງເວັບແລະເຄື່ອງແມ່ຂ່າຍແມ່ນປອດໄພ [S2].

ລາຍລະອຽດດ້ານວິຊາການ

ສ່ວນຫົວຄວາມປອດໄພໃຫ້ບຣາວເຊີດ້ວຍຄຳແນະນຳຄວາມປອດໄພສະເພາະເພື່ອຫຼຸດຜ່ອນຄວາມສ່ຽງທົ່ວໄປ:

  • ນະໂຍບາຍຄວາມປອດໄພຂອງເນື້ອຫາ (CSP): ຄວບຄຸມວ່າຊັບພະຍາກອນໃດສາມາດໂຫຼດໄດ້, ປ້ອງກັນການປະຕິບັດສະຄຣິບທີ່ບໍ່ໄດ້ຮັບອະນຸຍາດ ແລະສີດຂໍ້ມູນ [S1].
  • Strict-Transport-Security (HSTS): ຮັບປະກັນວ່າຕົວທ່ອງເວັບພຽງແຕ່ຕິດຕໍ່ສື່ສານຜ່ານການເຊື່ອມຕໍ່ HTTPS ທີ່ປອດໄພ [S2].
  • X-Frame-Options: ປ້ອງກັນບໍ່ໃຫ້ແອັບພລິເຄຊັນຖືກສະແດງຢູ່ໃນ iframe, ເຊິ່ງເປັນການປ້ອງກັນຕົ້ນຕໍຕໍ່ກັບການຄລິກ [S1].
  • X-Content-Type-Options: ປ້ອງກັນບຣາວເຊີຈາກການຕີຄວາມໝາຍໄຟລ໌ເປັນປະເພດ MIME ທີ່ແຕກຕ່າງກັນກວ່າທີ່ລະບຸໄວ້, ຢຸດການໂຈມຕີ MIME-sniffing [S2].

ວິທີການ FixVibe ທົດສອບສໍາລັບມັນ

FixVibe ສາມາດກວດພົບສິ່ງນີ້ໄດ້ໂດຍການວິເຄາະສ່ວນຫົວການຕອບໂຕ້ HTTP ຂອງແອັບພລິເຄຊັນເວັບ. ໂດຍການປຽບທຽບຜົນໄດ້ຮັບຕໍ່ກັບມາດຕະຖານຂອງ MDN Observatory [S2], FixVibe ສາມາດລາຍງານສ່ວນຫົວທີ່ຂາດຫາຍໄປ ຫຼືຖືກຕັ້ງຄ່າຜິດເຊັ່ນ CSP, HSTS, ແລະ X-Frame-Options.

ແກ້ໄຂ

ອັບເດດເວັບເຊີບເວີ (ເຊັ່ນ: Nginx, Apache) ຫຼືຕົວກາງຂອງແອັບພລິເຄຊັນເພື່ອລວມເອົາສ່ວນຫົວຕໍ່ໄປນີ້ໃນການຕອບສະໜອງທັງໝົດເປັນສ່ວນໜຶ່ງຂອງທ່າທາງຄວາມປອດໄພມາດຕະຖານ [S1]:

  • Content-Security-Policy: ຈຳກັດແຫຼ່ງຊັບພະຍາກອນໃຫ້ກັບໂດເມນທີ່ເຊື່ອຖືໄດ້.
  • Strict-Transport-Security: ບັງຄັບໃຊ້ HTTPS ດ້ວຍ max-age ຍາວ.
  • X-Content-Type-Options: ຕັ້ງເປັນ nosniff [S2].
  • X-Frame-Options: ຕັ້ງເປັນ DENY ຫຼື SAMEORIGIN ເພື່ອປ້ອງກັນການຄລິກ [S1].