Kursy

Szafir podpis: trzy luki, aktualizacja do buildu 708

CERT Polska opisał trzy luki w Szafirze od KIR. Poprawka jest w buildzie 708, a Szafir Weryfikująca jej nie dostanie. Co zrobić teraz.

Szafir podpis kwalifikowany - czarny czytnik kart USB z włożoną kartą kryptograficzną leży na stosie wydrukowanych dokumentów na drewnianym stole, obok pióro
Spis treści
  1. Co CERT Polska opisał w Szafirze 29 października
  2. Luka XXE: co musi się stać, żeby ktoś odczytał twoje pliki
  3. Dwie luki w aktualizacji: kiedy są groźne
  4. Jak sprawdzić wersję Szafira i zaktualizować do buildu 708
  5. Szafir weryfikacja podpisu: czym zastąpić Szafira Weryfikującą
  6. KIR Szafir: kolejne ostrzeżenie CERT w 2026 roku
  7. FAQ
  8. Podsumowanie

Program Szafir, którym firmy i biura rachunkowe składają kwalifikowany podpis z karty KIR, miał trzy podatności, więc każdy, kto ma wydanie starsze niż 2.0.0 build 708, powinien je teraz zaktualizować. CERT Polska opisał luki 29 października 2026 roku. Najpoważniejsza pozwala odczytać pliki z dysku osoby, która podpisze albo zweryfikuje podsunięty jej plik XML. Ta sama luka dotyczy darmowego programu Szafir Weryfikująca, którego Krajowa Izba Rozliczeniowa już nie wspiera i nie naprawi. Informacji o wykorzystaniu luk w atakach CERT nie podaje. Stan na 30 października 2026 roku, godz. 8:15.

Co CERT Polska opisał w Szafirze 29 października

Szafir to aplikacja Krajowej Izby Rozliczeniowej (KIR) do składania i weryfikacji podpisu elektronicznego. Pracuje z certyfikatem na karcie kryptograficznej, którą wkłada się do czytnika. Według wpisu CERT Polska podatne są wszystkie wydania Szafira sprzed buildu 708 wersji 2.0.0. Wszystkie trzy problemy naprawiono w buildzie 708. Lukę zgłosił Mikus Teivens z zespołu Critical Security, a CERT Polska koordynował ujawnienie.

Ocenę wagi luk w skali CVSS 4.0 nadał CERT Polska w rekordach CVE opublikowanych tego samego dnia.

LukaNa czym polegaCzego wymaga od atakującegoCVSS 4.0Szafir Weryfikująca
CVE-2026-93570 (XXE)odczyt dowolnych plików z dysku ofiaryofiara podpisuje albo weryfikuje spreparowany plik XML8,2 (wysoka)podatna, bez poprawki
CVE-2026-93571 (path traversal)zapis podstawionego pliku XML w wybranym miejscuprzekierowanie żądania aktualizacji na własny serwer2,3 (niska)nie dotyczy
CVE-2026-106036 (brak weryfikacji certyfikatu)aplikacja pobiera plik aktualizacji z serwera atakującegopodstawienie własnego certyfikatu TLS w połączeniu6,9 (średnia)nie dotyczy

Źródło: CERT Polska i rekordy CVE, odczyt 30.10.2026.

Luka XXE: co musi się stać, żeby ktoś odczytał twoje pliki

Najgroźniejsza luka zadziała tylko wtedy, gdy sam otworzysz w Szafirze podsunięty plik XML, żeby go podpisać albo sprawdzić podpis. CERT opisuje mechanizm tak: plik zawiera deklarację DOCTYPE z odwołaniem do zewnętrznej definicji, a parser programu ją przetwarza. Skutek to możliwość odczytania dowolnych plików z dysku ofiary.

Według naszej oceny ten warunek łatwo spełnić, choć CERT o tym nie pisze: w XML-u są e-faktury z KSeF, pliki JPK, e-sprawozdania i pisma podpisane w formacie XAdES. Księgowa albo kadrowa regularnie dostaje takie pliki mailem i sprawdza w nich podpisy. Podrobiony “plik do weryfikacji” od nieznanego nadawcy jest więc wiarygodnym wabikiem, tak jak każdy załącznik w phishingu. Jak wygląda taki plik od środka, opisaliśmy przy okazji otwierania plików XML z podpisem XAdES.

