25 ದುರ್ಬಲತೆಗಳು RTOS ಝೆಫಿರ್‌ನಲ್ಲಿ, ICMP ಪ್ಯಾಕೆಟ್‌ನ ಮೂಲಕ ಬಳಸಿಕೊಳ್ಳಲಾದವುಗಳು ಸೇರಿದಂತೆ

NCC ಗುಂಪಿನ ಸಂಶೋಧಕರು ಪ್ರಕಟಿಸಲಾಗಿದೆ ಉಚಿತ ಯೋಜನೆಯ ಆಡಿಟ್ ಫಲಿತಾಂಶಗಳು ಝಿಫಿರ್, ಅಭಿವೃದ್ಧಿಪಡಿಸುತ್ತಿದೆ ನೈಜ-ಸಮಯದ ಆಪರೇಟಿಂಗ್ ಸಿಸ್ಟಮ್ (RTOS), ಇಂಟರ್ನೆಟ್ ಆಫ್ ಥಿಂಗ್ಸ್ ಪರಿಕಲ್ಪನೆಯೊಂದಿಗೆ (IoT, ಇಂಟರ್ನೆಟ್ ಆಫ್ ಥಿಂಗ್ಸ್) ಅನುಸರಿಸುವ ಸಾಧನಗಳನ್ನು ಸಜ್ಜುಗೊಳಿಸುವ ಗುರಿಯನ್ನು ಹೊಂದಿದೆ. ಲೆಕ್ಕ ಪರಿಶೋಧನೆಯ ವೇಳೆ ಬಹಿರಂಗವಾಗಿದೆ 25 ದುರ್ಬಲತೆಗಳು Zephyr ನಲ್ಲಿ ಮತ್ತು MCUboot ನಲ್ಲಿ 1 ದುರ್ಬಲತೆ. ಇಂಟೆಲ್ ಕಂಪನಿಗಳ ಭಾಗವಹಿಸುವಿಕೆಯೊಂದಿಗೆ ಜೆಫಿರ್ ಅನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸಲಾಗುತ್ತಿದೆ.

ಒಟ್ಟಾರೆಯಾಗಿ, ನೆಟ್‌ವರ್ಕ್ ಸ್ಟಾಕ್‌ನಲ್ಲಿ 6 ದುರ್ಬಲತೆಗಳನ್ನು ಗುರುತಿಸಲಾಗಿದೆ, ಕರ್ನಲ್‌ನಲ್ಲಿ 4, ಕಮಾಂಡ್ ಶೆಲ್‌ನಲ್ಲಿ 2, ಸಿಸ್ಟಮ್ ಕಾಲ್ ಹ್ಯಾಂಡ್ಲರ್‌ಗಳಲ್ಲಿ 5, ಯುಎಸ್‌ಬಿ ಸಬ್‌ಸಿಸ್ಟಮ್‌ನಲ್ಲಿ 5 ಮತ್ತು ಫರ್ಮ್‌ವೇರ್ ಅಪ್‌ಡೇಟ್ ಮೆಕ್ಯಾನಿಸಂನಲ್ಲಿ 3. ಎರಡು ಸಮಸ್ಯೆಗಳನ್ನು ನಿರ್ಣಾಯಕ ಎಂದು ರೇಟ್ ಮಾಡಲಾಗಿದೆ, ಎರಡು ಹೆಚ್ಚು, 9 ಮಧ್ಯಮ, 9 ಕಡಿಮೆ, ಮತ್ತು 4 ಪರಿಗಣನೆಗೆ. ನಿರ್ಣಾಯಕ ಸಮಸ್ಯೆಗಳು IPv4 ಸ್ಟಾಕ್ ಮತ್ತು MQTT ಪಾರ್ಸರ್ ಮೇಲೆ ಪರಿಣಾಮ ಬೀರುತ್ತವೆ, ಅಪಾಯಕಾರಿಯಾದವುಗಳು USB ಸಮೂಹ ಸಂಗ್ರಹಣೆ ಮತ್ತು USB DFU ಡ್ರೈವರ್‌ಗಳ ಮೇಲೆ ಪರಿಣಾಮ ಬೀರುತ್ತವೆ. ಮಾಹಿತಿಯ ಬಹಿರಂಗಪಡಿಸುವಿಕೆಯ ಸಮಯದಲ್ಲಿ, ಸೇವೆಯ ನಿರಾಕರಣೆಗೆ ಕಾರಣವಾಗುವ ಅಥವಾ ಹೆಚ್ಚುವರಿ ಕರ್ನಲ್ ಸಂರಕ್ಷಣಾ ಕಾರ್ಯವಿಧಾನಗಳಲ್ಲಿನ ದೋಷಗಳಿಗೆ ಸಂಬಂಧಿಸಿದ 15 ಅತ್ಯಂತ ಅಪಾಯಕಾರಿ ದೋಷಗಳಿಗೆ ಮಾತ್ರ ಪರಿಹಾರಗಳನ್ನು ಸಿದ್ಧಪಡಿಸಲಾಗಿದೆ;

