Možnosti normalizace programů jazyka JavaScript při vyhledávání zranitelností - Havlíček, Lukáš (Vysoké učení technické v Brně. Fakulta informačních technologií, 2023)
Tato práce se zabývá problematikou minifikace, obfuskace JavaScryptu a normalizací abstraktních syntaktických stromů pro rozšíření prohlížeče implementované v rámci diplomové práce pana Randýska. Byly nastudovány nástroje a techniky minifikace i obfuskace JavaScryptu. Tyto informace byly využiti při návrhu a implementaci normalizace abstraktních syntaktických stromů. Stromy jsou využívány v rozšíření prohlížeče Chrome, které detekuje a opravuje JavaScryprový kód. Normalizace jsem otestoval jednotkovými a integračními testy. Otestoval jsem i rozšíření pro detekci chyb, kde jsem detekoval 125 zranitelností po průchodu 1000 webových stránek.

This thesis deals with the minification, obfuscation of JavaScript and normalization of abstract syntactic trees for browser extensions implemented in Mr. Randýsek’s thesis. The tools and techniques of both JavaScript minification and obfuscation have been studied. This information was used in the design and implementation of abstract syntactic tree normalization. The trees are used in a Chrome browser extension that detects and corrects JavaScript code. I tested the normalizations with unit and integration tests. I also tested the vulnerability detection extension, where I detected 125 vulnerabilities on 1000 websites.
JavaScript Code Normalization During Detection of Vulnerabilities
Keywords: JavaScrypt; minifikace; obfuskace; deobfuskace; metriky obfuskace; abstraktní syntaktický strom; rozšíření webového prohlížeče; normalizace; JavaScript; minification; obfuscation; deobfuscation; obfuscation metrics; abstract syntax tree; web browser extension; normalization