Cieľom diplomovej práce bolo
vytvoriť a popísať nástroj na monitoring kompromitácie hesiel, ktorý umožní
používateľovi overiť kompromitáciu. Teoretická časť pojednáva o
kryptografických základoch a aplikácii hashov, venuje sa dejinám, použitiu a
zmysluplnosti hesiel a skúma bezpečnostné mechanizmy, ktoré bežne využívajú
webové prehliadače, ako napríklad Content Security Policy, a tiež spôsoby
využitia týchto mechanizmov vo webových aplikáciách. Ďalej sa pojednáva o
výbere vhodných zdrojov dát pre overenie kompromitácie, a časť končí rozborom
scenárov nasadenia. Praktická časť vysvetľuje architektúru aplikácie vytvorenej
k diplomovej práci, vybrané implementačné detaily, pridružené nástroje a metódy
použité na overenie správnosti správania programu.
Anotace v angličtině
The aim of the thesis has been to program and describe a tool
that enables the user to verify the potentiality of a credential breach. The
theoretical part analyses the cryptographic foundations of hashing and their
application, the history, usage as well as rationale of passwords. It explores
security mechanisms commonly employed by web browsers, such as Content Security
Policy, and also how web applications can make use of them. Potential data
sources are then evaluated, and the part concludes by pondering deployment
scenarios. The practical part explains the application architecture, chosen
implementation details, associated tooling, and methods used to validate the
correctness of program's behaviour.
Passwords, Compromise monitoring, Password breach, Web security
Rozsah průvodní práce
82
Jazyk
AN
Anotace
Cieľom diplomovej práce bolo
vytvoriť a popísať nástroj na monitoring kompromitácie hesiel, ktorý umožní
používateľovi overiť kompromitáciu. Teoretická časť pojednáva o
kryptografických základoch a aplikácii hashov, venuje sa dejinám, použitiu a
zmysluplnosti hesiel a skúma bezpečnostné mechanizmy, ktoré bežne využívajú
webové prehliadače, ako napríklad Content Security Policy, a tiež spôsoby
využitia týchto mechanizmov vo webových aplikáciách. Ďalej sa pojednáva o
výbere vhodných zdrojov dát pre overenie kompromitácie, a časť končí rozborom
scenárov nasadenia. Praktická časť vysvetľuje architektúru aplikácie vytvorenej
k diplomovej práci, vybrané implementačné detaily, pridružené nástroje a metódy
použité na overenie správnosti správania programu.
Anotace v angličtině
The aim of the thesis has been to program and describe a tool
that enables the user to verify the potentiality of a credential breach. The
theoretical part analyses the cryptographic foundations of hashing and their
application, the history, usage as well as rationale of passwords. It explores
security mechanisms commonly employed by web browsers, such as Content Security
Policy, and also how web applications can make use of them. Potential data
sources are then evaluated, and the part concludes by pondering deployment
scenarios. The practical part explains the application architecture, chosen
implementation details, associated tooling, and methods used to validate the
correctness of program's behaviour.
Passwords, Compromise monitoring, Password breach, Web security
Zásady pro vypracování
Specifikujte požadavky na systém s ohledem na jeho zabezpečení.
Vyberte vhodné zdroje dat pro ověření kompromitace hesel.
Navrhněte systém pro online správu vlastní databáze kompromitovaných loginů.
Navržený systém implementujte v testovacím prostředí a ověřte jeho funkčnost.
Ověřte izolaci uživatelských účtů Vašeho systému. Popište bezpečnostní mechanismy, které ji zajišťují.
Zásady pro vypracování
Specifikujte požadavky na systém s ohledem na jeho zabezpečení.
Vyberte vhodné zdroje dat pro ověření kompromitace hesel.
Navrhněte systém pro online správu vlastní databáze kompromitovaných loginů.
Navržený systém implementujte v testovacím prostředí a ověřte jeho funkčnost.
Ověřte izolaci uživatelských účtů Vašeho systému. Popište bezpečnostní mechanismy, které ji zajišťují.
Seznam doporučené literatury
S. Stamm, B. Sterne, and G. Markham, Reining in the Web with Content Security Policy, in Proceedings of the 19th International Conference on World Wide Web, ser. WWW ’10, 2010, p. 921–930
OWASP top 10 web application security risks. [Online]. Available: https://owasp.org/www-project-top-ten/
Lukas Weichselbaum, Michele Spagnuolo, Sebastian Lekies, and Artur Janc. 2016. CSP Is Dead, Long Live CSP! On the Insecurity of Whitelists and the Future of Content Security Policy. In Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security (CCS '16). Association for Computing Machinery, New York, NY, USA, 1376–1387. https://doi.org/10.1145/2976749.2978363
Jean-Philippe Aumasson, Serious Cryptography, No Starch Press, 2017, ISBN-13: 9781593278267
Sivathanu, Gopalan & Wright, Charles & Zadok, Erez. (2005). Ensuring data integrity in storage: techniques and applications. 26-36. 10.1145/1103780.1103784.
A. K. Pandey et al., "Key Issues in Healthcare Data Integrity: Analysis and Recommendations," in IEEE Access, vol. 8, pp. 40612-40628, 2020, doi: 10.1109/ACCESS.2020.2976687.
"Site Isolation - The Chromium Projects." [Online]. Available: https://www.chromium.org/Home/chromium-security/site-isolation
Seznam doporučené literatury
S. Stamm, B. Sterne, and G. Markham, Reining in the Web with Content Security Policy, in Proceedings of the 19th International Conference on World Wide Web, ser. WWW ’10, 2010, p. 921–930
OWASP top 10 web application security risks. [Online]. Available: https://owasp.org/www-project-top-ten/
Lukas Weichselbaum, Michele Spagnuolo, Sebastian Lekies, and Artur Janc. 2016. CSP Is Dead, Long Live CSP! On the Insecurity of Whitelists and the Future of Content Security Policy. In Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security (CCS '16). Association for Computing Machinery, New York, NY, USA, 1376–1387. https://doi.org/10.1145/2976749.2978363
Jean-Philippe Aumasson, Serious Cryptography, No Starch Press, 2017, ISBN-13: 9781593278267
Sivathanu, Gopalan & Wright, Charles & Zadok, Erez. (2005). Ensuring data integrity in storage: techniques and applications. 26-36. 10.1145/1103780.1103784.
A. K. Pandey et al., "Key Issues in Healthcare Data Integrity: Analysis and Recommendations," in IEEE Access, vol. 8, pp. 40612-40628, 2020, doi: 10.1109/ACCESS.2020.2976687.
"Site Isolation - The Chromium Projects." [Online]. Available: https://www.chromium.org/Home/chromium-security/site-isolation
Přílohy volně vložené
CD ROM
Přílohy vázané v práci
-
Převzato z knihovny
Ne
Plný text práce
Přílohy
Posudek(y) oponenta
Hodnocení vedoucího
Záznam průběhu obhajoby
Student seznámil komisi s výsledky své diplomové práce. Poté byly přečteny posudky vedoucího a oponenta a následně byla vedena rozprava, během které byly položeny následující dotazy a komentáře.
Jak složité by bylo vytvořit funkcionalitu, kdy by uživatel nahrál seznam zájmových loginů nebo emailových adres a systém by periodicky kontroloval, zda se nevyskytly v nějakém úniku? Plánujete systém dále rozvíjet? (dr. Malaník)
Samotný nástroj působí dost minimalisticky. Sám o sobě umožňuje vytvořit si uživatelský účet a následné přihlášení. Účet poté umožňuje provádět jednoduché akce v závislosti na tom, jakou roli účet má (Admin/User). Admin může spravovat uživatelské účty aplikace a nastavení API klíčů pro zdroje monitoringu kompromitace hesel. Ty jsou v aplikaci aktuálně dva. User má pak v podstatě jedinou funkcionalitu a tou je vyhledávání, zda došlo ke kompromitaci. Během testování aplikace se objevily problémy např. s odhlášením User účtu, kdy po stisku tlačítka „lougout“ nedošlo k žádné akci.
Nelze také opomenout grafickou podobu aplikace. Chápu, že se nejedná o stěžejní výstup práce, přesto na mě výsledné GUI působí poměrně nedotaženě. Jak prakticky probíhá online správa vlastní databáze kompromitovaných loginů?
V kterých prohlížečích jste prováděl testování Vaší aplikace?(dr. Švejda)
Vůči čemu provedete kontrolu dat? Jaká data může uživatel zadat? Jak je realizované zabezpečení? (prof. Šenkeřík)
Můžu hromadně zkontrolovat data uživatelů? Kdo denně bude používat vaší aplikaci? (dr. Janků)
Student reagoval a všechny otázky zodpověděl.