ವೇಲ್ಯಾಂಡ್‌ನ ಶಾರ್ಟ್‌ಕಟ್ ನಿರ್ವಾಹಕರಾದ swhkd ನಲ್ಲಿನ ದುರ್ಬಲತೆಗಳು

ತಾತ್ಕಾಲಿಕ ಫೈಲ್‌ಗಳು, ಕಮಾಂಡ್ ಲೈನ್ ಪ್ಯಾರಾಮೀಟರ್‌ಗಳು ಮತ್ತು ಯುನಿಕ್ಸ್ ಸಾಕೆಟ್‌ಗಳೊಂದಿಗೆ ತಪ್ಪಾದ ಕೆಲಸದಿಂದ ಉಂಟಾಗುವ ದುರ್ಬಲತೆಗಳ ಸರಣಿಯನ್ನು swhkd (ಸಿಂಪಲ್ ವೇಲ್ಯಾಂಡ್ ಹಾಟ್‌ಕೀ ಡೀಮನ್) ನಲ್ಲಿ ಗುರುತಿಸಲಾಗಿದೆ. ಪ್ರೋಗ್ರಾಂ ಅನ್ನು ರಸ್ಟ್‌ನಲ್ಲಿ ಬರೆಯಲಾಗಿದೆ ಮತ್ತು ವೇಲ್ಯಾಂಡ್ ಪ್ರೋಟೋಕಾಲ್ (X11-ಆಧಾರಿತ ಪರಿಸರದಲ್ಲಿ ಬಳಸಲಾಗುವ sxhkd ಪ್ರಕ್ರಿಯೆಯ ಕಾನ್ಫಿಗರೇಶನ್ ಫೈಲ್-ಹೊಂದಾಣಿಕೆಯ ಅನಲಾಗ್) ಆಧಾರಿತ ಪರಿಸರದಲ್ಲಿ ಹಾಟ್‌ಕೀ ಒತ್ತುವಿಕೆಯನ್ನು ನಿರ್ವಹಿಸುತ್ತದೆ.

ಪ್ಯಾಕೇಜ್ ಹಾಟ್‌ಕೀ ಕ್ರಿಯೆಗಳನ್ನು ನಿರ್ವಹಿಸುವ ಸವಲತ್ತುಗಳಿಲ್ಲದ swhks ಪ್ರಕ್ರಿಯೆಯನ್ನು ಮತ್ತು ರೂಟ್‌ನಂತೆ ಚಲಿಸುವ ಮತ್ತು uinput API ಮಟ್ಟದಲ್ಲಿ ಇನ್‌ಪುಟ್ ಸಾಧನಗಳೊಂದಿಗೆ ಸಂವಹನ ನಡೆಸುವ ಹಿನ್ನೆಲೆ swhkd ಪ್ರಕ್ರಿಯೆಯನ್ನು ಒಳಗೊಂಡಿದೆ. swhks ಮತ್ತು swhkd ನಡುವಿನ ಪರಸ್ಪರ ಕ್ರಿಯೆಯನ್ನು ಸಂಘಟಿಸಲು Unix ಸಾಕೆಟ್ ಅನ್ನು ಬಳಸಲಾಗುತ್ತದೆ. Polkit ನಿಯಮಗಳನ್ನು ಬಳಸಿಕೊಂಡು, ಯಾವುದೇ ಸ್ಥಳೀಯ ಬಳಕೆದಾರರು /usr/bin/swhkd ಪ್ರಕ್ರಿಯೆಯನ್ನು ರೂಟ್ ಆಗಿ ಚಲಾಯಿಸಬಹುದು ಮತ್ತು ಅದಕ್ಕೆ ಅನಿಯಂತ್ರಿತ ನಿಯತಾಂಕಗಳನ್ನು ರವಾನಿಸಬಹುದು.

