Skip to content

Conversation

@twezowic
Copy link

@twezowic twezowic commented Nov 9, 2025

Aplikacja przy wyświeltaniu danych z tabeli jest podatna na XSS.

Kroki do odtworzenia:

  1. Kliknąć Custormes, aby przejść na stronę z dodawaniem klientów Screenshot from 2025-11-09 12-26-02
  2. Kliknąć Add New Customer
  3. Wkleić w pole Name:
<script>
  window.location.replace("https://en.wikipedia.org/wiki/Cross-site_scripting");
</script>
  1. Uzpełnić pozostałe dane dowolnie Screenshot from 2025-11-08 20-15-53
  2. Kliknąć Add Customer, aby utworzyć klienta

Od teraz po każdym wczytaniu strony z klientami strona zostanie przekierowana na https://en.wikipedia.org/wiki/Cross-site_scripting.
Screenshot from 2025-11-08 20-16-03

Ten problem występuje na każdej stronie z dodawaniem. W pole pomiędzy <script>...</script> można wpisać dowolny kod javascript'a, który może być potencjalnie niebezpieczny. Kod ten następnie zostaje uruchomiony podczas wczytywania strony i próbie wyświetlenia danych w tabeli.

Dodane zostało czyszczenie danych przed stworzeniem nowych modeli z wykorzystaniem funkcji escape z biblioteki markupsafe. Dodane zostały również testy sprawdzające powyższą funkcję. Po wprowadzeniu poprawki dane są escapowane i jedynie wyświetlane na stronie bez ich uruchomienia.
Screenshot from 2025-11-09 12-29-52

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant