Detekce kódu v jazyce JavaScript se známými bezpečnostními chybami
Detecting JavaScript Code with Known Vulnerabilites

Author
Advisor
Polčák, LiborReferee
Jeřábek, KamilGrade
AAltmetrics
Metadata
Show full item recordAbstract
Prace se zabyva problematikou detekce zranitelnych JavaScriptovych knihoven a NPM balicku. Na zaklade existujicich studii shrnuje technologicky zaklad platformy Node.js a dale se hloubeji venuje vybranym zranitelnostem systemu NPM a stavajicim ochrannym prostredkum. Bylo vytvoreno rozsireni prohlizece Chrome, ktere ma za cil detekovat a opravit JavaScriptovy kod se znamymi zranitelnostmi na strane weboveho prohlizece. Vytvoreny nastroj byl otestovan pruchodem 50 000 webovymi strankami. Bylo detekovano 8 129 zranitelnych skriptu. Rozsireni bylo publikovano na Chrome Web Store pod nazvem JS Vulnerability Detector . This thesis deals with the detection of vulnerable JavaScript libraries and NPM packages. Based on existing studies, it summarizes the technological core of the Node.js platform and further focuses on selected vulnerabilities of the NPM system and existing means of protection. A Chrome browser extension able to detect and fix JavaScript code with known vulnerabilities on the web browser had been introduced. The tool was tested in a crawl of 50 000 websites. 8 129 vulnerable scripts were detected. The extension has been published to the Chrome Web Store as JS Vulnerability Detector .
Keywords
JavaScript, Node.js, NPM, detekce zranitelnosti, klientsky JavaScript, abstraktni syntakticky strom, rozsireni weboveho prohlizece, National Vulnerability Database, Snyk, Chrome, Manifest V3, crawl, hash, JSON, JavaScript, Node.js, NPM, vulnerability detection, client-side JavaScript, abstract syntax tree, browser extension, pushdown automata, National Vulnerability Database, Snyk, Chome, Manifest V3, crawl, hash, JSONLanguage
čeština (Czech)Study brunch
Informační systémy a databázeComposition of Committee
doc. Ing. Radek Burget, Ph.D. (předseda) prof. RNDr. Alexandr Meduna, CSc. (místopředseda) Ing. Vladimír Bartík, Ph.D. (člen) Ing. Matěj Grégr, Ph.D. (člen) doc. Ing. Petr Matoušek, Ph.D., M.A. (člen) Ing. Libor Polčák, Ph.D. (člen)Date of defence
2022-06-22Process of defence
Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky oponenta a na další otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm A. Otázky u obhajoby: Zkoušel jste zda-li Vaše řešení nastavené v režimu opravy nenarušuje funkcionalitu prohlížených webových stránek? Pokud ano, jak tento problém řešíte? Vaše řešení aktuálně pracuje s databází, která je přidružena k doplňku a dostupná lokálně. Což však může být do budoucna nešikovné, zvlášť pro rozšiřování databáze zranitelností. Pokuste se alespoň jednoduše navrhnout, případně rozšířit schéma zachycené na Obrázku 5.1, tak aby tento problém řešilo. Jak vzniká databáze zranitelností? V jaké formě jsou uloženy jednotlivé zranitelnosti? Jakým způsobem systém zpracuje syntaktickou chybu?Result of the defence
práce byla úspěšně obhájenaPersistent identifier
http://hdl.handle.net/11012/207802Source
RANDÝSEK, V. Detekce kódu v jazyce JavaScript se známými bezpečnostními chybami [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2022.Collections
- 2022 [127]
Citace PRO
Related items
Showing items related by title, author, creator and subject.
-
Vylepšení rozšíření pro omezení volání JavaScriptu
Timko, MartinCieľom tejto práce je rozšíriť a funkčne vylepšiť prototyp webového rozšírenia vytvoreného Ing. Zbyňkom Červinkom, zamerané na ochranu súkromia užívateľa pri prehliadaní webu. V riešení boli využité nadobudnuté poznatky o ... -
Využití časových značek jazyka JavaScript pro identifikaci počítače
Jireš, MichalTato práce se zabývá identifikací počítačů na základě posunu jejich vnitřních hodin. Tento posun bude zjišťován pomocí časových značek JavaScriptu. Cílem práce je vytvořit webovou stránku, která se pomocí výpočtu posunu ... -
Aplikační rámec pro vývoj informačních systémů v jazyce Dart
Raška, MiroslavVývoj webových aplikacích se potýká se specifickými problémy, které by mohly být vyřešeny novým webovým aplikačním rámcem kombinujícím moderní technologie a nový přístup k návrhu aplikací. Jednotlivé problémy webových ...