Oh no! Where's the JavaScript?
Your Web browser does not have JavaScript enabled or does not support JavaScript. Please enable JavaScript on your Web browser to properly view this Web site, or upgrade to a Web browser that does support JavaScript.

ລາວເຊີດລາວເຊີດລາວເຊີດ

ແຈ້ງເຕືອນ

ຄົ້ນພົບຊ່ອງໂຫວ່ໃໝ່ເທິງ 7-Zip ທີ່ອາດຈະເຮັດໃຫ້ຜູ້ໂຈມຕີເອີ້ນໃຊ້ໂຄ້ດ (Code) ຕາມທີ່ຕ້ອງການ ແລະ ຄວບຄຸມລະບົບໄດ້

ຄົ້ນພົບຊ່ອງໂຫວ່ໃໝ່ເທິງ 7-Zip ທີ່ອາດຈະເຮັດໃຫ້ຜູ້ໂຈມຕີເອີ້ນໃຊ້ໂຄ້ດ (Code) ຕາມທີ່ຕ້ອງການ ແລະ ຄວບຄຸມລະບົບໄດ້ມີການເປີດເຜີຍເຖິງຊ່ອງໂຫວ່ປະເພດ Heap Buffer Overflow ລະດັບ Critical ໃນໂປຣແກຣມ 7-Zip ເວີຊັ່ນ 26.00 ຊຶ່ງອາດຈະເຮັດໃຫ້ຜູ້ໂຈມຕີສາມາດເອີ້ນໃຊ້ໂຄ້ດ (Code) ຫຼື ຄຳສັ່ງຕ່າງໆໄດ້ຕາມຕ້ອງການຜ່ານວິທີການ Vtable hijack ໂດຍອາໄສການໃຊ້ປະໂຫຍດຈາກຊ່ອງໂຫວ່ NTFS archive handler ຂອງໂປຣແກຣມ (Hacking & Cracking).

ຊ່ອງໂຫວ່ດັ່ງກ່າວມີໝາຍເລກ CVE-2026-48095 ແລະ ມີລະຫັດຄຳແນະນຳຄື GHSL-2026-140 ໂດຍຊ່ອງໂຫວ່ດັ່ງກ່າວເຊື່ອງຢູ່ໃນຟັງຊັ່ນ CInStream::GetCuSize() ພາຍໃນຟາຍ NtfsHandler.cpp ຟັງຊັ່ນນີ້ຈະຄິດໄລ່ຂະໜາດ Buffer ຂອງ NTFS compression-unit ໂດຍໃຊ້ Shift operation ແບບ 32 bit: (UInt32)1 << (BlockSizeLog + CompressionUnit).ເມື່ອຟາຍ NTFS image ທີ່ຖືກສ້າງຂຶ້ນມາເປັນພິເສດ ມີການກຳນົດຄ່າ ClusterSizeLog >= 28 (ຊຶ່ງເປັນຄ່າທີ່ໂຕ Parser ຍອມຮັບ) ແລະ Compressed data attribute ມີຄ່າ CompressionUnit == 4 ຈະເຮັດໃຫ້ Shift exponent ມີຄ່າເຖິງ 32 ຊຶ່ງເປັນການ Trigger ໃຫ້ເກີດພຶດຕິກຳ Undefined Behavior ( UB ) ໃນລະບົບຂອງພາສາ C++ ເມື່ອປະມວນຜົນເທິງ Hardware ສະຖາປັດຕະຍາກໍາ x86, ພຶດຕິກຳ UB ດັ່ງກ່າວຈະເຮັດໃຫ້ _inBuf ຖືກ Allocate ພື້ນທີ່ໜ່ວຍຄວາມຈຳພຽງແຕ່ 1 byte ເທົ່ານັ້ນ ຊຶ່ງເປັນຜົນສືບເນື່ອງມາຈາກກົນໄກການເຮັດ Masking ຄ່າ Shift counts ໃນລະດັບ Hardware.