ಪ್ಲಾಟ್‌ಫಾರ್ಮ್‌ನ IPv4 ಸ್ಟ್ಯಾಕ್‌ನಲ್ಲಿ ರಿಮೋಟ್ ಆಗಿ ಬಳಸಿಕೊಳ್ಳಬಹುದಾದ ದುರ್ಬಲತೆಯನ್ನು ಗುರುತಿಸಲಾಗಿದೆ, ಇದು ನಿರ್ದಿಷ್ಟ ರೀತಿಯಲ್ಲಿ ಮಾರ್ಪಡಿಸಿದ ICMP ಪ್ಯಾಕೆಟ್‌ಗಳನ್ನು ಪ್ರಕ್ರಿಯೆಗೊಳಿಸುವಾಗ ಮೆಮೊರಿ ಭ್ರಷ್ಟಾಚಾರಕ್ಕೆ ಕಾರಣವಾಗುತ್ತದೆ. MQTT ಪ್ರೋಟೋಕಾಲ್ ಪಾರ್ಸರ್‌ನಲ್ಲಿ ಮತ್ತೊಂದು ಗಂಭೀರ ಸಮಸ್ಯೆ ಕಂಡುಬಂದಿದೆ, ಇದು ಹೆಡರ್ ಕ್ಷೇತ್ರಗಳ ಸರಿಯಾದ ಉದ್ದದ ಪರಿಶೀಲನೆಯ ಕೊರತೆಯಿಂದ ಉಂಟಾಗುತ್ತದೆ ಮತ್ತು ರಿಮೋಟ್ ಕೋಡ್ ಎಕ್ಸಿಕ್ಯೂಶನ್‌ಗೆ ಕಾರಣವಾಗಬಹುದು. IPv6 ಸ್ಟಾಕ್ ಮತ್ತು CoAP ಪ್ರೋಟೋಕಾಲ್ ಅನುಷ್ಠಾನದಲ್ಲಿ ಸೇವೆಯ ಸಮಸ್ಯೆಗಳ ಕಡಿಮೆ ತೀವ್ರ ನಿರಾಕರಣೆ ಕಂಡುಬರುತ್ತದೆ.

