The Dark Side of JavaScript: Exploring the Unseen Impacts of Malicious Code in Common Libraries

The Dark Side of JavaScript: Exploring the Unseen Impacts of Malicious Code in Common Libraries

ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್‌ನ ಅಂಧಕಾರಮಯ ಭಾಗವನ್ನು ನಾವು ಆವಲಂಬಿಸುವ ಸಾಮಾನ್ಯ ಲೈಬ್ರರಿಗಳಲ್ಲಿನ ದುಷ್ಪ್ರಯೋಗದ ಬಗ್ಗೆ ವಿಚಾರಿಸುತ್ತೇವೆ. ಈ ಲೇಖನವು ಅದರ ಪರಿಣಾಮಗಳು ಮತ್ತು ನಮ್ಮ ವೆಬ್ ಪ್ರಪಂಚದಲ್ಲಿ ತಿಳಿಯದ ಅಪಾಯಗಳನ್ನು ಅನಾವರಣ ಮಾಡುತ್ತದೆ.

ನಮ್ಮ ಡಿಜಿಟಲ್ ಜೀವನದ ಆಧಾರ: ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಲೈಬ್ರರಿಗಳು

ನೀವು ಅನೇಕ ವೆಬ್‌ಸೈಟ್‌ಗಳಲ್ಲಿ ಮತ್ತು ಆ್ಯಪ್‌ಗಳಲ್ಲಿ ಅನುಭವಿಸುವ ಬಹುಮಾನ್ಯ ಅನುಭವಗಳ ಹಿಂದೆ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಲೈಬ್ರರಿಗಳ ವಿಶಾಲ ಜಾಲವಿದೆ. ಈಲೈಬ್ರರಿಗಳು, ಕೆಲವು ವೀಶ್ವಸನೀಯ ವರೆಗೆ, ಕೇವಲ ಕೋಡ್ ಶೇಖರಣೆಯಾಗಿಯೇ ಇಲ್ಲ, ಅವು ಡೆವಲಪರ್‌ಗಳ ಸಮುದಾಯದಲ್ಲಿ ನಂಬಿಕೆಯೊಂದು ಹರಡಿದ್ದಾರೆ. ಆದರೆ, ಈ ಜಾಲದ ಒಳಗೆ ಕೆಲ ಕಾಲ ಅವ್ಯಕ್ತ ದುಷ್ಟ ಉದ್ದೇಶಗಳ ಕೋಡ್ ಕೂಡ ಸೆರೆಯಾಗಿರುತ್ತದೆ.

ಮಾಲಿಶಿಯಸ್ ಕೋಡ್ ಎಂಬುದು ಏನು?

ಮಾಲಿಶಿಯಸ್ ಕೋಡ್ ಅಥವಾ ದುಷ್ಟ ಕೋಡ್ ಎಂದರೆ, ನಿರ್ದಿಷ್ಟ ನಷ್ಟಕಾರಿ ಉದ್ದೇಶերով ರಚಿತ ಕೋಡ್. ಉದಾಹರಣೆಗೆ, ಚೋರಿಕೆ, ದೂರುಹಿಡಿತಾ ಮಾಹಿತಿ ಸಂಗ್ರಹಣೆ, ಅಥವಾ ತನ್ನ ಕಂಟ್ರೋಲ್ ವ್ಯಾಪ್ತಿಗೆ ವಿಮರ್ಶಕರಿಗೆ ದಾರಿ ಮಾಡಿಸುವುದು. ಈ ಕೋಡ್ ಸಾಮಾನ್ಯವಾಗಿ ನಮ್ಮ ಪ್ರಿಯ ಲೈಬ್ರರಿಗಳಲ್ಲಿಯೇ ಲುಕು ಮಾಡಬಹುದು, ಅಲ್ಲಿ ಡೆವಲಪರ್ ಗಳು ಯಾಕೊ ಮಾಹಿತಿ ಇಲ್ಲದಂತೆ ಅದನ್ನು ಬಳಸುತ್ತಾರೆ.

ಉದಾಹರಣೆ: event-stream ಲೈಬ್ರರಿ ಪ್ರಕರಣ

2018 ರಲ್ಲಿ, event-stream ಎಂಬ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಲೈಬ್ರರಿಗೆ ಒಂದು ದುಷ್ಟ ಅಪ್‌ಡೇಟ್ ನುಗ್ಗಿದ ಘಟನೆ ನೆಡೆದಿತ್ತು. ಇದರ ಮೂಲಕ ಸುರಕ್ಷಿತ ಯೋಜನೆಗೆ ಮಾರಣಾಂತಿಕ ತೊಂದರೆ ಉಂಟಾಗಿತ್ತು, ಯಾಕಂದರೆ ದೋಷಗಳಿಂದ ಸೂಕ್ಷ್ಮ ಮಾಹಿತಿ ಚೋರಿಸಲಾಗಿತ್ತು. (ಸೂತ್ರ: The Register)

“ನೀವು ಯೋಜಿಸಲಾಗದ ವೆಬ್‌ನಿಂದ ನಂತರಿಸಬೇಡಿ!” - ಏನು ಐದು ವೇಳೆ?

ನೀವು ಆಲ್-ಸ್ಟಾರ್ ಲೈಬ್ರರಿಗಳನ್ನು ಕ್ರೂತ್‍ಲಿಸಬೇಕು ಎಂಬ ನಂಬಿಕೆ ತಪ್ಪಾಗಿ ತೋರುತ್ತಾ? ಒಮ್ಮೆ ಒಂದು ಬಾರಿ, ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಪ್ಯಾಕೇಜ್ ಗಳು, ನಿಶ್ಚಿತವಾಗಿ ಬಳಕೆಯಾದರೂ ಸಹ, ತಮ್ಮ ನಂಬಿಕೆಯನ್ನು ಮುರಿದುಕೊಳ್ಳಬಹುದು. ಹಾಗಿದ್ದಲ್ಲಿ ಡಿಜಿಟಲ್ ಜಗತ್ತು ನಿಮ್ಮ ಮೇಲೆ ಹೇಗೆ ಬಿರುಗಾಳಿ ಬೀಳುತ್ತದೆ?

ಸಾಮಾನ್ಯ ಸೊಫ್ಟ್ವೇರ್ ಸರಪಳಿ: ಅಪಾಯಗಳ ಸರಪಳಿ

ಇಲ್ಲಿ ಡೆವಲಪರ್‌ಗಳು ಯಾವುದೊ ಒಂದು ಸರಳ ಪ್ಯಾಕೇಜ್ ಬಳಸಿ ಕೆಲಸ ಮುಗಿಸಿದರೆ, ಆ ಪ್ಯಾಕೇಜ್ ಮತ್ತೊಂದು ಪ್ಯಾಕೇಜ್‌ಗೆ ಅವಲಂಬಿತವಾಗಬಹುದು. ಒಂದು ದುಷ್ಟ ಪ್ಯಾಕೇಜ್ ಅಂದಿಗೆ, ಒಂದಷ್ಟು ಸಾವಿರ ತಲೆಮಾರಿನ ಪ್ರಾಜೆಕ್ಟುಗಳಲ್ಲಿ ಕಾಣಿಸಬಹುದು. 2019 ರ ಎಷ್ಟು ದಾಖಲೆ ಪ್ರಕಾರ, ಸುಮಾರು 40% ಜನಪ್ರಿಯ npm ಪ್ಯಾಕೇಜುಗಳು ಈ ರೀತಿಯ ನಿರಾಧಾರಿತ ಮೂಲಗಳಿಂದ ಡೌನುರ್ಪಡುತ್ತವೆ (ಸೂತ್ರ: npm Trends)!

ನಮ್ಮ ದಿನನಿತ್ಯಕ್ಕೆ ಪರಿಣಾಮ

ನಿಮ್ಮ ಇ-ಕಾಮರ್ಸ್ ವೆಬ್‌ಸೈಟ್ ಅಥವಾ ಬ್ಯಾಂಕಿಂಗ್ ಆ್ಯಪ್ ಬಹಳಷ್ಟು ಜನರ ಆಸ್ಥಿಯನ್ನು ಸೇರಿದೆ; ಒಂದು ಸಣ್ಣ ದುಷ್ಟ ಕೋಡ್ ಕವಲಿಸುವಿಕೆಯಿಂದ ನಿಮ್ಮ ಹಣ ಅಥವಾ ಖಾತೆ ಮಾಹಿತಿಯನ್ನು ಅಪಾಯದಲ್ಲಿರಿಸಬಹುದು. ಇಂತಹದು ಹೋದಂತೆ ನಾವೆಲ್ಲಾ ಸೈಬರ್ ಹಳ್ಳಿ ಮುಕ್ತ ಮಾಡಿದ್ದಾರೆ ಎಂದು ಕಾಣಬಹುದು.

