Ako sme „hackli“ eKasu: podvádzať na daniach nikdy nebolo jednoduchšie -

Kolko trvala tlac dokladu pred eKasa? Za mna je 3-4 sekundy vela na to, ze sa ma zacat tlacit.
Kludne sa mohlo tlacit a paralelne komunikovat s FS (ak je online) a CHDU, na konci by sa len prilepil QR kod.
Ale to by FS musela tomu ulozisku doverovat.

Pri fiškáloch to bolo tiež rôzne, pretože tlačiarne museli byť pripojené cez sériový COM port, alebo jeho emulátor. Kvôli dĺžke kábla mali zvyčajne nastavenú rýchlosť prenosu 19200. Nemyslím si, že 3 sekundy je neprimerane veľa. Je to určite menej ako čas za ktorý dokáže pokladníčka vydať hotovosť a pri platbe kartou ako stihneš dať kartu alebo mobil do vrecka. A začiatok tlače je spravidla do 1,5 - 2 sekúnd od začiatku registrácie na FS. Ale samozrejme je to vec názoru.
Inak zhruba 1 sekundu pridáva to, ak tlačiareň nevie natívne tlačiť QR kód a ten sa musí posielať ak obrázok.

Ok nepoznam ako to presne funguje ale logicke by bolo aby pri prvom prihlaseni sa do online rezimu pokladnice sa udaje zreplikovali. Cize potom je kriticka doba iba ten cas kym je pokladnica ofline, ale po prihlaseni sa uz by malo byt mozne zistit zer tam niekto nieco spekuloval.

Ta samokontrola obcanmi je dobra vec, ale lepsie by bolo aby to vedel system zistit po prihlaseni sa pokladne sam a notifikaciu o pokuse o spekulaciu zaslal nato urcenemu pracovnikovyi aby zistil ci ide o technicky problem alebo nieciu vychytralost…

Replikacia sa deje, tam nie je problem. Data z realneho CHDU sa vyslu na FS ked sa dostane do online rezimu.
To co napadla Nethemba je prave to, ze realne CHDU v offline rezime sa da obist podhodenim emulovaneho CHDU.
Teda pri opatovnom pripojeni do online rezimu v realnom CHDU nic nove nie je (alebo tam nie je vsetko). A FS nema (podla toho co je popisane) ziadnu moznost zistit, ci bolo alebo nebolo realne CHDU vo offline rezime aktivne alebo nie.
Riesenie co navrhuju je sifrovana komunikacia, teda nemoznost nahradit realne CHDU emulovanym bez zasahu (s velkou pravdepodobnostou vystopovatelneho) do pokladne.

Praveze daniari tvrdia toto:

…že podnikateľ vytlačí pre zákazníka doklad, ktorý systém nikdy neodošle na portál finančnej správy, finančná správa má nástroje, ktorými preverí, prečo sa tak stalo.

Mne sa zda divne ze by nemali osetrene ze po vypadku by neexistoval nastroj na zistenie ci sa nevydavali doklady nelegalnym sposobom. (neviem co posiela pokladna a ako sa to da porovnat s tym co je v ulozisku), len by toto bolo prve co by ma pri navrhu takehoto systemu napadlo.
To ze sa tam da pripojit v offline rezime s emulatorom je samozrejme bota, ale skuste sa pytat na to ako robia toto:
finančná správa má nástroje, ktorými preverí, prečo sa tak stalo
Ak toto vedia efektivne urobit, neni tento prblem takym velkym ako ho mozno niekto chce vidiet.

To tvrdenie FS zase Nethemba vyvracia v dnesnom blogu (@jsuchal dal link vyssie) .

Tu su tie CHDU ukazane https://chdu.tech/chdu-box/
Kedze sa daju vyberat, tak je mozne, ze dokazu vydetekovat ze bola vybrana a zasunuta, ale ci dokazu detekovat, ze bolo CHDU vymenene za emulator a potom naspat, to neviem.

Takze teraz to bude na tom ukazat jedna alebo druha strana, kto ma pravdu.

citam ale nie celkom chapem ako ma prebehnut podvod.
Dobre rozumiem ze je mozne cielene odpojit chdu a vydavat blocky aj bez neho a neposielat ich financom.
Ale ak vydavam blocky ktore vyzeraju ako prave, tak kazdy falosny blocek ma moju adresu a dokazuje moj podvod. A navyse zakaznik je zaroven svedok. To rovnako mozem tlacit falosne blocky rovno, aky je v tom rozdiel ?
Ak som dohodnuty zo zakaznikom, tak ziadne blocky tlacit nebudem.

