ಕರ್ನಲ್-ಮಟ್ಟದ ಕೋಡ್ ಕಾರ್ಯಗತಗೊಳಿಸುವಿಕೆಯನ್ನು ಅನುಮತಿಸುವ eBPF ಉಪವ್ಯವಸ್ಥೆಯಲ್ಲಿನ ದುರ್ಬಲತೆಗಳು Linux

ಕರ್ನಲ್ ಒಳಗೆ ಹ್ಯಾಂಡ್ಲರ್‌ಗಳನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಲು ಅನುಮತಿಸುವ eBPF ಉಪವ್ಯವಸ್ಥೆಯಲ್ಲಿ ಎರಡು ಹೊಸ ದುರ್ಬಲತೆಗಳನ್ನು ಕಂಡುಹಿಡಿಯಲಾಗಿದೆ. Linux JIT ಹೊಂದಿರುವ ವಿಶೇಷ ವರ್ಚುವಲ್ ಯಂತ್ರದಲ್ಲಿ. ಎರಡೂ ದುರ್ಬಲತೆಗಳು ಪ್ರತ್ಯೇಕವಾದ eBPF ವರ್ಚುವಲ್ ಯಂತ್ರದ ಹೊರಗೆ ಕರ್ನಲ್ ಸವಲತ್ತುಗಳೊಂದಿಗೆ ಕೋಡ್ ಕಾರ್ಯಗತಗೊಳಿಸಲು ಅವಕಾಶ ನೀಡುತ್ತವೆ. ಸಮಸ್ಯೆಗಳ ಕುರಿತು ಮಾಹಿತಿಯನ್ನು Pwn2Own ಸ್ಪರ್ಧೆಯನ್ನು ನಡೆಸುವ ಝೀರೋ ಡೇ ಇನಿಶಿಯೇಟಿವ್ ತಂಡವು ಪ್ರಕಟಿಸಿದೆ, ಇದು ಈ ವರ್ಷ ಮೂರು ದಾಳಿಗಳನ್ನು ಪ್ರದರ್ಶಿಸಿತು. Ubuntu Linux, ಇದು ಹಿಂದೆ ತಿಳಿದಿಲ್ಲದ ದುರ್ಬಲತೆಗಳನ್ನು ಬಳಸಿಕೊಂಡಿತು (eBPF ನಲ್ಲಿನ ದುರ್ಬಲತೆಗಳು ಈ ದಾಳಿಗಳಿಗೆ ಸಂಬಂಧಿಸಿವೆಯೇ ಎಂದು ವರದಿಯಾಗಿಲ್ಲ).

  • CVE-2021-3490 - eBPF ALU32 ನಲ್ಲಿ ಬಿಟ್‌ವೈಸ್ ಮತ್ತು, OR, ಮತ್ತು XOR ಕಾರ್ಯಾಚರಣೆಗಳನ್ನು ನಿರ್ವಹಿಸುವಾಗ 32-ಬಿಟ್ ಔಟ್-ಆಫ್-ಬೌಂಡ್‌ಗಳ ಪರಿಶೀಲನೆಯ ಕೊರತೆಯಿಂದ ದುರ್ಬಲತೆ ಉಂಟಾಗುತ್ತದೆ. ದಾಳಿಕೋರರು ಈ ದೋಷದ ಲಾಭವನ್ನು ಪಡೆದುಕೊಳ್ಳಬಹುದು ಮತ್ತು ಹಂಚಿಕೆ ಮಾಡಲಾದ ಬಫರ್‌ನ ಮಿತಿಯ ಹೊರಗೆ ಡೇಟಾವನ್ನು ಓದಬಹುದು ಮತ್ತು ಬರೆಯಬಹುದು. XOR ಕಾರ್ಯಾಚರಣೆಗಳೊಂದಿಗಿನ ಸಮಸ್ಯೆಯು ಕರ್ನಲ್ ಆವೃತ್ತಿ 5.7-rc1 ನಿಂದ ಪ್ರಾರಂಭವಾಗಿ ಕಾಣಿಸಿಕೊಳ್ಳುತ್ತದೆ ಮತ್ತು AND ಮತ್ತು OR - 5.10-rc1 ರಿಂದ ಪ್ರಾರಂಭವಾಗುತ್ತದೆ.
  • CVE-2021-3489 - ರಿಂಗ್ ಬಫರ್ ಅಳವಡಿಕೆಯಲ್ಲಿನ ದೋಷದಿಂದ ದುರ್ಬಲತೆ ಉಂಟಾಗುತ್ತದೆ ಮತ್ತು bpf_ringbuf_reserve ಕಾರ್ಯವು ನಿಯೋಜಿಸಲಾದ ಮೆಮೊರಿ ಪ್ರದೇಶದ ಗಾತ್ರವು ನಿಜವಾದ ಗಾತ್ರಕ್ಕಿಂತ ಕಡಿಮೆಯಿರುವ ಸಾಧ್ಯತೆಯನ್ನು ಪರಿಶೀಲಿಸದಿರುವ ಕಾರಣದಿಂದಾಗಿ. ರಿಂಗ್ಬಫ್ ನ. 5.8-rc1 ಬಿಡುಗಡೆಯಾದಾಗಿನಿಂದ ಸಮಸ್ಯೆ ಕಾಣಿಸಿಕೊಳ್ಳುತ್ತದೆ.

