ಸಮಸ್ಯೆಯನ್ನು
string_interpret_escape() ಕರೆ ಮಾಡುವ ಕೋಡ್ ನಿಜವಾದ ಗಾತ್ರದ ಆಧಾರದ ಮೇಲೆ ಡ್ರೈನ್ಗೆ ಬಫರ್ ಅನ್ನು ನಿಯೋಜಿಸುತ್ತದೆ ಮತ್ತು ಬಹಿರಂಗವಾದ ಪಾಯಿಂಟರ್ ಬಫರ್ನ ಗಡಿಯ ಹೊರಗಿನ ಪ್ರದೇಶದಲ್ಲಿ ಕೊನೆಗೊಳ್ಳುತ್ತದೆ. ಅಂತೆಯೇ, ಇನ್ಪುಟ್ ಸ್ಟ್ರಿಂಗ್ ಅನ್ನು ಪ್ರಕ್ರಿಯೆಗೊಳಿಸಲು ಪ್ರಯತ್ನಿಸುವಾಗ, ನಿಯೋಜಿಸಲಾದ ಬಫರ್ನ ಗಡಿಯ ಹೊರಗಿನ ಪ್ರದೇಶದಿಂದ ಡೇಟಾವನ್ನು ಓದುವಾಗ ಪರಿಸ್ಥಿತಿ ಉಂಟಾಗುತ್ತದೆ ಮತ್ತು ತಪ್ಪಿಸಿಕೊಳ್ಳಲಾಗದ ಸ್ಟ್ರಿಂಗ್ ಅನ್ನು ಬರೆಯುವ ಪ್ರಯತ್ನವು ಬಫರ್ನ ಮಿತಿಯನ್ನು ಮೀರಿ ಬರೆಯಲು ಕಾರಣವಾಗಬಹುದು.
ಡೀಫಾಲ್ಟ್ ಕಾನ್ಫಿಗರೇಶನ್ನಲ್ಲಿ, ಸರ್ವರ್ಗೆ ಸುರಕ್ಷಿತ ಸಂಪರ್ಕವನ್ನು ಸ್ಥಾಪಿಸುವಾಗ ವಿಶೇಷವಾಗಿ ವಿನ್ಯಾಸಗೊಳಿಸಿದ ಡೇಟಾವನ್ನು SNI ಗೆ ಕಳುಹಿಸುವ ಮೂಲಕ ದುರ್ಬಲತೆಯನ್ನು ಬಳಸಿಕೊಳ್ಳಬಹುದು. ಕ್ಲೈಂಟ್ ಪ್ರಮಾಣಪತ್ರ ದೃಢೀಕರಣಕ್ಕಾಗಿ ಕಾನ್ಫಿಗರ್ ಮಾಡಲಾದ ಕಾನ್ಫಿಗರೇಶನ್ಗಳಲ್ಲಿ ಅಥವಾ ಪ್ರಮಾಣಪತ್ರಗಳನ್ನು ಆಮದು ಮಾಡಿಕೊಳ್ಳುವಾಗ ಪೀರ್ಡ್ನ್ ಮೌಲ್ಯಗಳನ್ನು ಮಾರ್ಪಡಿಸುವ ಮೂಲಕ ಸಮಸ್ಯೆಯನ್ನು ಬಳಸಿಕೊಳ್ಳಬಹುದು. ಬಿಡುಗಡೆಯಿಂದ ಪ್ರಾರಂಭಿಸಿ SNI ಮತ್ತು peerdn ಮೂಲಕ ದಾಳಿ ಸಾಧ್ಯ
SNI ಮೂಲಕ ಆಕ್ರಮಣಕ್ಕಾಗಿ ಒಂದು ಶೋಷಣೆಯ ಮೂಲಮಾದರಿಯನ್ನು ಸಿದ್ಧಪಡಿಸಲಾಗಿದೆ, ಇದು Glibc ನೊಂದಿಗೆ Linux ಸಿಸ್ಟಮ್ಗಳಲ್ಲಿ i386 ಮತ್ತು amd64 ಆರ್ಕಿಟೆಕ್ಚರ್ಗಳಲ್ಲಿ ಚಾಲನೆಯಲ್ಲಿದೆ. ಶೋಷಣೆಯು ರಾಶಿ ಪ್ರದೇಶದ ಮೇಲೆ ಡೇಟಾ ಓವರ್ಲೇ ಅನ್ನು ಬಳಸುತ್ತದೆ, ಇದರ ಪರಿಣಾಮವಾಗಿ ಲಾಗ್ ಫೈಲ್ ಹೆಸರನ್ನು ಸಂಗ್ರಹಿಸಲಾದ ಮೆಮೊರಿಯನ್ನು ಓವರ್ರೈಟ್ ಮಾಡುತ್ತದೆ. ಫೈಲ್ ಹೆಸರನ್ನು "/../../../../../../../../etc/passwd" ನೊಂದಿಗೆ ಬದಲಾಯಿಸಲಾಗಿದೆ. ಮುಂದೆ, ಕಳುಹಿಸುವವರ ವಿಳಾಸದೊಂದಿಗೆ ವೇರಿಯೇಬಲ್ ಅನ್ನು ತಿದ್ದಿ ಬರೆಯಲಾಗುತ್ತದೆ, ಇದು ಮೊದಲು ಲಾಗ್ನಲ್ಲಿ ಉಳಿಸಲ್ಪಡುತ್ತದೆ, ಇದು ಸಿಸ್ಟಮ್ಗೆ ಹೊಸ ಬಳಕೆದಾರರನ್ನು ಸೇರಿಸಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ.
ವಿತರಣೆಗಳಿಂದ ಬಿಡುಗಡೆಯಾದ ದುರ್ಬಲತೆ ಪರಿಹಾರಗಳೊಂದಿಗೆ ಪ್ಯಾಕೇಜ್ ನವೀಕರಣಗಳು
ದುರ್ಬಲತೆಯನ್ನು ನಿರ್ಬಂಧಿಸಲು ಪರಿಹಾರವಾಗಿ, ನೀವು TLS ಬೆಂಬಲವನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಬಹುದು ಅಥವಾ ಸೇರಿಸಬಹುದು
ACL ವಿಭಾಗ “acl_smtp_mail”:
ಷರತ್ತು ನಿರಾಕರಿಸು = ${if eq{\\}{${substr{-1}{1}{$tls_in_sni}}}}
ಷರತ್ತು ನಿರಾಕರಿಸು = ${if eq{\\}{${substr{-1}{1}{$tls_in_peerdn}}}}
ಮೂಲ: opennet.ru