ಸೇವೆಯ ನಿರಾಕರಣೆಯನ್ನು ಉಂಟುಮಾಡಲು ಅಥವಾ ಕರ್ನಲ್ ಮಟ್ಟದಲ್ಲಿ ಕೋಡ್ ಅನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಲು ಇತರ ಸಮಸ್ಯೆಗಳನ್ನು ಸ್ಥಳೀಯವಾಗಿ ಬಳಸಿಕೊಳ್ಳಬಹುದು. ಈ ದುರ್ಬಲತೆಗಳಲ್ಲಿ ಹೆಚ್ಚಿನವು ಸಿಸ್ಟಮ್ ಕರೆ ಆರ್ಗ್ಯುಮೆಂಟ್‌ಗಳ ಸರಿಯಾದ ಪರಿಶೀಲನೆಗಳ ಕೊರತೆಗೆ ಸಂಬಂಧಿಸಿವೆ ಮತ್ತು ಕರ್ನಲ್ ಮೆಮೊರಿಯ ಅನಿಯಂತ್ರಿತ ಪ್ರದೇಶಗಳಿಗೆ ಬರೆಯಲು ಮತ್ತು ಓದಲು ಕಾರಣವಾಗಬಹುದು. ಸಮಸ್ಯೆಗಳು ಸಿಸ್ಟಂ ಕರೆ ಸಂಸ್ಕರಣಾ ಕೋಡ್‌ಗೆ ವಿಸ್ತರಿಸುತ್ತವೆ-ಋಣಾತ್ಮಕ ಸಿಸ್ಟಮ್ ಕರೆ ಸಂಖ್ಯೆಗೆ ಕರೆ ಮಾಡುವುದರಿಂದ ಪೂರ್ಣಾಂಕದ ಉಕ್ಕಿ ಹರಿಯುತ್ತದೆ. ASLR ರಕ್ಷಣೆ (ವಿಳಾಸ ಜಾಗದ ಯಾದೃಚ್ಛಿಕಗೊಳಿಸುವಿಕೆ) ಮತ್ತು ಸ್ಟಾಕ್‌ನಲ್ಲಿ ಕ್ಯಾನರಿ ಗುರುತುಗಳನ್ನು ಹೊಂದಿಸುವ ಕಾರ್ಯವಿಧಾನದ ಅನುಷ್ಠಾನದಲ್ಲಿನ ಸಮಸ್ಯೆಗಳನ್ನು ಕರ್ನಲ್ ಗುರುತಿಸಿದೆ, ಈ ಕಾರ್ಯವಿಧಾನಗಳು ನಿಷ್ಪರಿಣಾಮಕಾರಿಯಾಗಿದೆ.

ಅನೇಕ ಸಮಸ್ಯೆಗಳು USB ಸ್ಟಾಕ್ ಮತ್ತು ವೈಯಕ್ತಿಕ ಡ್ರೈವರ್‌ಗಳ ಮೇಲೆ ಪರಿಣಾಮ ಬೀರುತ್ತವೆ. ಉದಾಹರಣೆಗೆ, USB ಮಾಸ್ ಸ್ಟೋರೇಜ್‌ನಲ್ಲಿನ ಸಮಸ್ಯೆಗಳು ಬಫರ್ ಓವರ್‌ಫ್ಲೋಗೆ ಕಾರಣವಾಗಬಹುದು ಮತ್ತು ಸಾಧನವು ಆಕ್ರಮಣಕಾರರಿಂದ ನಿಯಂತ್ರಿಸಲ್ಪಡುವ USB ಹೋಸ್ಟ್‌ಗೆ ಸಂಪರ್ಕಗೊಂಡಾಗ ಕರ್ನಲ್ ಮಟ್ಟದಲ್ಲಿ ಕೋಡ್ ಅನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಬಹುದು. USB DFU ನಲ್ಲಿನ ದುರ್ಬಲತೆ, USB ಮೂಲಕ ಹೊಸ ಫರ್ಮ್‌ವೇರ್ ಅನ್ನು ಲೋಡ್ ಮಾಡುವ ಚಾಲಕ, ಗೂಢಲಿಪೀಕರಣವನ್ನು ಬಳಸದೆಯೇ ಮೈಕ್ರೋಕಂಟ್ರೋಲರ್‌ನ ಆಂತರಿಕ ಫ್ಲ್ಯಾಶ್‌ಗೆ ಮಾರ್ಪಡಿಸಿದ ಫರ್ಮ್‌ವೇರ್ ಚಿತ್ರವನ್ನು ಲೋಡ್ ಮಾಡಲು ಮತ್ತು ಡಿಜಿಟಲ್ ಸಿಗ್ನೇಚರ್ ಬಳಸಿ ಘಟಕಗಳ ಪರಿಶೀಲನೆಯೊಂದಿಗೆ ಸುರಕ್ಷಿತ ಬೂಟ್ ಮೋಡ್ ಅನ್ನು ಬೈಪಾಸ್ ಮಾಡಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ. ಹೆಚ್ಚುವರಿಯಾಗಿ, ತೆರೆದ ಬೂಟ್ಲೋಡರ್ ಕೋಡ್ ಅನ್ನು ಅಧ್ಯಯನ ಮಾಡಲಾಗಿದೆ MCUboot, ಇದರಲ್ಲಿ ಒಂದು ಹಾನಿಕರವಲ್ಲದ ದುರ್ಬಲತೆ ಕಂಡುಬಂದಿದೆ,
ಇದು UART ಯ ಮೇಲೆ SMP (ಸರಳ ನಿರ್ವಹಣಾ ಪ್ರೋಟೋಕಾಲ್) ಪ್ರೋಟೋಕಾಲ್ ಅನ್ನು ಬಳಸುವಾಗ ಬಫರ್ ಓವರ್‌ಫ್ಲೋಗೆ ಕಾರಣವಾಗಬಹುದು.

