» »

V Južni Afriki obsežen napad na elektronske blagajne

V Južni Afriki obsežen napad na elektronske blagajne

vir: BBC
BBC - Po Južni Afriki se je množično razširil zlonamerni program Dexter, ki okuži elektronske blagajne s programsko opremo za procesiranje plačil s karticami (torej s funkcijo POS-terminalov), na katerih se opravljajo plačila z debetnimi in kreditnimi karticami, so sporočili iz procesnega centra Payments Association of South Africa (PASA). Dexter se je začel širiti v začetku leta, prizadel pa je vse banke, ki poslujejo v Južni Afriki, medtem ko povzročena škoda znaša več milijonov randov.

Seculert je prvo verzijo Dexterja odkril že lani decembra, medtem ko naj bi bil začel krožiti po svetu že lanskega septembra ali najpozneje oktobra. Medtem ko večina kraj številk kreditnih kartic temelji na odtujeni številki kartice v domačem računalniku s trojanskim konjem ali kopiranju magnetnega zapisa s fizično napravo na bankomatu (skimming), so se avtorji Dexterja odločili za enostavnejšo izvedbo tatvine. Napisali so specializiran kos programske opreme, ki okuži pametno blagajno. Ta nato ob vsaki transakciji strežnikom pod nadzorom pisca posreduje podatke z magnetnega zapisa na kartici (Track 1 in Track 2), ki omogočajo izdelavo fizičnega duplikata. Decembra se je Dexter širil zlasti po ZDA in Veliki Britaniji, letos pa napada zlasti Južno Afriko.

Napadalci sicer zbranih podatkov ne morejo uporabiti za spletne nakupe, ker na magnetnem zapisu ni podatka o trimestni kodi CVV2, ki je fizično zapisana na zadnji strani kartice. Vendar pa vsebuje magnetni zapis dovolj podatkov, da je mogoče izdelati fizični duplikat kartice in jo uporabiti za dvig gotovine na bankomatu ali plačilo prek POS-terminala. Lepota tega napada, če smemo to tako imenovati, je eleganca. Blagajne tečejo na različnih operacijskih sistemih; znaten delež jih poganja tudi Windows, ki je bil tarča tokratnega napada. Hkrati je to najmanj zaščitena točka bančnega sistema, saj je vdor v procesni center ali banko bistveno težji (ni pa nemogoč, kot smo tudi že pisali).

Napade v Južni Afriki je bilo nekoliko teže identificirati, saj so zlikovci uporabili predelano verzijo Dexterja, ki se izogiba detekciji. Še vedno pa ni točno znano, kako so uspeli okužiti blagajne, saj gre za precej specializiran kos strojne in programske opreme, ki ne brska po spletu in podobno. Verjetno so Dexter namestili z lažno posodobitvijo iz okuženega centra.


18 komentarjev

Uranij ::

Verjetno bi bilo dobro omeniti da imajo plačilni terminali ponavadi specializirane verzije linuxa, podpisanega z miljon ključi..

Verjetno so izkoristili ravno kaksno luknjo v linux sistemu.

ales85 ::

V članku sicer piše, da dvig z bankomata NI mogoč, ker so bili posredovani le podatki iz magnetnega traka, ne pa tudi morebitni PIN, CVV pa sploh ne. Glede na napisano je torej mogoč nakup brez PIN preko POS terminala, ko zadostuje le podpis.

@Uranij verjetno bi bilo dobro omeniti, da je bil ravno Windows tarča tokratnega napada - preberi članek. Torej tole natolcevanje proti Linux v tem primeru nima neke osnove.

Uranij ::

@Ales85

Oprosti, ampak nikjer nisem zasledil da bi bil kje omenjen windows.