ಹಾಸ್ಯ ನೀಡುವ ಚಿತ್ರಣ: ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಕತ್ತಳಿಗೆ ಹೋಗುವ “ಟ್ರೋಲ್ಸ್”

ಕನಿಷ್ಠ ಒಂದು ಬಾರಿ, ಒಂದು ದುಷ್ಟ ಕೋಡ್ ದಾಳಿ ಮಾಡಿದಾಗ, ಅದು ತಿಂಗಳುಗಳ ಕಾಲ ತರಂಗಮಾಡುತ್ತದೆ. ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಡೆವಲಪರ್‌ಗಳು “ಟ್ರೋಲ್ಸ್” ಹೇಗೆ ತಮ್ಮ ಕೋಡ್ ಲೈಬ್ರರಿಯನ್ನು ಹಾಳುಮಾಡಬಯಸುತ್ತಾರೆ ಎಂಬುದರಲ್ಲಿನ ಪ್ರಾಯೋಗಿಕ ಹಾಸ್ಯವನ್ನು ಕಾಣಬಹುದು. ಆದರೆ ಹಾಸ್ಯದಲ್ಲಿ ಸಹ, ಹಿಮ್ಮೆಟ್ಟಾಟ ಹಾಗೂ ಭಯ ಉಂಟುಮಾಡುತ್ತದೆ.

ಪರಿಹಾರಗಳು ಮತ್ತು ಭದ್ರತಾ ಕ್ರಮಗಳು

ಆದರೆ ಎಲ್ಲವೂ ಕಪ್ಪು ಬಣ್ಣದಲ್ಲಿಯೇ ಅಲ್ಲ. ನಾವಿರುವ ಡಿಜಿಟಲ್ ಯುಗದಲ್ಲಿ, ಲೈಬ್ರರಿ ನಿಗಾ ಮತ್ತು ಪರೀಕ್ಷೆಗಾಗಿ ಹಲವಾರು ಯಂತ್ರಗಳು ಮತ್ತು ಸಮುದಾಯ ಸಕ್ರಿಯರಾಗಿವೆ. ಉದಾಹರಣೆಗೆ, Snyk ಮತ್ತು npm audit ಕಾರ್ಯಕರವಾಗಿ ದುಷ್ಟ ಕೋಡ್ ಪತ್ತೆಮಾಡಲು ನೆರವಾಗುತ್ತವೆ.

ತಾಂತ್ರಿಕ ದೃಷ್ಟಿಕೋನದಲ್ಲಿ ನಾನೊಬ್ಬ 45 ವರ್ಷದ ಸಂಶೋಧಕ

ನನ್ನ ಅನೇಕ ದಶಕಗಳ ಅವಲೋಕನದ ನಂತರ, ನಾನೀ ಸಮಸ್ಯೆ ಹೆಚ್ಚು ಜಾಗೃತಿಯಿಂದ, ಸಮುದಾಯದ ಸಹಕಾರದಿಂದ ಪರಿಹಾರಗೊಳ್ಳಬಹುದೆಂದು ಭಾವಿಸುತ್ತೇನೆ. ನಾವೆಲ್ಲರೂ ಜಾಗರೂಕರಾಗಿದ್ದೇವೆ ಎಂದರೆ ನಮ್ಮ ಡಿಜಿಟಲ್ ಭದ್ರತೆ ಇನ್ನಷ್ಟು ಬಲವಾಗುತ್ತದೆ.

ಕೆಲವು ತೀವ್ರ ನಿಜಾಂಶಗಳು

ಸೈಬರ್ ಸೆಕ್ಯೂರಿಟಿ ಸಂಸ್ಥೆಗಳ ವರದಿಗಳ ಪ್ರಕಾರ, ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಸಾಪ್ಟ್‌ವೇರ್ ಸರಪಳಿಯ ದುಷ್ಟ ಕೋಡ್ ದಾಳಿಗಳು 2017ರಿಂದ 2022ರ ನಡುವಿನ ಸಮಯದಲ್ಲಿ 300% ಕ್ಕೆ ಏರಿಕೆ ಕಂಡಿವೆ. (ಸೂತ್ರ: Verizon Data Breach Report 2022)

ಕೌಟುಂಬಿಕ ಕಥನ: ವಿವೇಕ್ ಮತ್ತು ಭದ್ರತಾ ಹೆಲಿಕ್ಸ್