A otazka, ak chapem tak ide o softwarovu emulaciu, znamena to ze musim tlacit na inu tlaciaren ? Alebo dokazu odstavit CHDU a pouzivat tu istu tlaciaren?

Ostava posledna moznost, dohodnem sa zo zakaznikom, vytlacim falosny blocek z konkurencie s cielom ho udat. Ale v takom pripade jeho CHDU ukaze ze ho netlacil.

Nechapem aku novu hrozbu odhalili ? Podla mna ide o moznost trochu sofistikovanejsiu ako je tlac vlastnych blockov ale ziadnu zasadne novu moznost podvodov

1 Like

Ahoj,

podla odporucani na konci specky

Pokiaľ PPEKK a CHDÚ tvoria jeden neoddeliteľný celok, tak nie je nutné
používať šifrovanie medzi PPEKK a CHDÚ,
avšak vyžaduje sa, aby PPEKK a CHDÚ boli zaliate hmotou resp. inak
vhodne chránené (viď písmeno B bod 4).
V prípade, že PPEKK a CHDÚ netvoria jeden celok, tak sa postupuje v
zmysle tohto dokumentu (šifrovanie je povinné).

Takze si myslim ze pri spravnej implementacii by nemalo byt mozne urobit
pripojenie emulatora.

r.

2 Likes

