
Wprowadzenie do problemu / definicja
Microsoft opublikował pozaplanową poprawkę bezpieczeństwa dla ASP.NET Core, eliminując podatność CVE-2026-40372. Luka dotyczy komponentu Data Protection, który odpowiada za zabezpieczanie wrażliwych danych aplikacyjnych, takich jak ciasteczka uwierzytelniające, tokeny anty-CSRF oraz inne artefakty związane z tożsamością i integralnością sesji.
Problem ma charakter krytyczny, ponieważ uderza w jeden z fundamentów bezpieczeństwa aplikacji webowych. Naruszenie poprawności działania mechanizmu ochrony kryptograficznej może prowadzić do eskalacji uprawnień oraz obejścia kontroli dostępu.
W skrócie
- Podatność została oznaczona jako CVE-2026-40372.
- Dotyczy pakietu Microsoft.AspNetCore.DataProtection w wersjach od 10.0.0 do 10.0.6.
- Microsoft udostępnił poprawkę w wersji 10.0.7.
- Luka może umożliwić nieuwierzytelnionemu atakującemu uzyskanie podwyższonych uprawnień przez sieć.
- Najbardziej narażone są środowiska nie-Windows, w tym wdrożenia linuksowe i kontenerowe.
Kontekst / historia
Źródłem problemu była regresja wprowadzona do pakietu Microsoft.AspNetCore.DataProtection. Początkowo zwracano uwagę głównie na problemy z deszyfrowaniem danych po jednej z aktualizacji, jednak dalsza analiza wykazała, że usterka ma także istotny wymiar bezpieczeństwa.
Znaczenie podatności rośnie w nowoczesnych środowiskach chmurowych, gdzie aplikacje ASP.NET Core bardzo często działają na Linuksie lub w kontenerach. Choć warunki wykorzystania luki są częściowo zawężone, obejmują one dużą grupę produkcyjnych wdrożeń wykorzystywanych przez firmy i dostawców usług.
Analiza techniczna
Problem dotyczy nieprawidłowej weryfikacji podpisu kryptograficznego w mechanizmie authenticated encryption. W podatnych wersjach pakietu obliczanie znacznika HMAC miało odbywać się na niewłaściwych bajtach danych, a w części scenariuszy wynik skrótu mógł być dodatkowo odrzucany. Taki błąd podważa podstawowe założenia integralności i autentyczności danych zabezpieczanych przez Data Protection.
W praktyce oznacza to możliwość sfałszowania chronionych ładunków w taki sposób, aby zostały zaakceptowane przez aplikację jako prawidłowe. Potencjalnie zagrożone są więc ciasteczka sesyjne, tokeny antyforgery, elementy procesu logowania oraz inne dane chronione przez ten mechanizm.
W bardziej niebezpiecznych scenariuszach atakujący może uzyskać możliwość podszycia się pod użytkownika o wyższych uprawnieniach, a następnie doprowadzić do wygenerowania nowych, już poprawnie podpisanych tokenów. To sprawia, że sama instalacja poprawki nie zawsze kończy problem, jeśli w czasie ekspozycji doszło już do nadużycia.
Konsekwencje / ryzyko
Ryzyko związane z CVE-2026-40372 jest wysokie, ponieważ luka dotyczy mechanizmów zaufania odpowiedzialnych za uwierzytelnianie i autoryzację. Jeśli integralność tokenów lub ciasteczek zostaje naruszona, konsekwencją może być przejęcie sesji, obejście polityk dostępu i uzyskanie nieautoryzowanych uprawnień.
Szczególnie narażone są organizacje, które wykorzystują ASP.NET Core w środowiskach linuksowych, uruchamiają aplikacje w kontenerach, korzystają z zewnętrznych magazynów kluczy Data Protection oraz nie prowadzą regularnej rotacji materiału kryptograficznego po incydentach bezpieczeństwa.
- przejęcie sesji użytkowników uprzywilejowanych,
- nieautoryzowane generowanie lub odświeżanie tokenów,
- dostęp do danych poufnych w aplikacji,
- utrzymanie trwałego dostępu po pozornym usunięciu luki,
- konieczność pełnego przeglądu łańcucha zaufania w warstwie tożsamości.
Rekomendacje
Organizacje powinny jak najszybciej ustalić, czy korzystają z podatnych wersji pakietu Microsoft.AspNetCore.DataProtection, zarówno bezpośrednio, jak i pośrednio przez inne zależności NuGet. Priorytetem jest aktualizacja do wersji 10.0.7 oraz ponowne wdrożenie aplikacji i obrazów kontenerowych.
- natychmiast zaktualizować pakiet do wersji 10.0.7,
- przebudować i ponownie wdrożyć aplikacje,
- zweryfikować rzeczywiście ładowane wersje bibliotek w runtime,
- przeprowadzić rotację key ring używanego przez Data Protection,
- unieważnić aktywne sesje i wrażliwe tokeny, jeśli istnieje ryzyko wykorzystania luki,
- przeanalizować logi pod kątem nietypowych zdarzeń uwierzytelniania i zmian uprawnień,
- sprawdzić zależności pośrednie, które mogą wymuszać podatne wersje pakietu.
Z punktu widzenia zespołów bezpieczeństwa warto potraktować tę sytuację jako impuls do szerszego przeglądu mechanizmów kryptograficznych w aplikacjach. Podatności w warstwie ochrony tokenów i sesji należą do najgroźniejszych, ponieważ ich skutki mogą być trudne do wykrycia klasycznymi metodami monitoringu.
Podsumowanie
CVE-2026-40372 pokazuje, jak poważne skutki może mieć regresja w komponencie kryptograficznym odpowiedzialnym za ochronę danych uwierzytelniających. Choć podatność dotyczy określonych wersji i scenariuszy wdrożeniowych, jej wpływ na bezpieczeństwo środowisk produkcyjnych jest znaczący.
Wdrożenie poprawki 10.0.7 należy traktować jako działanie pilne, ale pełne ograniczenie ryzyka wymaga również rotacji kluczy, przeglądu sesji oraz oceny, czy wrażliwe tokeny nie zostały wygenerowane w okresie ekspozycji. W praktyce oznacza to, że reakcja na tę lukę powinna obejmować nie tylko aktualizację, ale także działania operacyjne po stronie bezpieczeństwa i tożsamości.
Źródła
- The Hacker News — https://thehackernews.com/2026/04/microsoft-patches-critical-aspnet-core.html
- .NET Blog: .NET 10.0.7 Out-of-Band Security Update — https://devblogs.microsoft.com/dotnet/dotnet-10-0-7-oob-security-update/
- .NET Blog: .NET and .NET Framework April 2026 servicing releases updates — https://devblogs.microsoft.com/dotnet/dotnet-and-dotnet-framework-april-2026-servicing-updates