Zephyr ನಲ್ಲಿ, ಎಲ್ಲಾ ಪ್ರಕ್ರಿಯೆಗಳಿಗೆ ಕೇವಲ ಒಂದು ಜಾಗತಿಕ ಹಂಚಿಕೆಯ ವರ್ಚುವಲ್ ವಿಳಾಸ ಸ್ಥಳವನ್ನು (SASOS, ಸಿಂಗಲ್ ಅಡ್ರೆಸ್ ಸ್ಪೇಸ್ ಆಪರೇಟಿಂಗ್ ಸಿಸ್ಟಮ್) ಒದಗಿಸಲಾಗಿದೆ ಎಂಬುದನ್ನು ನೆನಪಿಸಿಕೊಳ್ಳಿ. ನಿರ್ದಿಷ್ಟ ಹಾರ್ಡ್‌ವೇರ್‌ನಲ್ಲಿ ಲೋಡ್ ಮಾಡಬಹುದಾದ ಮತ್ತು ರನ್ ಮಾಡಬಹುದಾದ ಏಕಶಿಲೆಯ ಕಾರ್ಯಗತಗೊಳಿಸುವಿಕೆಯನ್ನು ರೂಪಿಸಲು ಅಪ್ಲಿಕೇಶನ್-ನಿರ್ದಿಷ್ಟ ಕೋಡ್ ಅನ್ನು ಅಪ್ಲಿಕೇಶನ್-ನಿರ್ದಿಷ್ಟ ಕರ್ನಲ್‌ನೊಂದಿಗೆ ಸಂಯೋಜಿಸಲಾಗಿದೆ. ಎಲ್ಲಾ ಸಿಸ್ಟಮ್ ಸಂಪನ್ಮೂಲಗಳನ್ನು ಕಂಪೈಲ್ ಸಮಯದಲ್ಲಿ ನಿರ್ಧರಿಸಲಾಗುತ್ತದೆ, ಕೋಡ್ ಗಾತ್ರವನ್ನು ಕಡಿಮೆ ಮಾಡುತ್ತದೆ ಮತ್ತು ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಹೆಚ್ಚಿಸುತ್ತದೆ. ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ಚಲಾಯಿಸಲು ಅಗತ್ಯವಿರುವ ಕರ್ನಲ್ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಮಾತ್ರ ಸಿಸ್ಟಮ್ ಇಮೇಜ್ ಒಳಗೊಂಡಿರುತ್ತದೆ.

ಝೆಫಿರ್ನ ಪ್ರಮುಖ ಪ್ರಯೋಜನಗಳಲ್ಲಿ ಇದು ಗಮನಾರ್ಹವಾಗಿದೆ ಉಲ್ಲೇಖಿಸಲಾಗಿದೆ ಸುರಕ್ಷತೆಯನ್ನು ಗಮನದಲ್ಲಿಟ್ಟುಕೊಂಡು ಅಭಿವೃದ್ಧಿ. ಅನುಮೋದಿಸಲಾಗಿದೆಅಭಿವೃದ್ಧಿಯ ಎಲ್ಲಾ ಹಂತಗಳು ಕೋಡ್‌ನ ಭದ್ರತೆಯನ್ನು ದೃಢೀಕರಿಸುವ ಕಡ್ಡಾಯ ಹಂತಗಳಿಗೆ ಒಳಗಾಗುತ್ತವೆ: ಅಸ್ಪಷ್ಟ ಪರೀಕ್ಷೆ, ಸ್ಥಿರ ವಿಶ್ಲೇಷಣೆ, ನುಗ್ಗುವ ಪರೀಕ್ಷೆ, ಕೋಡ್ ವಿಮರ್ಶೆ, ಹಿಂಬಾಗಿಲ ಅನುಷ್ಠಾನದ ವಿಶ್ಲೇಷಣೆ ಮತ್ತು ಬೆದರಿಕೆ ಮಾಡೆಲಿಂಗ್.

ಮೂಲ: opennet.ru

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