Drupal, Joomla ಮತ್ತು Typo3 ಮೇಲೆ ಪರಿಣಾಮ ಬೀರುವ PharStreamWrapper ಲೈಬ್ರರಿಯಲ್ಲಿನ ದುರ್ಬಲತೆ

ಗ್ರಂಥಾಲಯದಲ್ಲಿ PharStreamWrapper, ಇದು ವಿರುದ್ಧ ರಕ್ಷಿಸಲು ಹ್ಯಾಂಡ್ಲರ್‌ಗಳನ್ನು ಒದಗಿಸುತ್ತದೆ ಆಫ್ ದಾಳಿಗಳು "ಫಾರ್" ಸ್ವರೂಪದಲ್ಲಿ ಫೈಲ್ ಪರ್ಯಾಯದ ಮೂಲಕ, ಗುರುತಿಸಲಾಗಿದೆ ದುರ್ಬಲತೆ (CVE-2019-11831), ಇದು ಪಥದಲ್ಲಿ ".." ಅಕ್ಷರಗಳನ್ನು ಬದಲಿಸುವ ಮೂಲಕ ಕೋಡ್ ಡಿಸೈಲೈಸೇಶನ್ ರಕ್ಷಣೆಯನ್ನು ಬೈಪಾಸ್ ಮಾಡಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ. ಉದಾಹರಣೆಗೆ, ಆಕ್ರಮಣಕಾರರು ಆಕ್ರಮಣಕ್ಕಾಗಿ "phar:///path/bad.phar/../good.phar" ನಂತಹ URL ಅನ್ನು ಬಳಸಬಹುದು ಮತ್ತು ಲೈಬ್ರರಿಯು "/path/good.phar" ಎಂಬ ಮೂಲ ಹೆಸರನ್ನು ಹೈಲೈಟ್ ಮಾಡುತ್ತದೆ ಪರಿಶೀಲಿಸಲಾಗುತ್ತಿದೆ, ಆದಾಗ್ಯೂ ಅಂತಹ ಮಾರ್ಗದ ಮುಂದಿನ ಪ್ರಕ್ರಿಯೆಯ ಸಮಯದಲ್ಲಿ "/path/bad.phar" ಫೈಲ್ ಅನ್ನು ಬಳಸಲಾಗುತ್ತದೆ.

ಲೈಬ್ರರಿಯನ್ನು CMS TYPO3 ರ ಸೃಷ್ಟಿಕರ್ತರು ಅಭಿವೃದ್ಧಿಪಡಿಸಿದ್ದಾರೆ, ಆದರೆ ಇದನ್ನು ದ್ರುಪಾಲ್ ಮತ್ತು ಜೂಮ್ಲಾ ಯೋಜನೆಗಳಲ್ಲಿ ಬಳಸಲಾಗುತ್ತದೆ, ಇದು ದುರ್ಬಲತೆಗಳಿಗೆ ಸಹ ಒಳಗಾಗುವಂತೆ ಮಾಡುತ್ತದೆ. ಬಿಡುಗಡೆಗಳಲ್ಲಿ ಸಮಸ್ಯೆಯನ್ನು ಪರಿಹರಿಸಲಾಗಿದೆ PharStreamWrapper 2.1.1 ಮತ್ತು 3.1.1. Drupal ಯೋಜನೆಯು 7.67, 8.6.16 ಮತ್ತು 8.7.1 ನವೀಕರಣಗಳಲ್ಲಿ ಸಮಸ್ಯೆಯನ್ನು ಪರಿಹರಿಸಿದೆ. Joomla ನಲ್ಲಿ ಸಮಸ್ಯೆಯು ಆವೃತ್ತಿ 3.9.3 ರಿಂದ ಕಾಣಿಸಿಕೊಳ್ಳುತ್ತದೆ ಮತ್ತು ಬಿಡುಗಡೆ 3.9.6 ರಲ್ಲಿ ಪರಿಹರಿಸಲಾಗಿದೆ. TYPO3 ನಲ್ಲಿನ ಸಮಸ್ಯೆಯನ್ನು ಸರಿಪಡಿಸಲು, ನೀವು PharStreamWapper ಲೈಬ್ರರಿಯನ್ನು ನವೀಕರಿಸಬೇಕಾಗುತ್ತದೆ.

ಪ್ರಾಯೋಗಿಕ ಭಾಗದಲ್ಲಿ, PharStreamWapper ನಲ್ಲಿನ ದುರ್ಬಲತೆಯು ದುರುದ್ದೇಶಪೂರಿತ phar ಫೈಲ್ ಅನ್ನು ಅಪ್‌ಲೋಡ್ ಮಾಡಲು ಮತ್ತು ಅದರಲ್ಲಿರುವ PHP ಕೋಡ್ ಅನ್ನು ಕಾನೂನುಬದ್ಧ ಫಾರ್ ಆರ್ಕೈವ್‌ನ ಸೋಗಿನಲ್ಲಿ ಕಾರ್ಯಗತಗೊಳಿಸಲು 'ಥೀಮ್ ಅನ್ನು ನಿರ್ವಹಿಸಿ' ಅನುಮತಿಗಳನ್ನು ಹೊಂದಿರುವ Drupal ಕೋರ್ ಬಳಕೆದಾರರಿಗೆ ಅನುಮತಿಸುತ್ತದೆ. "Phar deserialization" ದಾಳಿಯ ಮೂಲತತ್ವವೆಂದರೆ PHP ಫಂಕ್ಷನ್ file_exists () ನ ಲೋಡ್ ಮಾಡಲಾದ ಸಹಾಯ ಫೈಲ್‌ಗಳನ್ನು ಪರಿಶೀಲಿಸುವಾಗ, ಈ ಕಾರ್ಯವು "phar://" ನಿಂದ ಪ್ರಾರಂಭವಾಗುವ ಮಾರ್ಗಗಳನ್ನು ಪ್ರಕ್ರಿಯೆಗೊಳಿಸುವಾಗ Phar ಫೈಲ್‌ಗಳಿಂದ (PHP ಆರ್ಕೈವ್) ಮೆಟಾಡೇಟಾವನ್ನು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಡೀರಿಯಲ್ ಮಾಡುತ್ತದೆ. . phar ಫೈಲ್ ಅನ್ನು ಇಮೇಜ್ ಆಗಿ ವರ್ಗಾಯಿಸಲು ಸಾಧ್ಯವಿದೆ, ಏಕೆಂದರೆ file_exists() ಕಾರ್ಯವು MIME ಪ್ರಕಾರವನ್ನು ವಿಷಯದ ಮೂಲಕ ನಿರ್ಧರಿಸುತ್ತದೆ ಮತ್ತು ವಿಸ್ತರಣೆಯಿಂದ ಅಲ್ಲ.

ಮೂಲ: opennet.ru

ಕಾಮೆಂಟ್ ಅನ್ನು ಸೇರಿಸಿ