Penetračné testovanie a zdravotnícke systémy

Lukáš Naď, Cybersecurity Specialist – Siemens Healthineers Tím zo Siemens Healthineers sa venuje testovaniu aplikácií, ktoré denne používajú nemocnice po celom svete. V zdravotníctve totiž aj malá chyba v kóde môže mať veľký dopad – nespôsobí síce pád systému, ale môže otvoriť dvere niekomu, kto tam nemá čo hľadať.

16. 05. 2025
Zdielať článok

Ak vyvíjaš aplikácie, určite poznáš ten moment: nasadíš novú funkcionalitu, prejde testami, všetko vyzerá v poriadku… a zrazu ti v hlave preblikne otázka:

„Funguje to, ale je to bezpečné?“
Presne tu prichádza na scénu penetračné testovanie – nie ako buzzword, ale ako nástroj, ktorý ti ukáže, ako by tvoj softvér obstál pod reálnym útokom. V prostredí, kde ide o citlivé dáta a dostupnosť 24/7, je to nevyhnutný krok.Prečo je pentest v zdravotníctve iný?
Zdravotnícke aplikácie bežia v zložitom ekosystéme:

  • hybridné siete (on-prem, cloud, VPN),
  • API komunikácia s osobnými a medicínskymi údajmi,
  • dlhé životné cykly (patchovanie nie je vždy rýchle),
  • integrácia s externými systémami (poisťovne, laboratóriá, EHR…).

V takomto prostredí:

  • aj malá chyba v autorizácii môže spôsobiť únik dát,
  • zle nastavený firewall otvorí prístup k interným systémom,
  • zabudnuté heslo alebo API kľúč v kóde sa môže stať časovanou bombou.

Na čo si dať pozor? 6 typických chýb v zdravotníckych systémoch

1. Slabá autentifikácia a prístupové kontroly

  • Defaultné heslá (napr. admin/admin123) v PACS, analyzátoroch či routeroch.
  • Zdieľané účty bez možnosti auditu.
  • Chýbajúca MFA.
  • Overenie len na úrovni frontendu, bez kontroly na serveri.

2. Autorizačné chyby (Broken Access Control)

  • Prístup k dátam iných pacientov cez manipuláciu s ID v URL (IDOR, BOLA).
  • Nesprávne definované roly.
  • Zle zvládnuté prechody medzi oddeleniami (zachovanie predošlého prístupu).

3. Zverejnené služby bez ochrany

  • Admin rozhrania prístupné z internetu.
  • Zle nakonfigurované VPN/firewally.
  • Otvorené porty s protokolmi zraniteľné na verejne známe zraniteľnosti (napr. SMBv1).

4. Slabá kryptografia

  • Neúplné HTTPS nasadenie.
  • Self-signed certifikáty v produkcii.
  • Hashovanie hesiel cez MD5 alebo SHA-1.
  • Citlivé kryptografické údaje v kóde (napr. kryptografické kľúče).

5. Zraniteľnosti vo webových aplikáciách a API

  • XSS, CSRF, SQLi, neautorizovaný prístup cez nezdokumentované endpointy.
  • CORS chyby, chýbajúce rate limitery.

6. Údaje tam, kde nemajú byť

  • Heslá a tokeny v .env, JSON alebo XML konfiguráciách.
  • Citlivé dáta v logoch.
  • Session tokeny v URL namiesto zabezpečených cookies.

Reálny príklad: pacient videl záznamy všetkých ostatných
Pri testovaní portálu na zobrazovanie laboratórnych výsledkov sme zistili, že po prihlásení bolo možné zmeniť patient_id v URL a získať prístup k výsledkom iných pacientov – vrátane ich osobných údajov a lekárskych nálezov.

Problém?
Autorizácia bola riešená len na strane klienta – server nič nekontroloval. Typická chyba Broken Object Level Authorization (BOLA), ktorá v zdravotníctve znamená vážny problém.

Bezpečnosť nie je bonus, je to základ
Útoky ako ransomware, úniky údajov alebo manipulácia s výsledkami sú reálne. Penetračné testovanie ti ukáže, čo nevieš – a čo by si mal vedieť skôr, než to urobí niekto iný.

Autor článku
Lukáš Naď

Nezmeškaj aktuálne info o CODECON
Odkaz bol skopírovaný do schránky