ವಿತರಣೆಗಳಲ್ಲಿನ ದುರ್ಬಲತೆ ಪರಿಹಾರಗಳ ಸ್ಥಿತಿಯನ್ನು ಈ ಪುಟಗಳಲ್ಲಿ ಟ್ರ್ಯಾಕ್ ಮಾಡಬಹುದು: Ubuntu, Debian, RHEL, ಫೆಡೋರಾ, SUSE, ಆರ್ಚ್). ಪರಿಹಾರಗಳು ಪ್ಯಾಚ್‌ಗಳಾಗಿಯೂ ಲಭ್ಯವಿದೆ (CVE-2021-3489, CVE-2021-3490). eBPF ಸಿಸ್ಟಮ್ ಕರೆಗೆ ಬಳಕೆದಾರರು ಪ್ರವೇಶವನ್ನು ಹೊಂದುವುದರ ಮೇಲೆ ಶೋಷಣೆ ಅವಲಂಬಿತವಾಗಿರುತ್ತದೆ. ಉದಾಹರಣೆಗೆ, RHEL ನಲ್ಲಿ ಡೀಫಾಲ್ಟ್ ಕಾನ್ಫಿಗರೇಶನ್‌ನಲ್ಲಿ, ದುರ್ಬಲತೆಯ ಶೋಷಣೆಗೆ ಬಳಕೆದಾರರು CAP_SYS_ADMIN ಸವಲತ್ತುಗಳನ್ನು ಹೊಂದಿರಬೇಕು.

ಕರ್ನಲ್‌ನಲ್ಲಿರುವ ಮತ್ತೊಂದು ದುರ್ಬಲತೆಯನ್ನು ಪ್ರತ್ಯೇಕವಾಗಿ ಗಮನಿಸಬೇಕು. Linux — CVE-2021-32606, ಇದು ಸ್ಥಳೀಯ ಬಳಕೆದಾರರಿಗೆ ರೂಟ್ ಮಾಡಲು ತಮ್ಮ ಸವಲತ್ತುಗಳನ್ನು ಹೆಚ್ಚಿಸಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ. ಸಮಸ್ಯೆಯು ಕರ್ನಲ್‌ನಲ್ಲಿ ಪ್ರಾರಂಭವಾಗಿ ಸ್ವತಃ ಪ್ರಕಟವಾಗುತ್ತದೆ. Linux 5.11 ಮತ್ತು ಇದು CAN ISOTP ಪ್ರೋಟೋಕಾಲ್ ಅನುಷ್ಠಾನದಲ್ಲಿನ ರೇಸ್ ಸ್ಥಿತಿಯಿಂದ ಉಂಟಾಗುತ್ತದೆ, ಇದು CAN_ISOTP_SF_BROADCAST ಫ್ಲ್ಯಾಗ್ ಅನ್ನು ಪ್ರಕ್ರಿಯೆಗೊಳಿಸುವಾಗ isotp_setsockopt() ಕಾರ್ಯದಲ್ಲಿ ಸರಿಯಾದ ಲಾಕ್‌ಗಳನ್ನು ಹೊಂದಿಸದ ಕಾರಣ ಸಾಕೆಟ್ ಬೈಂಡಿಂಗ್ ನಿಯತಾಂಕಗಳನ್ನು ಬದಲಾಯಿಸಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ.

ISOTP ಸಾಕೆಟ್ ಅನ್ನು ಮುಚ್ಚಿದ ನಂತರ, ಸ್ವೀಕರಿಸುವವರ ಸಾಕೆಟ್‌ಗೆ ಬಂಧಿಸುವಿಕೆಯು ಪರಿಣಾಮದಲ್ಲಿ ಉಳಿಯುತ್ತದೆ, ಇದು ಸಾಕೆಟ್‌ಗೆ ಸಂಬಂಧಿಸಿದ ರಚನೆಗಳನ್ನು ಬಳಸುವುದನ್ನು ಮುಂದುವರಿಸಬಹುದು, ಅವುಗಳಿಗೆ ಸಂಬಂಧಿಸಿದ ಮೆಮೊರಿಯನ್ನು ಮುಕ್ತಗೊಳಿಸಿದ ನಂತರ (isotp_sock ರಚನೆಯ ಕರೆಯಿಂದಾಗಿ ಬಳಕೆ-ನಂತರ-ಮುಕ್ತ. isotp_rcv() ಎಂದು ಕರೆದಾಗ ಅದನ್ನು ಈಗಾಗಲೇ ಮುಕ್ತಗೊಳಿಸಲಾಗಿದೆ. ಡೇಟಾ ಮ್ಯಾನಿಪ್ಯುಲೇಷನ್ ಮೂಲಕ, ನೀವು ಪಾಯಿಂಟರ್ ಅನ್ನು sk_error_report() ಕಾರ್ಯಕ್ಕೆ ಅತಿಕ್ರಮಿಸಬಹುದು ಮತ್ತು ನಿಮ್ಮ ಕೋಡ್ ಅನ್ನು ಕರ್ನಲ್ ಮಟ್ಟದಲ್ಲಿ ಕಾರ್ಯಗತಗೊಳಿಸಬಹುದು.

ಮೂಲ: opennet.ru

DDoS ರಕ್ಷಣೆ, VPS VDS ಸರ್ವರ್‌ಗಳೊಂದಿಗೆ ಸೈಟ್‌ಗಳಿಗೆ ವಿಶ್ವಾಸಾರ್ಹ ಹೋಸ್ಟಿಂಗ್ ಅನ್ನು ಖರೀದಿಸಿ 🔥 DDoS ರಕ್ಷಣೆ, VPS VDS ಸರ್ವರ್‌ಗಳೊಂದಿಗೆ ವಿಶ್ವಾಸಾರ್ಹ ವೆಬ್‌ಸೈಟ್ ಹೋಸ್ಟಿಂಗ್ ಅನ್ನು ಖರೀದಿಸಿ | ProHoster