Buffer ຂະໜາດ 1 byte ທີ່ນ້ອຍເກີນໄປນີ້ ຈະຖືກນຳໄປໃຊ້ທັນທີໃນຟັງຊັ່ນ ReadStream_FALSE ຊຶ່ງຈະຂຽນຂໍ້ມູນທີ່ຄວບຄຸມໂດຍຜູ້ໂຈມຕີຂະໜາດສູງສຸດເຖິງ 256 MB ລົງໄປໃນພື້ນທີ່ໜ່ວຍຄວາມຈຳທີ່ຖືກຈອງໄວ້ພຽງ byte ດຽວນັ້ນ.

ເນື່ອງຈາກ Stream object CInStream ຖືກຈອງພື້ນທີ່ໜ່ວຍຄວາມຈຳໄວ້ເທິງ Heap ຖັດຈາກ _inBuf ໄປພຽງ 304 bytes ການອ່ານຂໍ້ມູນຮອບທໍາອິດຂະໜາດ 64 KB ຈຶ່ງລົ້ນເຂົ້າໄປຂຽນທັບ Vtable pointer ຂອງ Object ດັ່ງກ່າວ.

ຈາກນັ້ນການເຮັດວຽກໃນຮອບທີສອງຈະຖືກເອີ້ນໃຊ້ງານຜ່ານ Vtable ທີ່ເສຍຫາຍໄປແລ້ວ ຊຶ່ງຖືເປັນຮູບແບບ Vtable hijack ແບບ Classic ໂດຍຜູ້ໂຈມຕີຈະສາມາດຄວບຄຸມ Pointer ທີ່ຖືກຂຽນທັບໄດ້ຢ່າງສົມບູນ ຜ່ານເນື້ອໃນ NTFS cluster ທີ່ຖືກສ້າງຂຶ້ນມາເພື່ອໂຈມຕີນັ້ນເອງ.

ຊ່ອງໂຫວ່ດັ່ງກ່າວເຮັດໃຫ້ກະທົບຕໍ່ໂປຣແກຣມທັງຮຸ້ນ 32 bit ແລະ 64 bit ໂດຍເທິງລະບົບ 64 bit ທີ່ມີ RAM ຕັ້ງແຕ່ 16 GB ຂຶ້ນໄປ ການເອີ້ນໃຊ້ຄຳສັ່ງ _outBuf.Alloc ( 8 GB ) ຈະເຮັດວຽກໄດ້ສຳເລັດ ແລະ ຂະບວນການຈະດໍາເນີນເຂົ້າສູ່ການເຮັດ Overflow ໂດຍກົງ ໃນຂະນະທີ່ເທິງລະບົບທີ່ມີໜ່ວຍຄວາມຈຳໜ້ອຍ ການຈອງພື້ນທີ່ໜ່ວຍຄວາມຈຳທີ່ບໍ່ສຳເລັດ (Allocation failure) ຈະຊ່ວຍຈຳກັດຜົນກະທົບໃຫ້ເຫຼືອພຽງແຕ່ການໂຈມຕີແບບ Denial-of-Service (DoS) ເທົ່ານັ້ນ.

ສິ່ງທີ່ອັນຕະລາຍເປັນພິເສດສຳລັບຊ່ອງໂຫວ່ນີ້ຄື ຮູບແບບການໂຈມຕີທີ່ບໍ່ສົນໃຈນາມສະກຸນຟາຍ ເນື່ອງຈາກ NTFS handler ໃຊ້ວິທີການກວດຈັບແບບ Fallback ໂດຍອີງຈາກ Signature ຊຶ່ງຈະເຮັດວຽກຈັບຄູ່ກັບ Signature ຂໍ້ຄວາມ "NTFS " ທີ່ຕຳແໜ່ງ Byte offset ທີ 3.

ໝາຍຄວາມວ່າ ຫາກມີການສ້າງ NTFS image ເພື່ອການໂຈມຕີ ແລະ ນຳໄປປອມຕົວດ້ວຍນາມສະກຸນຟາຍໃດກໍ່ຕາມ ບໍ່ວ່າຈະເປັນ .7z, .zip, .rar ຫຼື ລວມເຖິງທີ່ບໍ່ມີນາມສະກຸນຟາຍ ຟາຍນັ້ນກໍ່ຈະສາມາດໄປເຮັດໃຫ້ Handler ທີ່ມີຊ່ອງໂຫວ່ໃຫ້ເຮັດວຽກໄດ້ ຫຼັງຈາກທີ່ Handler ຫຼັກທີ່ກົງກັບນາມສະກຸນນັ້ນໆ ໄດ້ປະຕິເສດຟາຍດັ່ງກ່າວໄປແລ້ວ ຜູ້ໃຊ້ບໍ່ຈຳເປັນຕ້ອງມີການໂຕ້ຕອບ ຫຼື ເຮັດຫຍັງອີກ ນອກຈາກການເປີດຟາຍທີ່ຖືກສ້າງຂຶ້ນມາເພື່ອໂຈມຕີນີ້ເທົ່ານັ້ນ.