ವಿವೇಕ್ ಎಂಬ 22 ವರ್ಷದ ಡೆವಲಪರ್, ಕೆಲವು ತಿಂಗಳುಗಳು ಹಿಂದೆ ತನ್ನ ಪ್ರಾಜೆಕ್ಟಿಗೆ ಬೇಕಾದ ಲೈಬ್ರರಿಗಳನ್ನು ಬಳಕೆ ಮಾಡುವಾಗ ಅರಿತುಕೊಂಡನು ಕೆಲವೆ ಲೈಬ್ರರಿಗಳಲ್ಲಿನ ದುಷ್ಟ ಕೋಡ್ ಬಳಕೆ ಅವನ ಸಂಕಲ್ಪಕ್ಕೆ ಔಪಚಾರಿಕ ನಿಲುವು ಕೊಟ್ಟಿತು. ಆತನ ცხოვრಿಯಲ್ಲಿ ಈ ಒಂದು ಅಧ್ಯಾಯ ಜಾಗೃತಿ ಮತ್ತು ಜವಾಬ್ದಾರಿತ್ವದ ತೆರೆಯಾಗಿದೆ.

ಮುಂದಕ್ಕೆ ಹಾದುಹೋಗುವ ಮಾರ್ಗ

ಉದ್ಯಮಗಳು, ಡೆವಲಪರ್‌ಗಳು ಮತ್ತು ಬಳಕೆದಾರರೇ ಆದರೂ, ಜಾಗರೂಕತೆ, ಪರೀಕ್ಷೆ ಮತ್ತು ನಿತ್ಯ ನವೀಕರಣ ಸ್ಪಷ್ಟವಾದ ಅವಶ್ಯಕತೆ. ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್‌ನ ಬೆಳವಣಿಗೆಯೊಂದಿಗೆ ಹೋಲಿಕೆ ಮಾಡಿಕೊಂಡರೆ, ನಾವು ಒಂದು ಸುಧಾರಿತ ಭದ್ರತಾ ವ್ಯವಸ್ಥೆಯನ್ನು ಸೇರಿಸಬೇಕು - ಇದು ಕೇವಲ ಟೆಕ್ನಿಕಲ್ ಕೆಲಸವಲ್ಲ, ಒಟ್ಟು ಜಗತ್ತಿನ ಒಕ್ಕೂಟವಾಗಿದೆ.

ಪರಿನಾಮ: ನಮ್ಮ ನಂಬಿಕೆ ಮತ್ತು ಇಂಟರ್ನೆಟ್ ಭದ್ರತೆ

ನಾವು ಬಳಕೆ ಮಾಡುವ ಪ್ರತಿಯೊಂದು ಲೈಬ್ರರಿಯಿಂದ ಗರಿಷ್ಟ ಸ್ಪಷ್ಟತೆ ಮತ್ತು ಭದ್ರತಾ ದೃಷ್ಟಿಕೋನ ಬೇಕಾಗುತ್ತದೆ. ಇಲ್ಲದಿದ್ದರೆ, ಇಂಟರ್ನೆಟ್ ನ ನಂಬಿಕೆ ಕುಸಿಯಬಹುದು ಮತ್ತು ನಮ್ಮ ಸಂವಹನಗಳು, ವಾಣಿಜ್ಯ ಹಾಗೂ ವೈಯಕ್ತಿಕ ಮಾಹಿತಿ ಅಪಾಯದಲ್ಲಿರಬಹುದು.

ನಮ್ಮ ಬಲವಾದ ಆಯ್ಕೆ: ಜಾಗೃತಿ ಮತ್ತು ಬದ್ಧತೆ

ಹಾಗಾಗಿ, ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಬಳಸಿ ದೊರೆಯುವ ಲಾಭಗಳನ್ನು ತಾಳಮೇಳದಿಂದ ಎದುರಿಸಲು, ನಾವು ಎದುರಿಸುವ ಅಪಾಯಗಳ ಬಗ್ಗೆ ತಿಳಿದಿರಬೇಕು, ನಿಯಮಿತವಾಗಿ ಪ್ಯಾಕೇಜ್‌ಗಳನ್ನು ಪರಿಶೀಲಿಸಬೇಕು ಮತ್ತು ಅವರ ಮೂಲಗಳನ್ನು ಪರಿಶೀಲನೆ 해야합니다. ಈ ಮಾರ್ಗದಲ್ಲಿ ನಾವು ನಮ್ಮ ವೆಬ್ ಜಗತ್ತಿನ ಸಾಫ್ಟ್ವೇರ್ ಭದ್ರತೆಯನ್ನು ಸುಧಾರಿಸಬಹುದು.