ພົບຊ່ອງໂຫວ່ຮ້າຍແຮງໃນ WordPress Plugin ທີ່ມີເວັບໄຊໃຊ້ເຖິງ 300,000 ກວ່າເວັບໄຊ
Sucuri ພົບວ່າພາຍຫຼັງເຂົ້າລະບົບ (Login) ແລ້ວ User admin ສາມາດທີ່ຈະດຶງຂໍ້ມູນຂອງຜູ້ເຂົ້າເວັບໄຊໄດ້ ຜ່ານໂຄ້ດ (code) ຕາມດ້ານລຸ່ມ:
ຂໍ້ມູນທົ່ວໄປ
Sucuri ພົບຊ່ອງໂຫວ່ SQL Injection ແລະ ມີນັກຄົ້ນຄ້ວາດ້ານຄວາມປອດໄພ ພົບເຫັນ XSS ໃນ plugin ເກັບລາຍລະອຽດການໃຊ້ງານຂອງຜູ້ໃຊ້ ທີ່ຊື່ວ່າ WP Statistics ຊຶ່ງເປັນ plugin ທີ່ໄດ້ຮັບຄວາມນິຍົມຢ່າງຫຼວງຫຼາຍໂດຍພົບວ່າມີການໃຊ້ງານຢູ່ໃນເວັບໄຊເຖິງ 300,000 ກວ່າເວັບໄຊ.
ຈາກຮູບພາບຈະເຫັນວ່າ wpstatistics ໃນດ້ານໜ້າ “includes/functions/functions.php” ສາມາດເຂົ້າເຖິງໄດ້ ຜ່ານ WordPress’ AJAX functionality ຊຶ່ງ function ດັ່ງກ່າວບໍ່ໄດ້ມີການກວດສອບສິດຂອງຜູ້ໃຊ້ງານ ອະນຸຍາດໃຫ້ທຸກຄົນສາມາດຂຽນໄປຕິດຕໍ່ຜ່ານ API ໄດ້ເລີຍ ຊຶ່ງເມື່ອລອງກວດສອບແລ້ວເຫັນວ່າໃນ wp_statistics_searchengine_query() ມີໂຄ້ດໃນສ່ວນ SQL Query ທີ່ບໍ່ປອດໄພ ເຮັດໃຫ້ເກີດ SQL Injection ຂຶ້ນ ໂດຍ Version ທີ່ໄດ້ຮັບຜົນກະທົບຄື Version 12.0.8.1 ລົງມາ.
ອີກຊ່ອງໂຫວ່ທີ່ມີນັກຄົ້ນຄ້ວາດ້ານຄວາມປອດໄພພົບເຫັນ ຄືຊ່ອງໂຫວ່ XSS, ຊຶ່ງຊ່ອງໂຫວ່ດັ່ງກ່າວຈຳເປັນຕ້ອງໄດ້ມີການເຂົ້າສູ່ລະບົບເວັບໄຊ (authentication) ກ່ອນ ໂດຍ WP Statistics ທີ່ເປັນ Version ຕໍ່າກວ່າ 12.0.8.1 ຈະໄດ້ຮັບຜົນກະທົບດັ່ງກ່າວ ການໂຈມຕີຈະເຮັດຜ່ານຕົວແປ ‘ip’ ຈາກ page ‘wps_visitors_page’
Proof of Concept (PoC):
ຜົນກະທົບ
SQL Injection, XSS
ລະບົບທີ່ໄດ້ຮັບຜົນກະທົບ
WP Statistics version 12.0.8.1 ລົງມາ.
ຂໍ້ແນະນຳໃນການປ້ອງກັນ ແລະ ແກ້ໄຂ
ອັບເດດ WP Statistics ໃຫ້ເປັນ Version ທີ່ສູງກ່ວາ 12.0.8.1 ຂຶ້ນໄປ.
ເອກະສານອ້າງອີງ:
- https://www.techsuii.com/2017/07/05/authenticated-xss-vulnerability-in-wp-statistics/
- https://developer.wordpress.org/reference/functions/esc_attr/
- https://www.wordfence.com/learn/how-to-prevent-cross-site-scripting-attacks/
- https://github.com/wp-statistics/wp-statistics/commit/82d06cd069fd9ce0a5d2fedaf1885423d67a1c25
- https://blog.sucuri.net/2017/06/sql-injection-vulnerability-wp-statistics.html
- https://wpvulndb.com/vulnerabilities/8855
- http://blog.dewhurstsecurity.com/2017/07/03/wp-statistics-authenticated-xss-vulnerability.html