Sicer sem pa članek prebral še enkrat in sedaj lahko razumem malo več. Okuženi niso bili t.i. "POS terminali" ampak dejanski POS(Point of sale) ali ECR (Electronic cash register). To so računalniki, blagajne, na katere je priklopljen tudi terminal. Te blagajne seveda tečejo na vseh operacijskih sistemih (windows, linux, macos, solaris, inšeinše...) terminal je pa povezan preko serijskega kabla, wlana ali Lana, USB-ja,... Na blagajni teče MPD(multi protocol driver), ki prebira in pošilja podatke med blagajno in POS terminalom. Verjetno je bil Dexter spisan ravno za prestrezanje tega dela kode in tako je lahko prebral Track2 iz plačilne kartice (ki mimogrede večinoma niti ni kodiran, preberemo ga pa lahko skoraj z vsakim čitalcem magnetne kode). Kar pomeni, da je tudi podatek, ki je potoval med terminalom in ECR ni bil (primerno) kodiran.

Se je kdo vprašal zakaj EMV čip ni bil prizadet?

Zgodovina sprememb…

  • spremenilo: Uranij ()

Tomaz ::

Vecino teh blagajn je narejeno v Bolgariji (Daisy, Datecs, Tremol, Eltrade...) letošnje pa v Srbiji (HCP). Nikoli ne veš kaj polni paket vsebuje :)

LightBit ::

Uranij je izjavil:

Oprosti, ampak nikjer nisem zasledil da bi bil kje omenjen windows.

"Blagajne tečejo na različnih operacijskih sistemih; znaten delež jih poganja tudi Windows, ki je bil tarča tokratnega napada."

lukaz ::

ales85 je izjavil:

V članku sicer piše, da dvig z bankomata NI mogoč, ker so bili posredovani le podatki iz magnetnega traka, ne pa tudi morebitni PIN, CVV pa sploh ne. Glede na napisano je torej mogoč nakup brez PIN preko POS terminala, ko zadostuje le podpis.

@Uranij verjetno bi bilo dobro omeniti, da je bil ravno Windows tarča tokratnega napada - preberi članek. Torej tole natolcevanje proti Linux v tem primeru nima neke osnove.

Sory, ampak tole si malo sfaliv. Pin je zapisan na sami kartici ;)

MrStein ::

V ameriki itak ne rabiš PIN-a za nakup, še podpisa ne.
(ja tu in tam so izjeme, da ne bo kdo dlak...)
Motiti se je človeško.
Motiti se pogosto je neumno.
Vztrajati pri zmoti je... oh, pozdravljen!

poweroff ::

PIN je zapisan v plaintextu?
sudo poweroff

shadow7 ::

Lahko je na kartici tudi šifriran pin. Pri 10.000 možnih kombinacijah je precej trivialno, ali je plaintext ali šifriran.

Track three is 210 bpi, and holds 107 4-bit plus parity bit characters.

Your credit card typically uses only tracks one and two. Track three is a read/write track (which includes an encrypted PIN, country code, currency units and amount authorized), but its usage is not standardized among banks.

Vir: http://money.howstuffworks.com/personal...

poweroff ::

Ja, če se kartica ob večkratnem branju ne zaklene, je to res vseeno ali je kriptiran ali ne.
sudo poweroff

Uranij ::

Pin se lahko nahaja na kartici, lahko pa tudi ne. Poznamo pojma "offline PIN" in "online PIN". Recimo v ameriki, kjer pocasi zacenjajo uvajat PIN, je PIN vedno online. To pomeni da terminal vzpostavi povezavo z acquirjem(Visa, MC, AMEX, UNION PAY,..) in se pin preveri na serverju. Kartica PIN kode ne pozna, le caka na odgovor serverja. Offline pin je pa zapisan v samem EMV cipu(ne vem, ce in kdaj se pojavlja celo na magstripu, vendar ce, vedno na track 3). Dandanasnji terminali so podpisani s posebnimi triple DES kljuci (torej tremi kljuci) in vsa avtorizacija se opravi tam. Sama tipkovnica je tako fizicno locena od ostalega dela terminala. Vsak proizvajalec mora cez vec vrst certifikacij (level 1, level 2, level 3) preden dobi koncesijo za upravljanje z EMV standardom (Eurocard, Mastercard, Visa).

