TBO laboratorium2 #48
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.
Combined Security Analysis Report
Zadanie 1 - Wrażliwe dane w logach
Wrażliwe dane:
W powyższym logu mamy adres oraz Pesel osoby zapisywane jawnie i niezaszyfrowane a także skojarzone z imieniem.
Pojawiają się one tylko w przypadku dodanie nowego gościa biblioteki, nie w przypadku wypożyczeń.
Poprawki
Dodano funkcję _mask_sensitive, która zamienia wybrane dane na "*".
Wynik:
Zadanie 2 - Wyniki użycia programu gitleaks
Znaleziono 3 secrety:
Wycieki bezpieczeństwa:
Gitleaks wykrył 3 prawdziwe wycieki sekretów w historii repozytorium Git:
Weryfikacja:
Pliki NIE istnieją w obecnym kodzie - zostały usunięte. Jednak nadal są dostępne w historii Git, co stanowi zagrożenie bezpieczeństwa.
Wnioski:
Zadanie 3 - Wyniki skanu Safety Check dla Python
Analiza najpoważniejszej podatności
Wybrana podatność: Jinja2 - Sandbox Bypass (ID: 76378)
Pakiet: Jinja2 wersja 3.1.2
Wymagana wersja: >= 3.1.5
Typ podatności: Remote Code Execution (RCE) - Sandbox Bypass
Krytyczność: Wysoka/Krytyczna
Opis podatności:
Podatność w silniku szablonów Jinja2 pozwala atakującemu, który kontroluje zawartość szablonu, na wykonanie arbitralnego kodu Python poprzez ominięcie mechanizmów sandbox. Podatność umożliwia:
str.formatzłośliwego stringaWarunki wykorzystania:
|attrdo uzyskania referencji do metodyformatAnaliza w kontekście badanej aplikacji Flask_Book_Library:
Weryfikacja wykorzystania Jinja2:
render_template()w plikach:books/views.py,customers/views.py,loans/views.py,core/views.pytemplates/(books.html, customers.html, loans.html, index.html)Weryfikacja warunków exploita:
xmlattrani|attrw szablonachstr.formatWnioski:
Prawdopodobieństwo wykorzystania podatności: MINIMALNE
Mimo że aplikacja używa podatnej wersji Jinja2, podstawowy warunek wykorzystania tej podatności nie jest spełniony. Atakujący nie ma możliwości kontrolowania zawartości szablonów, ponieważ:
Zalecenia:
Wyniki skanu