Παρακαλώ χρησιμοποιήστε αυτό το αναγνωριστικό για να παραπέμψετε ή να δημιουργήσετε σύνδεσμο προς αυτό το τεκμήριο: http://elartu.tntu.edu.ua/handle/lib/49888
Title: Дослідження стійкості методів обфускації JS коду
Other Titles: Research of resilience of JavaScript code obfuscation methods
Authors: Хілініч, Валерій Денисович
Khilinich, Valerii
Affiliation: ТНТУ ім. І. Пулюя, Факультет комп’ютерно-інформаційних систем і програмної інженерії, Кафедра кібербезпеки, м. Тернопіль, Україна
Bibliographic description (Ukraine): Хілініч В. Д. Дослідження стійкості методів обускації JS коду : робота на здобуття кваліфікаційного ступеня бакалавра : спец. 125 - кібербезпека / наук. кер. Козак Р. О. Тернопіль : Тернопільський національний технічний університет імені Івана Пулюя, 2025. 61 с.
Issue Date: 27-Ιου-2025
Submitted date: 13-Ιου-2025
Date of entry: 4-Αυγ-2025
Country (code): UA
Place of the edition/event: ТНТУ ім. І.Пулюя, ФІС, м. Тернопіль, Україна
Supervisor: Козак, Руслан Орестович
Kozak, Ruslan
Committee members: Михалик, Дмитро Михайлович
Mykhalyk, Dmytro
UDC: 004.56
Keywords: JavaScript
обфускація
obfuscation
захист коду
code protection
реверс-інжиніринг
reverse-engineering
деобфускація
deobfuscation
кібербезпека
cybersecurity
Abstract: Кваліфікаційну роботу присвячено аналізу та оцінці стійкості методів обфускації JavaScript-коду до атак реверс-інжинірингу. У рамках дослідження здійснено класифікацію сучасних методів обфускації, проведено порівняльний аналіз обфускаторів і розглянуто особливості реалізації кожного з них. Визначено практичну ефективність окремих методів та виявлено їхні вразливості. У роботі проведено тестування засобів обфускації, визначено рівень захисту, який вони забезпечують, а також проаналізовано вплив обфускації на продуктивність і функціональність коду. Результати дослідження дали змогу сформулювати практичні рекомендації щодо вибору оптимальних комбінацій методів обфускації для підвищення безпеки клієнтського JavaScript.
The qualifying undergraduate work is devoted to the analysis and assessment of the resistance of JavaScript code obfuscation methods to reverse engineering attacks. As part of the study, a classification of modern obfuscation methods was carried out, a comparative analysis of obfuscators was conducted, and the features of the implementation of each of them were considered. The practical effectiveness of individual methods was determined, and their vulnerabilities were identified. The qualification work tested obfuscation tools, determined the level of protection they provide, and analyzed the impact of obfuscation on code performance and functionality. The results of the study made it possible to formulate practical recommendations for choosing the optimal combinations of obfuscation methods to increase the security of client JavaScript.
Content: ПЕРЕЛІК УМОВНИХ ПОЗНАЧЕНЬ, СИМВОЛІВ, ОДИНИЦЬ, СКОРОЧЕНЬ І ТЕРМІНІВ 8 ВСТУП 9 РОЗДІЛ 1 АНАЛІЗ ТЕХНІЧНОГО ЗАВДАННЯ 11 1.1 АКТУАЛЬНІСТЬ ОБФУСКАЦІЇ JAVASCRIPT-КОДУ ДЛЯ ЗАБЕЗПЕЧЕННЯ БЕЗПЕКИ ВЕБ-ЗАСТОСУНКІВ 11 1.2 ПІДХОДИ ЗЛОВМИСНИКІВ ДО АНАЛІЗУ ОБФУСКОВАНОГО JAVASCRIPT-КОДУ 13 1.3 ВИКОРИСТАННЯ ОБФУСКАЦІЇ ДЛЯ ШКІДЛИВОГО ПЗ 16 РОЗДІЛ 2 МЕТОДИ ТА ПІДХОДИ ОБФУСКАЦІЇ JS-КОДУ 20 2.1 МЕТОДИ, ЩО БАЗУЮТЬСЯ НА ЗМІНІ СТРУКТУРИ КОДУ 21 2.1.1 Вирівнювання контролю потоку 21 2.1.2 Реструктуризація даних 23 2.1.3 Клонування структур 24 2.1.4 Вставка мертвого коду 24 2.1.5 Розширення областей видимості 25 2.1.6 Метод трансформації циклів 27 2.1.7 Використання міток 28 2.2 ЗАСОБИ ОБФУСКАЦІЇ, ЩО ВИКОРИСТОВУЮТЬ ПЕРЕТВОРЕННЯ ЗМІННИХ 28 2.2.1 Розділення і злиття змінних 29 2.2.2 Перейменування змінних 30 2.2.3 Кодування рядків 31 2.3 ПІДХОДИ ОБФУСКАЦІЇ З ВИКОРИСТАННЯМ ПУНКТУАЦІЙНИХ ПЕРЕТВОРЕНЬ 32 2.3.1 Інверсія кодових елементів 32 2.3.2 Видалення токенів 33 2.3.3 Використання прихованих символів 34 РОЗДІЛ 3 ПОРІВНЯЛЬНИЙ АНАЛІЗ ЕФЕКТИВНОСТІ МЕТОДІВ ОБФУСКАЦІЇ 37 3.1 ПРОГРАМНЕ ЗАБЕЗПЕЧЕННЯ ДЛЯ ОБФУСКАЦІЇ JAVASCRIPT-КОДУ 37 3.1.1 JScrambler 37 3.2.2 JShaman (JS–Obfuscator) 39 3.1.3 JavaScript Obfuscator (Obfuscator.io) 41 3.2 КРИТЕРІЇ ЕФЕКТИВНОСТІ МЕТОДІВ ОБФУСКАЦІЇ 43 3.3 РЕЗУЛЬТАТИ ПОРІВНЯЛЬНОГО АНАЛІЗУ МЕТОДІВ ОБФУСКАЦІЇ 46 РОЗДІЛ 4 БЕЗПЕКА ЖИТТЄДІЯЛЬНОСТІ, ОСНОВИ ОХОРОНИ ПРАЦІ 52 4.1 ВИМОГИ ДО ПРОФІЛАКТИЧНИХ МЕДИЧНИХ ОГЛЯДІВ ДЛЯ ПРАЦІВНИКІВ ПК 52 4.2 БЕЗПЕКА В ОФІСІ ПРИ ПІДТОПЛЕННІ АБО ПРОРИВІ ВОДОГОНУ ПОРУЧ ІЗ БУДІВЛЕЮ 54 ВИСНОВКИ 56 СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ 57
URI: http://elartu.tntu.edu.ua/handle/lib/49888
Copyright owner: © Хілініч Валерій Денисович, 2025
References (Ukraine): 1. Whaley, A. (2025, 17 січня). JavaScript obfuscation for application security: Threats, techniques, and tools. Mobile app, API, and SDK protection | Promon. https://promon.io/security-news/javascript-obfuscation
2. Обфускація JavaScript: Повний гайд для захисту вашого коду » CyberSecureFox. (2024, 26 червня). CyberSecureFox. https://cybersecurefox.com/uk/obfuskaciya-javascript/
3. Nehru, D. (2024, 30 квітня). What is javascript deobfuscation? Everything you need to know | hackernoon. HackerNoon - read, write and learn about any technology. https://hackernoon.com/what-is-javascript-deobfuscation-everything-you-need-to-know
4. Katz, O. (2020, 26 жовтня). Akamai blog | catch me if you can—javascript obfuscation. Akamai. https://www.akamai.com/blog/security/catch-me-if-you-can-javascript-obfuscation
5. Olusegun, B. (2024, 31 грудня). Decoding javascript: A guide to deobfuscation. DEV Community. https://dev.to/shegz/decoding-javascript-a-guide-to-deobfuscation-5fmo
6. Zagorodna N., Stadnyk M., Lypa B., Gavrylov M., Kozak R. (2022). Network Attack Detection Using Machine Learning Methods. Challenges to national defence in contemporary geopolitical situation, 2022(1), 55-61
7. Revniuk, O. A., Zagorodna, N. V., Kozak, R. O., Karpinski, M. P., & Flud, L. O. (2024). The improvement of web-application SDL process to prevent insecure design vulnerabilities. Applied Aspects of Information Technology, 7(2), 162–174.
8. Skorenkyy, Y., Zolotyy, R., Fedak, S., Kramar, O., & Kozak, R. (2023). Digital twin implementation in transition of smart manufacturing to Industry 5.0 practices. Proceedings of the 1st International Workshop on Computer Information Technologies in Industry 4.0 (CITI 2023), Ternopil, Ukraine, June 14-16, 2023, 12-23.
9. Lechachenko, T., Kozak, R., Skorenkyy, Y., Kramar, O., & Karelina, O. (2023). Cybersecurity aspects of smart manufacturing transition to Industry 5.0 model. CEUR Workshop Proceedings, 3628, 325-329. Proceedings of the 3rd International Workshop on Information Technologies: Theoretical and Applied Problems (ITTAP 2023), Ternopil, Ukraine, November 22-24, 2023.
10. Whaley, A. (2025, 8 травня). The ultimate guide to code obfuscation for security professionals. Mobile app, API, and SDK protection | Promon. https://promon.io/resources/knowledge-center/code-obfuscation-guide
11. Katz, O. (2021, 19 жовтня). Akamai blog | over 25% of malicious javascript is being obfuscated. Akamai. https://www.akamai.com/blog/security/over-25-percent-of-malicious-javascript-is-being-obfuscated
12. Faizan, H. (2024, 11 жовтня). Malicious javascript code sent through emails via PEC (posta elettronica certificata). Forcepoint. https://www.forcepoint.com/blog/x-labs/malicious-javascript-code-sent-via-pec-email-italy
13. Marty, C. A., Victorio, K. B., Isidro, A., Alpuerto, C., Co, M. J., Laureano, L., Codod, A. F., & Redondo, A. (2024, 14 жовтня). Water makara uses obfuscated javascript in spear phishing campaign targets brazil with astaroth malware. Trend Micro. https://www.trendmicro.com/en_us/research/24/j/water-makara-uses-obfuscated-javascript-in-spear-phishing-campai.html
14. Lakshmanan, R. (2024, 21 серпня). CERT-UA warns of new vermin-linked phishing attacks with pow bait. The Hacker News. https://thehackernews.com/2024/08/cert-ua-warns-of-new-vermin-linked.html
15. Toulas, B. (2025, 19 лютого). Phishing attack hides JavaScript using invisible Unicode trick. BleepingComputer. https://www.bleepingcomputer.com/news/security/phishing-attack-hides-javascript-using-invisible-unicode-trick/
16. Díaz, V. (2023, 29 листопада). How AI is shaping malware analysis. VirusTotal Blog. https://blog.virustotal.com/2023/11/how-ai-is-shaping-malware-analysis.html
17. JavaScript obfuscation: The definitive guide | jscrambler. (2025, 28 січня). Jscrambler. https://jscrambler.com/blog/javascript-obfuscation-the-definitive-guide
18. Jscrambler 101 — control flow flattening: Tutorial. (2023, 12 вересня). Jscrambler. https://jscrambler.com/blog/jscrambler-101-control-flow-flattening
19. Степаненко, І., Кінзерявий, В., Наджі, А., & Лозінський, І. (2016). Сучасні обфускаційні методи захисту програмного коду. Безпека інформації, 22(1), 32–37. http://nbuv.gov.ua/UJRN/bezin_2016_22_1_7
20. Guide: How to obfuscate code | blog | digital.ai. (б. д.). Digital.ai. https://digital.ai/catalyst-blog/guide-how-to-obfuscate-code/
21. Rl1987. (2022, 10 липня). Javascript obfuscation techniques by example – Trickster Dev. Trickster Dev. https://www.trickster.dev/post/javascript-obfuscation-techniques-by-example
22. Cho, S., Chang, H., & Cho, Y. (2008, 17 червня). Implementation of an obfuscation tool for C/C++ source code protection on the xscale architecture. SpringerLink. https://link.springer.com/chapter/10.1007/978-3-540-87785-1_36
23. Awati, R., & Lutkevich, B. (2024, 27 листопада). What is obfuscation and how does it work? | Definition from TechTarget. Search Security. https://www.techtarget.com/searchsecurity/definition/obfuscation
24. Tang, C. (2025, February 27). A survey of deobfuscation techniques in JavaScript. OpenReview. https://openreview.net/pdf?id=qqsLx6EzpS
25. Vastel, A. (2019, 9 вересня). Improving our homemade JavaScript obfuscator. Antoine Vastel Blog. https://antoinevastel.com/javascript/2019/09/09/improving-obfuscator.html
26. Hoisting - glossary | MDN. (б. д.). MDN Web Docs. https://developer.mozilla.org/en-US/docs/Glossary/Hoisting
27. Lawson, E. (2024, 17 грудня). JavaScript obfuscation and minification | jscrambler blog. Jscrambler. https://jscrambler.com/blog/understanding-javascript-obfuscation-and-minification
28. Langton, A. (2025, 18 лютого). Invisible obfuscation technique used in PAC attack. Official Juniper Networks Blogs. https://blogs.juniper.net/en-us/threat-research/invisible-obfuscation-technique-used-in-pac-attack
29. JS Obfuscator. (n.d.). JavaScript obfuscator tool. https://www.js-obfuscator.com/
30. Obfuscator.io. (n.d.). JavaScript obfuscator. https://obfuscator.io/
31. De Sutter, B. (2025, 19 лютого). A new framework of software obfuscation evaluation criteria. arXiv.org e-Print archive. https://arxiv.org/html/2502.14093v1
32. Вчена́ нотатка Таврійського національного університету ім. В. І. Вернадського. (2025). Вчені записки ТНУ імені В. І. Вернадського. Серія: Технічні науки, 36 (75) (частина 2).
33. Vastel, A. (2019, 10 вересня). Benchmarking our JavaScript obfuscator. Antoine Vastel Blog. https://antoinevastel.com/javascript/2019/09/10/benchmarking-obfuscator.html
34. Augmented Reality Enhanced Learning Tools Development for Cybersecurity Major Zagorodna N., Skorenkyy Y., Kunanets N., Baran I., Stadnyk M (2022) CEUR Workshop Proceedings, 3309 , pp. 25-32.
35. Stadnyk, M., & Palamar, A. (2022). Project management features in the cybersecurity area. Вісник Тернопільського національного технічного університету, 106(2), 54-62.
36. Muzh, V., & Lechachenko, T. (2024). Computer technologies as an object and source of forensic knowledge: challenges and prospects of development. Вісник Тернопільського національного технічного університету, 115(3), 17-22.
37. Boltov, Y., Skarga-Bandurova, I., & Derkach, M. (2023, September). A Comparative Analysis of Deep Learning-Based Object Detectors for Embedded Systems. In 2023 IEEE 12th International Conference on Intelligent Data Acquisition and Advanced Computing Systems: Technology and Applications (IDAACS) (Vol. 1, pp. 1156-1160). IEEE.
38. Sedinkin , O., Derkach , M., Skarga-Bandurova , I., & Matiuk , D. (2024). Eye tracking system based on machine learning. COMPUTER-INTEGRATED TECHNOLOGIES: EDUCATION, SCIENCE, PRODUCTION, (55), 199-205.
39. Derkach , M., Kondratenko , R., & Barbaruk , V. (2025). Information system for forming a social profile of an individual using OSINT technologies. COMPUTER-INTEGRATED TECHNOLOGIES: EDUCATION, SCIENCE, PRODUCTION, (59), 107-112.
40. Kulchytskyi, T., Rezvorovych, K., Povalena, M., Dutchak, S., & Kramar, R. (2024). LEGAL REGULATION OF CYBERSECURITY IN THE CONTEXT OF THE DIGITAL TRANSFORMATION OF UKRAINIAN SOCIETY. Lex Humana (ISSN 2175-0947), 16(1), 443-460.
41. Lupenko, S., Orobchuk, O., Kateryniuk, I., Kozak, R., & Lypak, H. (2023). Secure information system for Chinese Image medicine knowledge consolidation.
42. Міністерство охорони здоров’я України. (1998, 10 грудня). ДСанПіН 3.3.2.007 98: Державні санітарні правила і норми роботи з візуальними дисплейними терміналами електронно-обчислювальних машин (Наказ № 7). Верховна Рада України. https://zakon.rada.gov.ua/go/v0007282-98
43. Міністерство охорони здоров’я України. (2007, 21 травня). Про затвердження Порядку проведення медичних оглядів працівників певних категорій (Наказ № 246). Верховна Рада України. https://zakon.rada.gov.ua/laws/show/z0846-07
44. Міністерство соціальної політики України. (2018, 14 лютого). Про затвердження Вимог щодо безпеки та захисту здоров’я працівників під час роботи з екранними пристроями (Наказ № 207). Верховна Рада України. https://zakon.rada.gov.ua/laws/show/z0508-18
45. Андрейчук, Н. І., Кіт, Ю. В., Шибанов, С. В., Шерстньова, О. В. (2012). Охорона праці. Occupational safety (276 с.). Видавництво Львівської політехніки.
46. Атаманчук, П. С., Мендерецький, В. В., Панчук, О. П., Чорна, О. Г. (2011). Безпека життєдіяльності [Навчальний посібник] (276 с.). Київ: Центр учбової літератури.
47. Сокуренко, В. В. (ред.). (2021). Безпека життєдіяльності та охорона праці [Підручник] (308 с.; ISBN 978‑966‑610‑248‑8). Харків: Харківський національний університет внутрішніх справ.
48. Гетманець, Г. Т., Лапін, В. М. (2006). Основи охорони праці (3-тє вид., стер., 232 с.). Видавництво "Новий Світ–2000".
Content type: Bachelor Thesis
Εμφανίζεται στις συλλογές:125 — Кібербезпека, Кібербезпека та захист інформації (бакалаври)

Αρχεία σε αυτό το τεκμήριο:
Αρχείο Περιγραφή ΜέγεθοςΜορφότυπος 
Khilinich_Valerii_SB_42_2025.pdf1,98 MBAdobe PDFΔείτε/ Ανοίξτε


Όλα τα τεκμήρια του δικτυακού τόπου προστατεύονται από πνευματικά δικαιώματα

Εργαλεία διαχειριστή