Ko kupec vstavi kartico v terminal in se mu prikaze screen za pin, se ves proces opravlja v PINPAD modulu, torej tipkovnici, software ki poganja placilno aplikacijo pa caka le na event (pin ok ali pin wrong). Glede na kartico se lahko opravi tudi online avtorizacija, vendar je to odvisno od kartice. Maestro naprimer, opravi poleg offline avtorizacije se online vsako 4 ali 5 transakcijo + v primeru da je znesek visji od neke dolocene vrednosti (recimo 40 €). AMEX tega ne naredi nikoli.

Sam software na terminalu dobi samo odgovor ali je bil pin pravilno vnesen ali ne in nato nadaljuje s postopkom placila. Vedno je bila ideja, da ECR, torej blagajne nebi smele dobiti nobenega podatka o kartici, temvec le obvestilo o tem ce je bila transakcija uspesna ali ne. V kolikor se bi pa ze kaj poslalo, mora bit pa to vedno PANHash. Tako recimo delujejo benzinske crpalke po evropi (IFSF standard), kjer blagajne in terminali komunicirajo preko XML sporocil.

Ce gremo na nazaj na temo, nekje na zacetku komentarjev sem bil ozmerjan da ne preberem novice. Res sem prebral samo izvorno na BBC-ju, na slo-techu pa ne. Za to se opravicujem. Se vedno mi pa ni jasno kaksen sistem imajo juznoafricani, da blagajne tako prosto razpolagajo s tako obcutljivimi podatki.

LP, Matija

poweroff ::

Uranij je izjavil:

Dandanasnji terminali so podpisani s posebnimi triple DES kljuci (torej tremi kljuci)

TripleDES nima nič skupnega s tremi ključi. Uporablja se samo enega. Gre za to, da se vsak blok sporočila šifrira trikrat (z "navadnim" DES-om).

In cryptography, Triple DES is the common name for the Triple Data Encryption Algorithm (TDEA or Triple DEA) block cipher, which applies the Data Encryption Standard (DES) cipher algorithm three times to each data block.


Uranij je izjavil:

software ki poganja placilno aplikacijo pa caka le na event (pin ok ali pin wrong).
...
Sam software na terminalu dobi samo odgovor ali je bil pin pravilno vnesen ali ne in nato nadaljuje s postopkom placila.

Če je to res, je zadeva zelo neumno narejena. Rabiš samo ID plačnika in softweru poslati lažen signal, da je plačilo OK. Si prepričan, da se ne uporablja kakšnega kriptografskega podpisovanja transakcij za preverjanje pravilnosti PIN-a?

Uranij je izjavil:

Se vedno mi pa ni jasno kaksen sistem imajo juznoafricani, da blagajne tako prosto razpolagajo s tako obcutljivimi podatki.

Če lahko terminal prebere podatke iz kartice, potem jih lahko tudi software, ki ta terminal okuži.
sudo poweroff

MrStein ::

Ti si optimist, včasih s je samo "fotokopija" kartice naredila in si zaupal kupu ljudi, da ne bodo kaj mutili.
Nekaj let pozneje pa vtipkaš kodo kartice v spletni obrazec in verjameš v dedka mraza... ;)
Motiti se je človeško.
Motiti se pogosto je neumno.
Vztrajati pri zmoti je... oh, pozdravljen!

Uranij ::

poweroff je izjavil:

Uranij je izjavil:

Dandanasnji terminali so podpisani s posebnimi triple DES kljuci (torej tremi kljuci)

TripleDES nima nič skupnega s tremi ključi. Uporablja se samo enega. Gre za to, da se vsak blok sporočila šifrira trikrat (z "navadnim" DES-om).