Luka dotyczy programu. Kryptografii certyfikatu ani ważności wcześniej podpisanych dokumentów źródła nie kwestionują.

Dwie luki w aktualizacji: kiedy są groźne

Dwie pozostałe luki dotyczą mechanizmu, którym Szafir pobiera aktualizacje. Szafir w starszych wersjach akceptuje dowolny certyfikat serwera i nie sprawdza nazwy hosta. Atakujący, który stoi w sieci pomiędzy komputerem a serwerem KIR, może więc podsunąć własny certyfikat. Program pobierze wtedy plik aktualizacji z jego serwera, a druga luka pozwoli zapisać podstawiony plik XML w wybranym przez niego miejscu.

Taki atak wymaga możliwości przekierowania ruchu, którym program pobiera aktualizację. W praktyce chodzi o fałszywy albo przejęty punkt Wi-Fi w hotelu czy na lotnisku, przejęty router albo zainfekowaną sieć firmową. Zaufana sieć domowa z aktualnym routerem wyraźnie zmniejsza to ryzyko, choć go nie wyklucza. Przejęte aktualizacje to jednak znany scenariusz ataku: w październiku opisywaliśmy atak przez aktualizacje programu AOMEI Backupper.

Jak sprawdzić wersję Szafira i zaktualizować do buildu 708

Najpewniejsza droga to pobranie instalatora ze strony KIR w przeglądarce i zainstalowanie go na obecną wersję. KIR publikuje build 708 na stronie Aplikacje i sterowniki w wersjach dla Windows 10 i 11 (EXE oraz MSI 32- i 64-bitowe), macOS i Linuksa. Osobny pakiet z buildem 708 przygotowano dla nowych kart Graphite.

  1. Wejdź na elektronicznypodpis.pl i otwórz zakładkę “Aplikacje i sterowniki”.
  2. W sekcji “Aplikacja Szafir do składania i weryfikacji podpisu elektronicznego (build 708)” pobierz wersję dla swojego systemu.
  3. Zamknij Szafira i uruchom instalator.
  4. Po instalacji sprawdź numer wersji w programie. Według podręcznika KIR do Szafira 2.0 menu “Pomoc” ma pozycję “O programie”. Podręcznik pochodzi sprzed lat, więc w nowym wydaniu ta pozycja może wyglądać inaczej.

To samo menu ma w podręczniku pozycję “Aktualizacja aplikacji”, która sprawdza, czy jest nowsza wersja. Nasza rada: stary Szafir ma lukę właśnie w pobieraniu aktualizacji. Dlatego nie aktualizuj go z poziomu programu w publicznej sieci. Plik ściągnięty przeglądarką ze strony KIR nie ma tego problemu, bo przeglądarka sprawdza certyfikat serwera. Sprawdziliśmy też linki na stronie KIR 30 października rano. Instalatory EXE, oba MSI i pakiet dla macOS mają w adresie oznaczenie “b703” albo “703”, ale serwer przekierowuje je na pliki z numerem 708, na przykład Szafir_2.0.0_b708_jre11.exe. Pobierasz więc właściwe wydanie, mimo mylącej nazwy w linku.

W firmie, w której Szafir stoi na kilku komputerach, aktualizację trzeba przeprowadzić na każdym z nich. Dotyczy to też laptopów, z którymi ktoś podpisuje dokumenty poza biurem.

Szafir weryfikacja podpisu: czym zastąpić Szafira Weryfikującą

Szafir Weryfikująca nie dostanie poprawki, więc trzeba przestać jej używać i odinstalować ją. Na stronie pobierania KIR napisał wprost: “Aplikacja Szafir weryfikująca nie jest już wspierana. Przejdź na Szafir 2.0 (build 708).” CERT Polska dodaje, że program “nie jest już wspierany i nie został naprawiony”.

