Lab 2 - Jakub Szewczyk #55
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Zadanie 1
Podczas tworzenia nowego klienta - obiekt Customer - zostało zaobserwowane logowanie powstałego obiektu z widocznymi danymi wrażliwymi tj. pesel i adres.

Poprawki w kodzie
Dodałem "maskę" w logowaniu peselu i adresu klienta.

Zadanie 2
Gitleaks wykryło 3 wycieki secretów w repozytorium:

Każdy z wycieków to rodzaj
True Positive, ponieważ zawiera klucze publiczne i prywatne. Gitleaks nie wykrył występowania zmiennych o nazwiepassword.Zadanie 3
Podatność w pakiecie werkzeug (ID: 73889)
W pakiecie werkzeug wykryto podatność typu Denial of Service (DoS) oznaczoną jako Wysoka. Wykorzystanie podatności jest możliwe po uruchomieniu metody parsującej z klasy werkzeug.formparser.MultiPartParser. Po analizie w badanej aplikacji klasa ta jest wykorzystywana (poprzez odwołania do request.form w plikach widoków, np. przy tworzeniu klientów), także prawdopodobieństwo wykorzystania tej podatności jest wysokie.
Podatność w pakiecie werkzeug (ID: 71594)
W pakiecie werkzeug wykryto podatność typu Remote Code Execution (RCE) oznaczoną jako Krytyczna. Wykorzystanie podatności jest możliwe po uruchomieniu debugera z klasy werkzeug.debug.DebuggedApplication (wystawionego publicznie). Po analizie w badanej aplikacji (plik app.py) tryb debugowania jest włączony (debug=True), zatem klasa ta jest wykorzystywana, a prawdopodobieństwo wykorzystania tej podatności (jeśli aplikacja jest dostępna z sieci) jest wysokie.
Podatność w pakiecie jinja2 (ID: 76378)
W pakiecie jinja2 wykryto podatność typu RCE (Sandbox Escape) oznaczoną jako Krytyczna. Wykorzystanie podatności jest możliwe po uruchomieniu metod formatowania ciągów znaków wewnątrz środowiska jinja2.sandbox.SandboxEnvironment. Po analizie w badanej aplikacji klasa SandboxEnvironment nie jest wykorzystywana (aplikacja korzysta ze standardowego, niesandboxowanego środowiska Jinja2 do renderowania zaufanych szablonów), także prawdopodobieństwo wykorzystania tej podatności w ten sposób jest minimalne.
Podatność w pakiecie healpy (ID: 61774)
W pakiecie healpy wykryto podatność typu Arbitrary Code Execution oznaczoną jako Krytyczna. Wykorzystanie podatności jest możliwe przy przetwarzaniu złośliwych danych przez bibliotekę libcurl wykorzystywaną przez ten pakiet. Po analizie w badanej aplikacji pakiet healpy znajduje się w pliku requirements.txt, ale jego funkcjonalności nie są importowane ani wykorzystywane w kodzie źródłowym projektu, także prawdopodobieństwo wykorzystania tej podatności jest minimalne.