In cryptography, Triple DES is the common name for the Triple Data Encryption Algorithm (TDEA or Triple DEA) block cipher, which applies the Data Encryption Standard (DES) cipher algorithm three times to each data block.




Res, to je bil lapsus. Zelel sem napisati trikratnim kriptiranjem.

poweroff je izjavil:


Uranij je izjavil:

software ki poganja placilno aplikacijo pa caka le na event (pin ok ali pin wrong).
...
Sam software na terminalu dobi samo odgovor ali je bil pin pravilno vnesen ali ne in nato nadaljuje s postopkom placila.

Če je to res, je zadeva zelo neumno narejena. Rabiš samo ID plačnika in softweru poslati lažen signal, da je plačilo OK. Si prepričan, da se ne uporablja kakšnega kriptografskega podpisovanja transakcij za preverjanje pravilnosti PIN-a?


Uff, a si ti resno mislil da je karticno poslovanje bullet proof? Zal je pri tej vrsti poslovanja na prvem mestu hitrost. Zato imas tudi nekje med 60% in 70% placil brez kakrsnega koli preverjanja (t.i. offline transaction). Seveda velja to le za placila pod CVM(Cardholder verification method, poglej si na wiki pod EMV) online mejo, nad to mejo pa se vedno preveri tudi online.

Torej za zacetek. Vsak software, ki je napisan za terminale je skompajlan skupaj z developer kljucem. Tako se vedno ve, kdo in kdaj je naredil doloceno verzijo softwarja. Torej prvi korak bi bil, da mora nekdo ukrasti certifikat programerju. V kolikor koncna aplikacija ni podpisana s pravim kljucem, se na terminalu sploh ne pozene.

Pred vsako operacijo(placilo, dnevni obracun, dobropis,...) mora aplikacija na terminalu dobiti "security handle"(oprosti da ne poznam slovenske terminologije). S tem se potem podpisuje tudi evente med vpisovanjem PINA, poslje pa se ga tudi skupaj s podatki o transakciji do acquireja. Seveda je ta handle vsakic drugacen. V kolikor na serverju ugotovijo, da zadeva ni podpisana s pravim kljucem, je seveda transakcija zavrnjena.

Prav tako mora biti podpisan tudi vsak prikaz na monitorju (od terminala), ki od tebe zahteva vpis podatkov. Vpisovanje IP-ja, DNS streznikov, Terminal ID-ja in pa seveda tudi PIN, mora biti podpisan od proizvajalca naprave. V nasprotnem primeru ti prikaza terminal preprosto ne dovoli.

Se je pa pred leti recimo dogajalo, do je mladina, ki je enostavno dobila dostop do debetnih in kreditnih kartic, navkljub praznemu racunu (Tukaj govorim predvsem za Svico, v Sloveniji ne poznam razmer), lahko mirno kupovala z "offline" metodo tedne preden so jim uspeli blokirati kartico. Ko so jim pa kartico blokirali so preprosto menjali banko. Sicer so morali vse te "stroske" starsi vseeno poplacati, vendar je bilo vseeno odloceno, da morajo mladinske kartice vedno na online preverbo.

poweroff je izjavil:


Uranij je izjavil:

Se vedno mi pa ni jasno kaksen sistem imajo juznoafricani, da blagajne tako prosto razpolagajo s tako obcutljivimi podatki.

Če lahko terminal prebere podatke iz kartice, potem jih lahko tudi software, ki ta terminal okuži.


Terminal lahko, nebi jih smel pa posiljati naprej na blagajno(ECR). Virus se je namrec nahajal na blagajni in ne na terminalu.

MrStein ::

Uranij je izjavil:

poweroff je izjavil:

Uranij je izjavil:

Dandanasnji terminali so podpisani s posebnimi triple DES kljuci (torej tremi kljuci)