ຊ່ອງໂຫວ່ດັ່ງກ່າວໄດ້ຮັບຄະແນນຄວາມຮຸນແຮງ CVSS 3.1 ທີ່ 8.8 (ລະດັບສູງ) ດ້ວຍ vector AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H ແລະ ຖືກຈັດປະເພດໃຫ້ຢູ່ໃນກຸ່ມ CWE-787 (Out-of-Bounds Write) ແລະ CWE-190 (Integer Overflow or Wraparound) ໂດຍ 7-Zip ທຸກເວີຊັ່ນໄປຈົນເຖິງເວີຊັ່ນ 26.00 ຈະໄດ້ຮັບຜົນກະທົບທັງໝົດ ເນື່ອງຈາກຊ່ອງໂຫວ່ໃນການຄິດໄລ່ຂອງຟັງຊັ່ນ GetCuSize() ນັ້ນມີມາຕັ້ງແຕ່ໂປຣແກຣມເລີ່ມຮອງຮັບ NTFS compressed stream ໃນຄັ້ງທຳອິດ.
ຊ່ອງໂຫວ່ດັ່ງກ່າວຖືກຄົ້ນພົບ ແລະ ລາຍງານໂດຍ Jaroslav Lobačevski (@JarLob) ຈາກທີມ GitHub Security Lab ຊ່ອງໂຫວ່ດັ່ງກ່າວໄດ້ຮັບການຢືນຢັນໂດຍໃຊ້ເຄື່ອງມື UBSan (UndefinedBehaviorSanitizer) ພາຍໃຕ້ Compiler Clang ເທິງລະບົບປະຕິບັດການ Linux x64 ຊຶ່ງກວດພົບສາເຫດທີ່ແທ້ຈິງຄືບັນຫາພຶດຕິກຳ Undefined Behavior ( UB ) ຈາກການ Shift ຂໍ້ມູນໃນຟາຍ NtfsHandler.cpp ແຖວທີ 687 ເຮັດໃຫ້ເກີດ Invalid vtable dereference ແບບຕໍ່ເນື່ອງ ຈົນນຳໄປສູ່ error ຮ້າຍແຮງແບບ SIGSEGV (Securityawareness training).

ຄໍາແນະນໍາ
ໃຫ້ຜູ້ໃຊ້ງານອັບເດດໂປຣແກຣມ 7-Zip ເປັນເວີຊັ່ນ 26.01 ທີ່ໄດ້ຮັບການແກ້ໄຂແລ້ວໃນທັນທີ ແລະ ຫຼີກເວັ້ນການເປີດຟາຍ Archive ຫຼື Disk images ຈາກແຫລ່ງທີ່ບໍ່ໜ້າເຊື່ອຖື ບໍ່ວ່າຟາຍເຫຼົ່ານັ້ນຈະມີນາມສະກຸນຫຍັງກໍ່ຕາມ ຈົນກວ່າຈະມີການຕິດຕັ້ງແພັດແກ້ໄຂ (Patch) ຮຽບຮ້ອຍແລ້ວ.

ເອກະສານອ້າງອີງ:
1. https://cybersecuritynews.com/7-zip-vulnerabilities-code-execution/
2. https://www.i-secure.co.th/2026/06/%e0%b8%9e%e0%b8%9a%e0%b8%8a%e0%b9%88%e0%b8%ad%e0%b8%87%e0%b9%82%e0%b8%ab%e0%b8%a7%e0%b9%88%e0%b9%83%e0%b8%ab%e0%b8%a1%e0%b9%88%e0%b8%9a%e0%b8%99-7-zip-%e0%b8%97%e0%b8%b5%e0%b9%88%e0%b8%ad%e0%b8%b2/

ລາຍການຮູບ

Meesaisak 04 June 2026 67 Print