ಗುರುತಿಸಲಾದ ದುರ್ಬಲತೆಗಳು:

  • CVE-2022-27815 – ಒಂದು ಪ್ರಕ್ರಿಯೆ PID ಅನ್ನು ಊಹಿಸಬಹುದಾದ ಹೆಸರಿನೊಂದಿಗೆ ಫೈಲ್‌ಗೆ ಮತ್ತು ಇತರ ಬಳಕೆದಾರರಿಂದ ಬರೆಯಬಹುದಾದ ಡೈರೆಕ್ಟರಿಯಲ್ಲಿ ಉಳಿಸಲಾಗುತ್ತಿದೆ (/tmp/swhkd.pid). ಯಾವುದೇ ಬಳಕೆದಾರರು /tmp/swhkd.pid ಫೈಲ್ ಅನ್ನು ರಚಿಸಬಹುದು ಮತ್ತು ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಪ್ರಕ್ರಿಯೆಯ pid ಅನ್ನು ಅದರಲ್ಲಿ ಹಾಕಬಹುದು, ಇದು swhkd ಅನ್ನು ಪ್ರಾರಂಭಿಸಲು ಸಾಧ್ಯವಾಗುವುದಿಲ್ಲ. /tmp ನಲ್ಲಿ ಸಾಂಕೇತಿಕ ಲಿಂಕ್‌ಗಳನ್ನು ರಚಿಸುವುದರ ವಿರುದ್ಧ ಯಾವುದೇ ರಕ್ಷಣೆ ಇಲ್ಲದಿದ್ದರೆ, ದುರ್ಬಲತೆಯನ್ನು ಯಾವುದೇ ಸಿಸ್ಟಮ್ ಡೈರೆಕ್ಟರಿಯಲ್ಲಿ ಫೈಲ್‌ಗಳನ್ನು ರಚಿಸಲು ಅಥವಾ ಓವರ್‌ರೈಟ್ ಮಾಡಲು ಬಳಸಬಹುದು (PID ಅನ್ನು ಫೈಲ್‌ಗೆ ಬರೆಯಲಾಗಿದೆ) ಅಥವಾ ಸಿಸ್ಟಮ್‌ನಲ್ಲಿರುವ ಯಾವುದೇ ಫೈಲ್‌ನ ವಿಷಯಗಳನ್ನು ನಿರ್ಧರಿಸುತ್ತದೆ (swhkd ಮುದ್ರಿಸುತ್ತದೆ PID ಫೈಲ್‌ನ ಸಂಪೂರ್ಣ ವಿಷಯಗಳನ್ನು stdout ಗೆ) ಬಿಡುಗಡೆಯಾದ ಫಿಕ್ಸ್‌ನಲ್ಲಿ PID ಫೈಲ್ ಅನ್ನು /run ಡೈರೆಕ್ಟರಿಗೆ ಸರಿಸಲಾಗಿದೆ, ಆದರೆ /etc ಡೈರೆಕ್ಟರಿಗೆ (/etc/swhkd/runtime/swhkd_{uid}.pid) ಸರಿಸಲಾಗಿದೆ, ಅಲ್ಲಿ ಅದು ಸಹ ಸೇರಿಲ್ಲ.
  • CVE-2022-27814 - ಕಾನ್ಫಿಗರೇಶನ್ ಫೈಲ್ ಅನ್ನು ನಿರ್ದಿಷ್ಟಪಡಿಸಲು ಬಳಸುವ "-c" ಆಜ್ಞಾ ಸಾಲಿನ ಆಯ್ಕೆಯನ್ನು ಕುಶಲತೆಯಿಂದ ನಿರ್ವಹಿಸುವ ಮೂಲಕ, ಸಿಸ್ಟಮ್‌ನಲ್ಲಿ ಯಾವುದೇ ಫೈಲ್‌ನ ಅಸ್ತಿತ್ವವನ್ನು ನಿರ್ಧರಿಸಲು ಸಾಧ್ಯವಿದೆ. ಉದಾಹರಣೆಗೆ, /root/.somefile ಅನ್ನು ಪರಿಶೀಲಿಸಲು ನೀವು “pkexec /usr/bin/swhkd -d -c /root/.somefile” ಅನ್ನು ರನ್ ಮಾಡಬಹುದು ಮತ್ತು ಫೈಲ್ ಕಾಣೆಯಾಗಿದ್ದರೆ, ದೋಷ “/root/.somefile ಅಸ್ತಿತ್ವದಲ್ಲಿಲ್ಲ. ” ಎಂದು ಪ್ರದರ್ಶಿಸಲಾಗುತ್ತದೆ. ಮೊದಲ ದುರ್ಬಲತೆಯ ಸಂದರ್ಭದಲ್ಲಿ, ಸಮಸ್ಯೆಯನ್ನು ಸರಿಪಡಿಸುವುದು ಗೊಂದಲಮಯವಾಗಿದೆ - ಸಮಸ್ಯೆಯನ್ನು ಸರಿಪಡಿಸುವುದು ಬಾಹ್ಯ ಉಪಯುಕ್ತತೆ "ಕ್ಯಾಟ್" ('ಕಮಾಂಡ್:: ನ್ಯೂ("/ಬಿನ್/ಕ್ಯಾಟ್")) ಆರ್ಗ್(ಮಾರ್ಗ) ಈಗ ಕಾನ್ಫಿಗರೇಶನ್ ಫೈಲ್ ಅನ್ನು ಓದಲು ಪ್ರಾರಂಭಿಸಲಾಗಿದೆ ಔಟ್ಪುಟ್()').
  • CVE-2022-27819 - ಸಮಸ್ಯೆಯು "-c" ಆಯ್ಕೆಯ ಬಳಕೆಗೆ ಸಂಬಂಧಿಸಿದೆ, ಇದು ಫೈಲ್‌ನ ಗಾತ್ರ ಮತ್ತು ಪ್ರಕಾರವನ್ನು ಪರಿಶೀಲಿಸದೆ ಸಂಪೂರ್ಣ ಕಾನ್ಫಿಗರೇಶನ್ ಫೈಲ್ ಅನ್ನು ಲೋಡ್ ಮಾಡಲು ಮತ್ತು ಪಾರ್ಸ್ ಮಾಡಲು ಕಾರಣವಾಗುತ್ತದೆ. ಉದಾಹರಣೆಗೆ, ಉಚಿತ ಮೆಮೊರಿ ಖಾಲಿಯಾಗುವುದರ ಮೂಲಕ ಮತ್ತು ನಕಲಿ I/O ಅನ್ನು ರಚಿಸುವ ಮೂಲಕ ಸೇವೆಯ ನಿರಾಕರಣೆಯನ್ನು ಉಂಟುಮಾಡಲು, ನೀವು ಪ್ರಾರಂಭದಲ್ಲಿ ಬ್ಲಾಕ್ ಸಾಧನವನ್ನು ನಿರ್ದಿಷ್ಟಪಡಿಸಬಹುದು ("pkexec /usr/bin/swhkd -d -c /dev/sda") ಅಥವಾ ಡೇಟಾದ ಅನಂತ ಸ್ಟ್ರೀಮ್ ಅನ್ನು ಉತ್ಪಾದಿಸುವ ಅಕ್ಷರ ಸಾಧನ. ಫೈಲ್ ತೆರೆಯುವ ಮೊದಲು ಸವಲತ್ತುಗಳನ್ನು ಮರುಹೊಂದಿಸುವ ಮೂಲಕ ಸಮಸ್ಯೆಯನ್ನು ಪರಿಹರಿಸಲಾಗಿದೆ, ಆದರೆ ಪರಿಹಾರವು ಪೂರ್ಣಗೊಂಡಿಲ್ಲ, ಏಕೆಂದರೆ ಬಳಕೆದಾರ ID (UID) ಅನ್ನು ಮಾತ್ರ ಮರುಹೊಂದಿಸಲಾಗಿದೆ, ಆದರೆ ಗುಂಪು ID (GID) ಒಂದೇ ಆಗಿರುತ್ತದೆ.
  • CVE-2022-27818 – ಬರೆಯಬಹುದಾದ ಡೈರೆಕ್ಟರಿಯಲ್ಲಿ ರಚಿಸಲಾದ /tmp/swhkd.sock ಫೈಲ್ ಅನ್ನು ಬಳಸಿಕೊಂಡು Unix ಸಾಕೆಟ್ ಅನ್ನು ರಚಿಸಲಾಗಿದೆ, ಇದು ಮೊದಲ ದುರ್ಬಲತೆಯಂತಹ ಸಮಸ್ಯೆಗಳಿಗೆ ಕಾರಣವಾಗುತ್ತದೆ (ಯಾವುದೇ ಬಳಕೆದಾರರು /tmp/swhkd.sock ಅನ್ನು ರಚಿಸಬಹುದು ಮತ್ತು ಉತ್ಪಾದಿಸಬಹುದು ಅಥವಾ ಪ್ರತಿಬಂಧಿಸಬಹುದು. ಕೀಪ್ರೆಸ್ ಘಟನೆಗಳು).
  • CVE-2022-27817 - ಇನ್‌ಪುಟ್ ಈವೆಂಟ್‌ಗಳನ್ನು ಎಲ್ಲಾ ಸಾಧನಗಳಿಂದ ಮತ್ತು ಎಲ್ಲಾ ಸೆಷನ್‌ಗಳಲ್ಲಿ ಸ್ವೀಕರಿಸಲಾಗುತ್ತದೆ, ಅಂದರೆ. ಮತ್ತೊಂದು ವೇಲ್ಯಾಂಡ್ ಸೆಷನ್‌ನಿಂದ ಅಥವಾ ಕನ್ಸೋಲ್‌ನಿಂದ ಬಳಕೆದಾರರು ಹಾಟ್‌ಕೀಗಳನ್ನು ಇತರ ಬಳಕೆದಾರರು ಒತ್ತಿದಾಗ ಈವೆಂಟ್‌ಗಳನ್ನು ಪ್ರತಿಬಂಧಿಸಬಹುದು.
  • CVE-2022-27816 swhks ಪ್ರಕ್ರಿಯೆಯು, swhkd ನಂತೆ, ಬರೆಯಬಹುದಾದ /tmp ಡೈರೆಕ್ಟರಿಯಲ್ಲಿ PID ಫೈಲ್ /tmp/swhks.pid ಅನ್ನು ಬಳಸುತ್ತದೆ. ಸಮಸ್ಯೆಯು ಮೊದಲ ದುರ್ಬಲತೆಗೆ ಹೋಲುತ್ತದೆ, ಆದರೆ swhks ಸವಲತ್ತು ಇಲ್ಲದ ಬಳಕೆದಾರರ ಅಡಿಯಲ್ಲಿ ಚಾಲನೆಯಲ್ಲಿರುವ ಕಾರಣ ಅಪಾಯಕಾರಿ ಅಲ್ಲ.

ಮೂಲ: opennet.ru

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