Streszczenie:
Celem niniejszej pracy jest dokonanie analizy systemu zarządzania treścią pod kątem bezpieczeństwa. Na rynku można znaleźć ogromną ilość zróżnicowanych systemów CMS (Content Management System), których kod jest dostępny publicznie. Jednak żadne dostępne gotowe rozwiązanie jakie znalazł autor nie oferowało dostępnych najnowszych technologii. Dodatkowym celem pracy jest pokazanie od strony wytwarzania aplikacji miejsc, w których należy zwrócić uwagę na bezpieczeństwo. Jak będzie można się przekonać już w początkowych fazach produkcji, tuż za samym pomysłem na aplikację jest przestrzeń na zastosowanie technik, które mają na celu pomóc wytworzyć bezpieczny system. W dalszych rozdziałach zostanie przedstawione, że testowanie aplikacji jako czarnych skrzynek (bez dostępu do kodu i dokumentacji) nie jest wystarczające, aby w pełni ocenić bezpieczeństwo. Zagrożenie może występować nawet na środowisku CI/CD (Continuous Integration/Continuous Deployment). Dlatego autor zdecydował się na napisanie systemu zarządzania treścią od podstaw, używając najnowszego dostępnego rozwiązania. W momencie pisania tej pracy takim produktem jest ASP.NET Core 5 Web Api od firmy Microsoft oraz Angular 12 od firmy Google. Przesyłane pakiety autor będzie śledził za pomocą narzędzi Wireshark1. Jest to najprawdopodobniej najpopularniejsze rozwiązanie do analizowania ruchu sieciowego. W testach penetracyjnych autor będzie posiłkował się aplikacją ZAP2 od fundacji OWASP. Niniejsza praca może być dobrym punktem wyjścia dla każdego, kto chciałby pisać bezpieczne aplikacje internetowe. W ramach niniejszej pracy została zbudowana aplikacja do zarządzania treścią, której liczne przykłady są przedstawione w odpowiednich rozdziałach. Analizując temat bezpieczeństwa, zostanie poruszona tematyka z takich obszarów jak podstawy kryptografii oraz działanie przeglądarek internetowych. W celu dogłębnego zrozumienia tematu aplikacji internetowych i ich bezpieczeństwa, należy zrozumieć istotę komunikacji pomiędzy komputerami. Zatem do zakresu tej pracy należy doliczyć podstawy sieci komputerowych.