January 26, 2020

Language:

CamSA18-41: ចំនុចខ្សោយធ្ងន់ធ្ងរបំផុតមាននៅក្នុង Apache Struts 2

១.ព័ត៌មានទូទៅ
Apache Struts គឺជា Java-based web application framwork មួយដែលមានការពេញនិយមទូទាំងពិភពលោក ហើយដែលត្រូវបានប្រើប្រាស់សម្រាប់ធ្វើការអភិវឌ្ឍទៅលើកម្មវិធី​ធំប្រភេទជា enterprise web applications​។

Apache Software Foundation បានបញ្ចេញនូវកំណែថ្មីនៃ Apache Struts 2 framework ដើម្បីឆ្លើយតបទៅនឹងចំនុចខ្សោយនៃការដំណើរការកូដពីចម្ងាយ (Remote Code Execution) នៅក្នុង commons-fileupload library ដែលមាននៅក្នុងយន្តការ built-in file upload ។​ អ្នកវាយប្រហារអាចធ្វើការបញ្ចូល (upload) នូវ malicious file ដែលអាចវាយលុកទៅលើចំនុចខ្សោយនោះ ដើម្បីដំណើរការកូដពីចម្ងាយ។ ចំនុចខ្សោយនេះមានលេខកូដ CVE-2016-1000031 ត្រូវបានគេចាត់ចំណាត់ថ្នាក់ធ្ងន់ធ្ងរបំផុត ដែលមានពិន្ទុ 9.8 លើ 10។

២.ផលិតដែលរងផលប៉ៈពាល់
កំណែសូហ្វវ៉ែដូចខាងក្រោមគឺមានចំនុចខ្សោយដែលបានរៀបរាប់៖
– Struts 2.3.36 និងកំណែមុននេះ
– Struts 2.5.10 និងកំណែមុននេះ
– Apache Commons FileUpload 1.3.2 និងកំណែមុននេះ

៣.ផលប៉ៈពាល់
ការវាយលុកដោយជោគជ័តទៅលើចំនុចខ្សោយនេះ អាចអនុញ្ញាតឲ្យអ្នកវាយប្រហារដំណើរការនូវកូដពីចម្ងាយ និងគ្រប់គ្រងទាំងស្រុងទៅលើប្រព័ន្ធដែលរងគ្រោះដើម្បីធ្វើសកម្មភាពផ្សេងៗ ដោយរួមមានការតំឡើងកម្មវិធីនានា និងលប់ឬកែប្រែទិន្នន័យ។

៤.ការណែនាំ
អភិបាលគ្រប់គ្រងទៅលើប្រព័ន្ធ និងអ្នកគ្រប់គ្រងវេបសាយគួរតែធ្វើការអាប់ដេតទៅកាន់កំណែចុងក្រោយបង្អស់ដើម្បីការពារមិនឲ្យមានការវាយលុកទៅលើចំនុចខ្សោយនេះ។ ចំណែកឯវេបសាយទាំងឡាយណាដែលត្រូវបានអភិវឌ្ឍន៍ជាមួយនឹងកំណែជំនាន់ចាស់នៃ​ Apache Struts ត្រូវធ្វើការអាប់ដេតដោយខ្លួនឯង​ (manually update) ទៅលើ commons-fileupload library ដោយការដាក់ជំនួសកំណែជំនាន់ថ្មី (replacement)។

៥.ឯកសារពាក់ព័ន្ធ

https://issues.apache.org/jira/browse/FILEUPLOAD-279
https://nvd.nist.gov/vuln/detail/CVE-2016-1000031
https://issues.apache.org/jira/browse/WW-4812
https://threatpost.com/apache-struts-warns-users-of-two-year-old-vulnerability/138820/

***Disclaimer: CamCERT own some of the content. Our purpose is pure to help spread the awareness, tips or other information related to security to everyone. Even though every information is true, accurate, completed and appropriate, we make no responsibility nor warranty since everything could go wrong.