I-Librarian w wersji 4.8 i wcześniejszych zawiera podatność XML External Entity (XXE) w mechanizmie importu metadanych, umożliwiającą atakującemu odczyt dowolnych plików serwera oraz wykonywanie żądań SSRF. Podatność otrzymała maksymalny wynik CVSS 10.0, co czyni ją krytyczną.
▸ Pokaż oryginał (EN)
I Librarian I-librarian version 4.8 and earlier contains a XML External Entity (XXE) vulnerability in line 154 of importmetadata.php(simplexml_load_string) that can result in an attacker reading the contents of a file and SSRF. This attack appear to be exploitable via posting xml in the Parameter form_import_textarea.
Podatność występuje w pliku importmetadata.php (linia 154), gdzie funkcja simplexml_load_string przetwarza dane XML dostarczone przez użytkownika bez odpowiedniej walidacji encji zewnętrznych. Atakujący może przesłać spreparowany dokument XML zawierający deklarację zewnętrznej encji (XXE) poprzez parametr formularza form_import_textarea. Parser XML rozwiązuje encję zewnętrzną, co pozwala na odczyt zawartości plików lokalnych systemu operacyjnego (np. /etc/passwd) lub inicjowanie połączeń do wewnętrznych zasobów sieciowych (SSRF) — bez konieczności uwierzytelnienia.
Atakujący może odczytać poufne pliki z serwera (w tym pliki konfiguracyjne zawierające dane uwierzytelniające) oraz wykonywać żądania do wewnętrznych zasobów sieciowych niedostępnych bezpośrednio z Internetu, co może prowadzić do dalszego kompromitowania infrastruktury.
Należy zastosować patche dostępne u producenta zgodnie z referencjami (https://github.com/mkucej/i-librarian/issues/116). Zaleca się aktualizację do wersji wyższej niż 4.8. Dodatkowo, do czasu aktualizacji, warto rozważyć ograniczenie dostępu do funkcji importu metadanych na poziomie firewall lub serwera WWW oraz wyłączenie przetwarzania zewnętrznych encji XML w konfiguracji PHP.
I-Librarian (Scilico I\, Librarian) w wersji 4.8 oraz wszystkich wersjach wcześniejszych
Podatność została zgłoszona 13 marca 2018 roku. Wektor ataku nie wymaga uwierzytelnienia ani interakcji użytkownika, a zasięg ataku wykracza poza podatny komponent (S:C), co uzasadnia maksymalny wynik CVSS 10.0.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:HScilico I\, Librarian
APPScilico≤ 4.8
Powiązane podatności
I, Librarian – nieprawidłowa kontrola dostępu do dyskusji projektowych
SSRF w I, Librarian — nieautoryzowany dostęp do zasobów wewnętrznych
SSRF w I, Librarian umożliwiający reset hasła dowolnego użytkownika
OS Command Injection w I, Librarian — pełne przejęcie serwera WWW
Cross Site Scripting vulnerability in Martin Kucej i-librarian v.5.11.0 and before allows a local attacker to ...