To ważne dla osób bez własnego podpisu, bo Szafir Weryfikująca służyła głównie do sprawdzania cudzych podpisów. Do tego nie trzeba instalować niczego. Usługa “Podpisz lub sprawdź dokument” na gov.pl pokazuje, kto podpisał dokument i czy podpis jest poprawny. Pisma z urzędu skarbowego sprawdzisz też w bezpłatnej usłudze Zweryfikuj podpis elektroniczny na platformie PUESC. Według opisu służy ona do dokumentów otrzymanych z jednostek Krajowej Administracji Skarbowej albo z Ministerstwa Finansów, zwłaszcza w formacie PDF i XML. Obie drogi opisaliśmy krok po kroku w poradniku o tym, jak podpisać dokument podpisem kwalifikowanym i zweryfikować cudzy podpis. Kto ma kartę KIR, może weryfikować podpisy w zaktualizowanym Szafirze 2.0.

KIR Szafir: kolejne ostrzeżenie CERT w 2026 roku

To kolejny w 2026 roku wpis CERT Polska o oprogramowaniu KIR do podpisu, a każdy z nich dotyczy innego programu. W maju CERT opisał lukę w Szafir SDK, naprawioną w wersji 1.8.463.2. W czerwcu przyszła luka w SzafirHost, która mogła prowadzić do zdalnego wykonania kodu i została naprawiona w wersji 1.2.2. Październikowe luki w Szafirze nie oznaczają, że podatne są mSzafir, SzafirHost w aktualnej wersji ani same karty. Tych programów wpis z 29 października nie wymienia.

Podobną sytuację mieli w lipcu użytkownicy certyfikatów Certum, gdy CERT opisał luki w programie proCertum SmartSign. Wniosek jest ten sam: program do podpisu trzeba aktualizować jak przeglądarkę. KIR nie opublikował osobnego komunikatu o lukach w aktualnościach serwisu (stan na 30 października rano).

FAQ

Czy dokumenty podpisane Szafirem przed aktualizacją są nadal ważne?

Tak, żadne źródło nie podważa ważności złożonych podpisów. Luki dotyczą działania aplikacji na komputerze. Kryptografii podpisu ani certyfikatów kwalifikowanych nie podważają. Jeśli chcesz się upewnić, sprawdź podpisany plik w usłudze “Podpisz lub sprawdź dokument” na gov.pl.

Czy trzeba wymieniać kartę albo certyfikat?

Nie. CERT Polska wymienia wyłącznie programy Szafir i Szafir Weryfikująca. Wystarczy zainstalować build 708 i usunąć Szafira Weryfikującą. Kartę, czytnik i certyfikat używasz dalej bez zmian.

Devstock { dla firm }

Co możemy zrobić dla Twojej firmy?

Budujemy strony, sklepy i aplikacje, łączymy systemy z KSeF i księgowością, wdrażamy automatyzacje i agentów AI, a na koniec dbamy o widoczność w Google. Zaczynamy od rozmowy o tym, co dziś zabiera Twojemu zespołowi najwięcej czasu.

strony i sklepyaplikacjeKSeF i integracjeautomatyzacjeagenci AISEO
Zobacz, co robimy dla firm → Software house, który prowadzi ten blog

Podsumowanie

CERT Polska opisał 29 października trzy luki w programie Szafir od KIR. Najgroźniejsza pozwala odczytać pliki z dysku osoby, która podpisze albo zweryfikuje podsunięty plik XML. Dwie pozostałe umożliwiają podstawienie fałszywej aktualizacji, ale tylko atakującemu, który kontroluje sieć między komputerem a serwerem KIR. Wszystkie trzy naprawia Szafir 2.0.0 build 708, dostępny na stronie elektronicznypodpis.pl dla Windows, macOS i Linuksa. Szafir Weryfikująca ma tę samą lukę XXE i nie dostanie poprawki, więc trzeba ją odinstalować. Cudze podpisy sprawdzisz w usłudze na gov.pl, a pisma ze skarbówki także w PUESC. Informacji o atakach z użyciem tych luk na razie nie ma. Do czasu aktualizacji nie podpisuj ani nie weryfikuj plików XML od nieznanych nadawców.

Co dalej

Więcej z działu Bezpieczeństwo