TripleDES nima nič skupnega s tremi ključi. Uporablja se samo enega. Gre za to, da se vsak blok sporočila šifrira trikrat (z "navadnim" DES-om).

In cryptography, Triple DES is the common name for the Triple Data Encryption Algorithm (TDEA or Triple DEA) block cipher, which applies the Data Encryption Standard (DES) cipher algorithm three times to each data block.




Res, to je bil lapsus. Zelel sem napisati trikratnim kriptiranjem.

Hmmm, če pa ravno to piše: applies the Data Encryption Standard (DES) cipher algorithm three times
Še en lapsus?
Motiti se je človeško.
Motiti se pogosto je neumno.
Vztrajati pri zmoti je... oh, pozdravljen!

LightBit ::

poweroff je izjavil:

Uranij je izjavil:

Dandanasnji terminali so podpisani s posebnimi triple DES kljuci (torej tremi kljuci)

TripleDES nima nič skupnega s tremi ključi. Uporablja se samo enega. Gre za to, da se vsak blok sporočila šifrira trikrat (z "navadnim" DES-om).

In cryptography, Triple DES is the common name for the Triple Data Encryption Algorithm (TDEA or Triple DEA) block cipher, which applies the Data Encryption Standard (DES) cipher algorithm three times to each data block.

Seveda ima.
Triple DES @ Wikipedia

Uranij ::

MrStein je izjavil:

Uranij je izjavil:

poweroff je izjavil:

Uranij je izjavil:

Dandanasnji terminali so podpisani s posebnimi triple DES kljuci (torej tremi kljuci)

TripleDES nima nič skupnega s tremi ključi. Uporablja se samo enega. Gre za to, da se vsak blok sporočila šifrira trikrat (z "navadnim" DES-om).

In cryptography, Triple DES is the common name for the Triple Data Encryption Algorithm (TDEA or Triple DEA) block cipher, which applies the Data Encryption Standard (DES) cipher algorithm three times to each data block.




Res, to je bil lapsus. Zelel sem napisati trikratnim kriptiranjem.

Hmmm, če pa ravno to piše: applies the Data Encryption Standard (DES) cipher algorithm three times
Še en lapsus?


Ah kaksen lapsus, kje pa :). To je preprosto moja povrsnost, ki me krasi ze od malega. Z Matthaievim postom sem pa zamedel, bil sem pa prelen da bi preveril.
Obstajajo vse tri varjante tega algoritma, torej s tremi kljuci, dvema, kjer sta K1 in K3 enaka, ter seveda ta, kjer je kljuc vedno enak. Ze dolgo je kar sem to nazadnje dejansko uporabljal. Lincate me pa lahko kolikor me hocete, ker take napake mecejo slabo luc tudi na vse ostale trdive, ki sem jih tukaj objavil.

Se vedno pa koncept, kot opisan velja, ne glede na to koliko kljucev se uporablja.

McMallar ::

Dejansko se 3-DES naredi tako, da se najprej kriptira s K1, dekriptira s K2 in potem spet kriptira s K1 (ali K3). V primeru 3x kriptiranja (tudi ce so razlicni kljuci) bi na koncu prisli do situacije kjer je vse skupaj zasifrirano z nekim kljucem K4. Zato tudi 2-DES ni nikoli prav zazivel.
Why can't a programmer tell the difference between Halloween and Christmas?
Because OCT31 = DEC25


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Bankomat more prebrati kartice

Oddelek: Loža
72215 (1562) zee
»

Kreditna kartica s čitalnikom prstnih odtisov

Oddelek: Novice / Omrežja / internet
3411063 (8507) Jackass
»

V Južni Afriki obsežen napad na elektronske blagajne

Oddelek: Novice / Varnost
1810179 (7978) McMallar
»

Vdor v Merkurjev POS sistem? (strani: 1 2 )

Oddelek: Novice / Varnost
7011038 (6426) sniffo

Več podobnih tem