Profil bezpieczeństwa
EPPlus to biblioteka klas .NET do przetwarzania arkuszy kalkulacyjnych w formacie Office Open XML. Jest dystrybuowana jako pakiet NuGet zawierający podpisane asemblery dla wielu .NET ram docelowych i przeznaczona do użycia jako komponent w aplikacjach tworzonych przez klienta.
Jak działa EPPlus
EPPlus nie ma własnego środowiska uruchomieniowego. Jest to biblioteka ładowana do procesu aplikacji gospodarza i wykonywana w całości w tym procesie. Ma to następujące konsekwencje dla profilu bezpieczeństwa:
- EPPlus nie działa w osobnym procesie. Działa jako kod w trakcie procesu w aplikacji, która go odwołuje.
- EPPlus nie zarządza własną bazą danych ani trwałą pamięcią masową. Wszelkie obsługi plików lub danych są wykonywane w imieniu aplikacji hosta.
- EPPlus nie inicjuje własnej aktywności sieciowej — nie wykonuje telemetrii, kontroli licencji, aktualizacji ani nie "telefonii do domu" — i nie wymaga dostępu do sieci do działania. Wszystkie I/O w plikach arkusza kalkulacyjnego są lokalne dla procesu hosta. Jedynym wyjątkiem jest wywoływanie przez hosta: funkcja IMAGE() może pobrać obraz przez HTTPS, gdy aplikacja hosta oblicza formuły, za pośrednictwem usługi, którą host może ograniczyć lub wyłączyć.
- EPPlus nie posiada mechanizmu uwierzytelniania ani autoryzacji. Nie identyfikuje użytkowników, nie wydaje danych uwierzytelniających ani nie kontroluje dostępu.
- EPPlus nie ma własnej infrastruktury — żadnych serwerów, usług chmurowych, hostowanych punktów końcowych.
- Testy penetracyjne mają znaczenie tylko w kontekście aplikacji hosta, ponieważ EPPlus nie eksponuje żadnego samodzielnego czasu działania ani powierzchni sieci podsłuchowej ani przychodzącej. Znaczące testy bezpieczeństwa odbywają się na poziomie aplikacji hosta, która korzysta z EPPlus.
Co to oznacza dla ocen bezpieczeństwa
Wiele standardowych kwestionariuszy bezpieczeństwa jest projektowanych dla produktów SaaS lub usług sieciowych. Pytania dotyczące konfiguracji TLS, logowania dostępu, udostępniania użytkownika, hartowania infrastruktury, monitorowania w czasie działania czy przechowywania danych nie dotyczą EPPlus, ponieważ EPPlus nie udostępnia żadnej z tych powierzchni.
Obawy dotyczące bezpieczeństwa, które dotyczą EPPlus , są omówione w innych sekcjach tej strony:
- Integralność wydania — zobacz Podpisywanie kodu , aby zweryfikować, że wydanie nie zostało zmienione.
- Integralność zależności — zobacz Listę Materiałów Oprogramowania , aby poznać pełny inwentarz komponentów każdej wersji.
- Znane podatności — zobacz Ujawnienia podatności dla ujawnionych problemów oraz nasze oceny.
- Raportowanie i reagowanie — zobacz naszą Politykę Ujawniania Podatności , aby dowiedzieć się, jak zgłaszać problem bezpieczeństwa, nasz skoordynowany proces ujawniania, cele wewnętrznej reakcji oraz obowiązki raportowania wynikające z artykułu 14 CRA do CERT-SE i ENISA.
- Przetwarzanie niezaufanych danych wejściowych — zobacz kwestie bezpieczeństwa przy obliczaniu formuł dla implikacji bezpieczeństwa wynikające z obliczania formuł w zeszytach roboczych z niezaufanych źródeł oraz dostępne dla aplikacji hosta.
Bezpieczne praktyki rozwojowe
EPPlus jest opracowywany w ramach zestawu praktyk mających na celu wczesne wykrywanie wad — w tym tych istotnych dla bezpieczeństwa:
- Wszystkie zmiany w kodzie są dokonywane poprzez pull requesty i muszą zostać przejrzane oraz zatwierdzone przez innego członka zespołu EPPlus przed połączeniem. Proces ten jest publiczny i odbywa się w repozytorium EPPlus GitHub.
- Każda zmiana przechodzi tysiące testów jednostkowych w ramach naszego pipeline'u CI/CD przed wydaniem.
- Kod źródłowy jest analizowany przy każdym pushu przez GitHub CodeQL. Szczegóły można znaleźć w sekcji Source Code Scaning .
- Zależności są nieustannie skanowane pod kątem znanych luk. Zobacz Skanowanie podatności dla szczegółów.
Granica odpowiedzialności
Ponieważ EPPlus działa w procesie aplikacji hosta, odpowiedzialność za ogólny stan bezpieczeństwa jest współtworzona. EPPlus Software AB odpowiada za to, co znajduje się w bibliotece — poprawność kodu, integralność opublikowanych artefaktów oraz terminowe traktowanie zgłoszonych luk. Aplikacja hosta odpowiada za wszystko wokół biblioteki — środowisko uruchomieniowe, użytkowników uzyskujących dostęp oraz dane przekazywane do niej do przetwarzania.
Obowiązki aplikacji hosta
- Decyzja, czy plik jest zaufany czy nie, zanim zostanie przekazany EPPlus.
- Stosowanie limitów zasobów (pamięć, CPU, czas przetwarzania) na poziomie procesu.
- Uwierzytelnianie i autoryzacja użytkowników aplikacji hosta.
- Obsługa infrastruktury, na której działa aplikacja hosta.
- Stosowanie odpowiednich kontrol przy obliczaniu wzorów w zeszytach roboczych nieufnych lub częściowo zaufanych.
Obowiązki EPPlus Software AB
- Poprawność i bezpieczeństwo samego kodu bibliotecznego.
- Obsługa dobrze uformowanych i nieukształtowanych plików wejściowych w udokumentowanych granicach, bez piaskowania czy izolacji poza tym, co zapewnia aplikacja hosta.
- Terminowe usuwanie zgłoszonych luk zgodnie z naszą Polityką Ujawniania Podatności.
- Utrzymanie integralności łańcucha dostaw poprzez podpisywanie kodu i publikowanie SBOM-ów.