Je teda “unikátny identifikátor kupujúceho” úplne nepovinný vo všetkých prípadoch ? (nie je mi to z toho zákona https://www.slov-lex.sk/pravne-predpisy/SK/ZZ/2008/289/ úplne jasné) Táto informácia je asi najdesivejšia vec z celej eKasy. Nejako prežijem, že napr. Tesco má môj identifikátor a na základe toho mi ponúka zľavy alebo mi dáva reklamu, lebo jeho záujem je predať mi produkty. Ale aby štát vedel čo si kde kedy kupujem a koreloval to s ďalšími údajmi, ktoré má v iných systémoch je trošku desivé. Sa čudujem, že nebol väčší odpor voči tomu.
PS Sorry za trochu OT

2 Likes

Áno je to tak, momentálne je údaj nepovinný. Ak som správne pochopil, štát to prezentoval ako výhodu pre zákazníka, kde by si mohol cez nejakú aplikáciu overiť svoje nákupy a napr. to využiť aj na reklamovanie. Ale podľa mňa to boli len také fantasmagórie. Z našej aplikácie tento údaj posielame prázdny, napriek tomu, že zákazník použil v nákupe svoju vernostnú kartu.

1 Like

Ja sa k tebe pripajam. Tiez mi neni jasne kde su tie uniky na dani.
Ved blocek ma dve ulohy od jakziva a to ze nuti predavajuceho pouzit pokladnu a kupujucemu sluzi ako doklad pre uplatnenie si nakladov. Tu ale v kazdom pripade aj v pripade akoze toho “podvodu” sa certifikovana pokladna pouzije. Cize pokial pokladna na FS neposiela udaje o pocasi, tak tam posiela udaje o cene tovare, identifikaciu predajcu, cas transakcie a podobne udaje. Teda stat ma vsetky udaje ktore potrebuje na zdanenie predavajuceho. Co sa tyka kupujuceho, ktory si ulozi falosny blocek pre uplatnenie opravnenych vynalozenych nakladov, tak ak mu stat takyto blocek neuzna, tak na tom stat iba zarobi lebo kupujuci si nebude moct uplatnit tento nakup. Cize je to pre stat len moznost si “zarobit”. Naviac aj na falosnom blocku je identifikacia predavajuceho, je tam tovar a je tam suma cize vsetko co je potrebne na dolozenie ze sa presne taka obchodna transakcia v danom case za ucasti danej certifikovanej pokladne udiala. Ak si nikto dasli neuplatni naklady s rovnakou obchodnou transakciou nie je dovod neuznat takyto falosny doklad. Kedze predaj prebehol na rovnakom mieste v rovnakom case v rovnakej sume. A tieto udaje z falosneho blocku si mozu financi sparovat s udajmi ktore uz maju z pokladne - preto by mohli kludne aj takto dolozeny vydaj uznat.
Naviac po prihlasenie tlaciarne do online financi ak by to potrebovali dokazali by zistit ze ulozisko neobsahuje udaje ktore jemu priradena pokladna spracovala v ofline, ze sa tam nieco dialo - teda dovod navstivit predajcu. Ale to ze si niekto da falosny blocek do nakladov je riziko horsie lebo 10 rokov potom hrozi ze kupujucemu daniari pri kontrole zistia ze ma ulozeny falosny blocek a to je zase dovod aby urobili kontrolu u podvadzajuce predajcu,.
Otazka teda je preco by toto niekto vobec robil.

Ma tlaciaren informacie o tom, ake blocky vytlacila? Ma PPEKK pamat na to, ake identifikatory pouzila? Z toho popisu od Nethemby je to prave tak, ze PPEKK generuje v offline rezime blocky podla udajov v CHDU. A Ked je to CHDU nahradene emulatorom tak z fiktivneho CHDU (ktore asi ani nie je WORM).
Pred prechodom do online modu sa zase vrati naspat original CHDU na ktorom chybaju nejake tranzakcie a PPEKK pride do online rezimu a zasle na FS tie co neodoslala, teda mozno nic.

Tie diery su:

  • vydanie blocku na certifikovanom zariadeni, ktory sa neodosle aj na FS. A zda sa ze bez stopy po tom blocku v pokladni.
  • vydanie blocku s inymi udajmi nez nastavila v kase servisna organizacia. A zda sa, ze bez toho, aby v kase bola o tom nejaka stopa.

Ocakavam, ze Nethemba bude moct predviest Financnej sprave cely postup a FS bude potom moct ukazat, kde v danej pokladni alebo v systeme FS nasli stopy po takejto manipulacii s danou pokladnou.

@Sveto vsetko co pises je v principe pravda avsak, aj ked cele toto slabe miesto vyriesis, stale ti ostava v end-to-end ovela jednoduchsi sposob ako toto cele obabres - proste vyrobis fiktivny blocek az na tlaciarni. To kriticke miesto je tlac.

PS. Ak by sa toto dalo nejako vyriesit, tak nepotrebujeme napriklad inde v egove chodit po zarucenu konverziu na postu/notarovi, ze?

1 Like

@jsuchal eID zranitelnost bola tiez bez realneho use case a predsa sa to muselo opravit. Tez sa na podvody v katastri pouzivaju omnoho jednoduchsie ‘brute force’ metody.

A inak blocek realne nemusi ist na tlaciaren, moze ist aj na mail.

Toto neni dobry priklad. diera v eID (ak myslis tie ratania private klucov z public klucov) bolo nieco, co malo vazne nove dopady a bola to uplne nova forma utoku. Toto nic take nie je, proste je tam diera (vyrabanie fiktivnych blockov) a tento hack zasadne nic nove nepriniesol. Je to v tomto derave tak isto ako predtym. Navyse ani fix (sifrovanie kanalu) to nevyriesi.

predpokladam ze ostala osobna kontrola, ak niekto podvadza dlhsie tak zanechava vzory v chovani, ktore sa daju najst a potom osobne skontrolovat. Podvadzat ak sa online posielaju blocky je dost narocne,
( napr. ak vypadava online spojenie kazdy den na 10 minut, tak kazdeho napadne ze to nebude nahoda, ale analyza predaja moze byt este ucinnejsia, ).

Skusme to otocit. Moznost zamenit CHDU za emulovane CHDU (ak dobre chape, je to cisto SW riesenie) umozni utocnikovi ziskat kontrolu nad pokladnou a teda napriklad zamedzit zapisaniu uz vystavenych dokladov do realneho CHDU bez vedomia majitela pokladne. To je tiez vazny problem, ked moze vystavit inu osobu trestnemu stihaniu.
A taktiez taky emulator bude moct zbierat udaje z kasy, napriklad aj tie personalizovane udaje vernostnych kariet. A tieto odosielat aj mimo FS.

Ohladom sifrovanej komunikacie, ja si myslim ze ta tam ma byt prave ako nahrada zaliateho paru PPEKK a CHDU. Teda aby bol certifikovany taky system, ktory ma softverovo zviazany tento par componentov. Ta komunikacia by zabezpecila, ze si budu doverovat, lebo sa budu parovat len navzajom. Na vymenu ktorehokolvek z nich bude treba servisny zasah, kde sa sparuje nova dvojica.
Inak to CHDU potom realne nema vyznam a kludne mozu tento komponent vyhodit a prerobit pokladnu na cisto online bez offline rezimu a tak to certifikovat. Ulozisko bude tym padom financna sprava.

Cim sa dostavame asi k prvemu prispevku @MaLoMe :smiley:

2 Likes

https://wbr.indprop.gov.sk/WebRegistre/UzitkovyVzor/Detail/33-2019

Nakoľko je OK si patentovať niečo takého? Pripomína mi to monopol na spztky.