១. ព័ត៌មានទូទៅ
ភាពងាយរងគ្រោះ ឬចំណុចខ្សោយមាននៅក្នុងកម្មវិធី Apache Tomcat ចំណុចខ្សោយនេះត្រូវបានកំណត់លេខសម្គាល់ (CVE-2020-1938) មានកម្រិតសុវត្ថិភាពធ្ងន់ធ្ងរ។ ចំណុចខ្សោយនេះកើតឡើងដោយសារតែកំហុសឆ្គងនៅក្នុងកម្មវិធី Apache JServ Protocol (AJP) អាចអនុញ្ញាតឱ្យមានការលួចមើ/កែប្រែឯកសារសំខាន់លើម៉ាស៊ីនកុំព្យូទ័រមេ និងលួចយកទិន្នន័យសំខាន់ផ្សេងៗ ឬដំណើរពាក្យបញ្ជា។
២. ផលិតផលដែលរងផលប៉ះពាល់
• Apache Tomcat 9.x ដែលមានកំណែទាបជាង 9.0.31
• Apache Tomcat 8.x ដែលមានកំណែទាបជាង 8.5.51
• Apache Tomcat 7.x ដែលមានកំណែទាបជាង 7.0.100 និងកំណែ Apache Tomcat 6.x
៣.ផលវិបាក
អ្នកវាយប្រហារជោគជ័យតាមរយៈចំណុចខ្សោយនេះអាចដំណើរការពីបញ្ជាពីម្ងាយ និងគ្រប់គ្រងប្រព័ន្ធទាំងស្រុង។
៤. ការណែនាំ
ដើម្បីជួសជុលនៅចំណុចខ្សោយនេះអោយបានត្រឹមត្រូវ មុនដំបូងអ្នកត្រូវកំណត់ថាតើសេវាកម្ម Tomcat AJP Connector ត្រូវបានប្រើប្រាស់នៅលើម៉ាស៊ីនកំុព្យូទ័រមេរបស់អ្នកឬទេ?
- ប្រសិនបើ cluster ឬ reverse proxy មិនត្រូវបានប្រើ អ្នកអាចកំណត់ថា AJP មិនត្រូវបានប្រើ។
- បើមិនដូច្នោះទេអ្នកត្រូវជួសជុល ប្រសិនបើ cluster ឬ reverse server កំពុងតែភ្ជាប់ទំនាក់ទំនង ជាមួយសេវាកម្ម Tomcat AJP ។
១. ប្រសិនបើសេវាកម្មភ្ជាប់ AJP មិនត្រូវបានប្រើ៖
-
- ប្រសិនបើ AJP Connector service មិនដំណើរការ អ្នកអាចធ្វើបច្ចុប្បន្នភាព Tomcat ទៅកាន់កំណែ 9.0.31, 8.5.51, ឬ 7.0.100 ដើម្បីជួសជុលចំណុចខ្សោយនេះ ។
- ប្រសិនបើអ្នកអាចធ្វើបច្ចុប្បន្នភាព សូមធ្វើការបិទ AJP Connector service ឬប្តូរអាសយដ្ឋាន listening ទៅជា localhost។
អនុវត្តតាមវិធីខាងក្រោម៖
- (1) Edit <CATALINA_BASE>/conf/server.xml,find the following line (<CATALINA_BASE> is the Tomcat work directory):
<Connector port=”8009″ protocol=”AJP/1.3″ redirectPort=”8443″ />
- (2) Comment out it (or just delete it):
<!–<Connector port=”8009″ protocol=”AJP/1.3″ redirectPort=”8443″ />–>
- (3) Save the edit, and then restart Tomcat.
បន្ថែមលើវិធានការខាងលើនេះ អ្នកក៏អាចប្រើអាចប្រើ firewall ដើម្បីការពារអាសយដ្ឋានផ្សេងភ្ជាប់មកកាន់ Tomcat AJP Connector service port។
២. ប្រសិនបើសេវាកម្មភ្ជាប់ AJP កំពុងប្រើប្រាស់៖
ប្រសិនបើសេវាកម្ម AJP Connector កំពុងដំណើរការ សូមធ្វើបច្ចុប្បន្នភាព Upgrade Tomcat ទៅកំណែ 9.0.31, 8.5.51, ឬ 7.0.100 ហើយបន្ទាប់មកធ្វើការកំណត់ “secret” នៅលើ AJP Connector ដើម្បីដាក់ដំណើរការ AJP protocol authentication credentials ។
ឧទាហរណ៍:
<Connector port=”8009″ protocol=”AJP/1.3″ redirectPort=”8443″ address=”YOUR_TOMCAT_IP_ADDRESS” secret=”YOUR_TOMCAT_AJP_SECRET” />
ប្រសិនបើអ្នកមិនអាចធ្វើបច្ចុប្បន្នភាពបាន អ្នកអាចធ្វើការកំណត់ “requiredSecret” នៅលើ AJP Connector ដើម្បីដើម្បីដាក់ដំណើរការ AJP protocol authentication credentials។
ឧទាហរណ៍:
<Connector port=”8009″ protocol=”AJP/1.3″ redirectPort=”8443″ address=”YOUR_TOMCAT_IP_ADDRESS” requiredSecret=”YOUR_TOMCAT_AJP_SECRET” />
៥. ឯកសារពាក់ព័ន្ធ
- https://www.csa.gov.sg/singcert/alerts/critical-vulnerability-in-apache-tomcat-cve-2020-1938
- https://www.chaitin.cn/en/ghostcat
- https://www.zdnet.com/article/ghostcat-bug-impacts-all-apache-tomcat-versions-released-in-the-last-13-years/