systemd ಸಿಸ್ಟಮ್ ಮ್ಯಾನೇಜರ್ನಲ್ಲಿ
ದುರ್ಬಲತೆಯು ಈಗಾಗಲೇ ಮುಕ್ತವಾಗಿರುವ ಮೆಮೊರಿ ಪ್ರದೇಶಕ್ಕೆ (ಬಳಕೆಯ ನಂತರ-ಮುಕ್ತ) ಪ್ರವೇಶದಿಂದ ಉಂಟಾಗುತ್ತದೆ, ಇದು DBus ಸಂದೇಶಗಳನ್ನು ಪ್ರಕ್ರಿಯೆಗೊಳಿಸುವಾಗ Polkit ಗೆ ವಿನಂತಿಗಳನ್ನು ಅಸಮಕಾಲಿಕವಾಗಿ ಕಾರ್ಯಗತಗೊಳಿಸಿದಾಗ ಸಂಭವಿಸುತ್ತದೆ. ಕೆಲವು DBus ಇಂಟರ್ಫೇಸ್ಗಳು ಅಲ್ಪಾವಧಿಗೆ ವಸ್ತುಗಳನ್ನು ಸಂಗ್ರಹಿಸಲು ಸಂಗ್ರಹವನ್ನು ಬಳಸುತ್ತವೆ ಮತ್ತು DBus ಬಸ್ ಇತರ ವಿನಂತಿಗಳನ್ನು ಪ್ರಕ್ರಿಯೆಗೊಳಿಸಲು ಮುಕ್ತವಾದ ತಕ್ಷಣ ಸಂಗ್ರಹ ನಮೂದುಗಳನ್ನು ಫ್ಲಶ್ ಮಾಡುತ್ತದೆ. DBus ವಿಧಾನ ಹ್ಯಾಂಡ್ಲರ್ bus_verify_polkit_async() ಅನ್ನು ಬಳಸಿದರೆ, Polkit ಕ್ರಿಯೆಯು ಪೂರ್ಣಗೊಳ್ಳಲು ಅದು ಕಾಯಬೇಕಾಗಬಹುದು. ಪೋಲ್ಕಿಟ್ ಸಿದ್ಧವಾದ ನಂತರ, ಹ್ಯಾಂಡ್ಲರ್ ಅನ್ನು ಮತ್ತೆ ಕರೆಯಲಾಗುತ್ತದೆ ಮತ್ತು ಮೆಮೊರಿಯಲ್ಲಿ ಈಗಾಗಲೇ ವಿತರಿಸಲಾದ ಡೇಟಾವನ್ನು ಪ್ರವೇಶಿಸುತ್ತದೆ. Polkit ಗೆ ವಿನಂತಿಯು ಹೆಚ್ಚು ಸಮಯ ತೆಗೆದುಕೊಂಡರೆ, DBus ವಿಧಾನ ಹ್ಯಾಂಡ್ಲರ್ ಅನ್ನು ಎರಡನೇ ಬಾರಿಗೆ ಕರೆಯುವ ಮೊದಲು ಸಂಗ್ರಹದಲ್ಲಿರುವ ಐಟಂಗಳನ್ನು ತೆರವುಗೊಳಿಸಲಾಗುತ್ತದೆ.
ದುರ್ಬಲತೆಯ ಶೋಷಣೆಯನ್ನು ಅನುಮತಿಸುವ ಸೇವೆಗಳಲ್ಲಿ, systemd-machined ಅನ್ನು ಗುರುತಿಸಲಾಗಿದೆ, ಇದು DBus API org.freedesktop.machine1.Image.Clone ಅನ್ನು ಒದಗಿಸುತ್ತದೆ, ಇದು ಸಂಗ್ರಹದಲ್ಲಿನ ಡೇಟಾದ ತಾತ್ಕಾಲಿಕ ಸಂಗ್ರಹಣೆಗೆ ಮತ್ತು ಪೋಲ್ಕಿಟ್ಗೆ ಅಸಮಕಾಲಿಕ ಪ್ರವೇಶಕ್ಕೆ ಕಾರಣವಾಗುತ್ತದೆ. ಇಂಟರ್ಫೇಸ್
org.freedesktop.machine1.Image.Clone ಸಿಸ್ಟಮ್ನ ಎಲ್ಲಾ ಸವಲತ್ತುಗಳಿಲ್ಲದ ಬಳಕೆದಾರರಿಗೆ ಲಭ್ಯವಿದೆ, ಇದು systemd ಸೇವೆಗಳನ್ನು ಕ್ರ್ಯಾಶ್ ಮಾಡಬಹುದು ಅಥವಾ ಕೋಡ್ ಅನ್ನು ರೂಟ್ ಆಗಿ ಕಾರ್ಯಗತಗೊಳಿಸಲು ಸಂಭಾವ್ಯವಾಗಿ ಕಾರಣವಾಗಬಹುದು (ಶೋಷಣೆ ಮೂಲಮಾದರಿಯನ್ನು ಇನ್ನೂ ಪ್ರದರ್ಶಿಸಲಾಗಿಲ್ಲ). ದುರ್ಬಲತೆಯ ಶೋಷಣೆಯನ್ನು ಅನುಮತಿಸುವ ಕೋಡ್ ಆಗಿತ್ತು
ಮೂಲ: opennet.ru