Kritická zraniteľnosť v aplikácii Moje eZdravie - únik databázy pacientov

Zaujimave, pocas toho co som s nimi robil nieco s eKarantenou tak to bolo uplne ine, zmeny na PROD kazdy den, ziadny oversight som nevidel a sam som musel silno, velmi silno pushovat aby sa spravili veci bezpecnejsie a nie jednoduchsie.

Teraz sa zrejme drzali novej mantry, lacno, rychlo, vlastnymi silami … aj jeden extrem aj druhy extrem je nanic

Tú paranoidnú bezpečnosť má (mal?) pôvodný eHealth. Iné systémy (t.j. čo nie je zásah do eHealth) si to robia zjavne po svojom / podľa iných pravidiel. Čiže paradoxne práve brutálne pravidlá bezpečnosti eHealth mohli prispieť k diere inde - lebo sa nedali dodržiavať plošne. Vždy keď sú viaceré režimy, riziko že niečo sa zabudne rastie.

1 Like

Ani jedno ani druhe nie je riesenie. Ukazuje sa ze nadsenie casto nestaci…
Ale musime to brat ako to je. Stalo sa a uz sa neodstane.
Dolezite je aby sme sa aj z tohoto zavazneho incidentu poucili. To je podstatne. Mozno nam len “vesmir” chcel ukazat ze tade cesta nevedie a co sa moze stat ked sa od jedneho mantinelu presunieme k druhemu a usetril nas mozno od daleko vacsieho prusvihu ktory by sa mohol stat ak by sme takto pokracovali dalej.

To ze sa uplne partizansky vytvori nova aplikacia s udajmi pacientov bez toho aby sa dopredu vedelo ako budu data zabezpecene nie je tym ze sa nedaju dodrzat brutalne pravidla ale ze sa ziadne pravidla nepouzili. A to je iny problem, na NCZI zjavne nebol vytvoreny team na tvorbu SW a slo sa ako na skolskom projekte. Co inak ako problemom nemohlo dopadnut a ked sa riaditel vyjadruje ze im veril tak to je smutne. A nezasluzia si lyncovanie co ich caka, toto je manazerske zlyhanie.

2 Likes

S tým že za tento incident nesie podstatný diel zodpovednosti vedenie organizácie súhlasím. A to aj kvôli predošlému problému s týmito údajmi, najneskôr potom malo prebehnúť zásadné preverenie a doriešenie bezpečnosti.

1 Like

Otazka je, co hladal nezdokumentovany endpoint na produkcii.

Ojoj, v Mojom eZdravi sa najdu take bomby supy. Odporucam pozriet trochu tie client-side zdrojaky, napriklad JS, moze sa zdat ze tam predsa nebude nic zaujimave, ale odhali to trosku ako ta appka funguje.

Napriklad:

$scope.getNotificationsCount = function () {
    $http({
        method: 'POST',
        url: API_V1_URL + 'sp_universal_query',
        data: {
            nUser_id: localStorageService.get('user_id'),
            vColumns: 'count(*) as cnt, SUM(CASE WHEN read_at IS NULL THEN 1 ELSE 0 END) as unread',
            vTableName: 'user_reminders',
            vWhereClause: 'user_id=' + localStorageService.get('user_id') + ' AND is_deleted = 0 AND (valid_from <= "' + moment().format('YYYY-MM-DD HH:mm:ss') + '" OR valid_from IS NULL) AND (valid_thru >= "' + moment().format('YYYY-MM-DD HH:mm:ss') + '" OR valid_thru IS NULL)'
        }
    }).success(function (response) {
        $scope.totalNotifications = response[0][0].cnt;
        $scope.unreadNotifications = response[0][0].unread;
    });
};

Hmm, čo je to tá universal query a prečo tam idú SQL queries z klienta? Ako sa to asi validuje? :thinking: :joy:

3 Likes

S týmto plne súhlasím, ak chce niekto vytvoriť štátnu apku pracujúcu so zdravotnými údajmi a to je jedno či štátnymi programátormi alebo drahými komerčnými tak musí predsa seriózne riešiť bezpečnosť.
Ja osobne by som kľudne tých programátorov zamestnal vo svojom tíme, zaplatil im kvalitné školenie na bezpečnosť, nastavil education roadmapu a môžu makať. O to menej rád by som v tíme privítal pár sociopatov, ktorí sa pohybujú aj na týchto fórach.

2 Likes

Toto asi nebol uplne najstastnejsi tah.

4 Likes

Pekny koment je pod tym clankom, keby to nebolo do placu tak sa aj zasmejeme “Pozreli do databázy a tam tie dáta našli. Tak neveria, že im ich niekto zobral…”

3 Likes

analyza problému - systémová chyba:

  • klasický politický cyklus: po nástupe novej garnitury na MZ vymenili všetkych šefov na NCZI, lebo mali ambiciu všetko si riadiť na ministerstve.
  • následne boli odstavení aj ľudia z výkonu na NCZI
  • bol politický tlak na to, aby sa všetko robilo INHOUSE a rýchlo

VYSLEDOK: neotestovana aplikácia a samozrejme prúser

3 Likes

Ak by sme nezmenili volebnú legislatívu, tak v najbližších voľbách by zlodeji dát mohli podať žiadosť o zaslanie volebných lístkov za 390 tis.týchto občanov (resp. za tých, kt. majú volebné právo) a voliť za nich poštou. Zásadne by mohli ovplyvniť výsledok volieb.

Srdcom doma o.z. len 16.9.2020 zverejnilo zoznam návrhov, ktoré zvýšia bezpečnosť volieb - napríklad aj tým, že sa zruší možnosť požiadať o hlasovacie lístky bez autentifikácie:

Po novom by sa o voľbu poštou, či voličský preukaz mohlo žiadať online cez aplikáciu s použitím eID (občianskeho preukazu s čipom a bezpečnostným kódom - ten vydáva SR občanom zdarma na pracoviskách PZ aj na veľvyslanectvách SR v zahraničí).

#lepsievolby #volbapostou #bezpecnevolby #eidtoisti

presne tak … mimo akychkolvek zauživaných protokolov … a žial umoznili to ASI práve vymenení ľudia, ktorí sa tam dostali neznalý súvisslostí zvonku …

to znie ako zadne dvierka, ale namalovane na kriklavocerveno, aby ich kazdy videl :slight_smile:

Za mna zatial asi najlepsie zhrnutie.

Z dobre informovaneho zdroja som sa dozvedel, ze toto bola akcia, za ktorou stali ludia z byvaleho vedenia. T.j. taki, ktori by prave mali vediet co a ako, ale…

1 Like

Kto aplikáciu Moje eZdravie vytvoril?

Dnes už bývalý šéf Národného centra zdravotníckych informácií Peter Blaškovitš pre Živé.sk potvrdil, že za jeho pôsobenia na aplikácii robili interní zamestnanci inštitúcie , keďže ju potrebovali vytvoriť čo najskôr a verejné obstarávanie by stálo istý čas.

1 Like

No ano - vraj to bola jeho iniciativa. To, co tvrdi v tom rozhovore uz je len snaha vyvliect sa zo zodpovednosti (IMHO).

Teraz je na mieste otazka, ake kroky poskytne stat na zmiernenie dosledkov tohto bezpecnostneho incidentu, vo vztahu k poskodenym obcanom.