Birku arhīvi: Rīgas Karte

Tehniskā informācija par e-maks.lv ievainojamību

rakstījām iepriekš, sistēmā e-maks.lv, ko izstrādā Rīgas Karte SIA, tika atklāta nopietna drošības ievainojamība. Šis raksts satur tehnisko informāciju par ievainojamību.

Pirmā metode

Adresē https://e-maks.lv/etickets/transfer, laukā “veikt pārskaitījumu citam lietotājam“, ievadot savu e-pasta adresi un negatīvu valūtas daudzumu, bija iespējams papildināt savu kontu par summu, kas vienāda ar ievadītā valūtas daudzuma moduli. Piemēram, norādot vērtību “-100”, konts tika papildināts par “100” vienībām.

emaks-negparsk

Tas notika tāpēc, ka nepieciešamā summa maksātāja kontā tika momentā rezervēta. Pēc tam, kad saņēmējs apstiprināja pārskaitījumu, saņēmēja konts tika “papildināts” par negatīvo summu, bet sūtītāja konta stāvoklis atgriezās iepriekšējā stāvoklī.

Kamēr saņēmējs vēl nebija apstiprinājis maksājumu, pozitīvo atlikumu varēja pārskaitīt trešajam lietotājam, kas to apstiprinātu, rezultātā iegūstot norādīto naudas daudzumu.

Šo pašu metodi varēja izmantot, lai izmānītu naudu no citiem sistēmas lietotājiem. Iespējams, ka ne visi lietotāji saprastu negatīvas summas nozīmi un apstiprinātu šo maksājumu, tādā veidā pazaudējot naudu no sava konta.

Otrā metode

Naudas saņēmējs sadaļā https://e-maks.lv/etickets/messages varēja noskaidrot pārskaitījuma numuru, kuru nosūtot uz https://e-maks.lv/etickets/messages/numurs/tconfirm, pirmo reizi tika apstiprināts maksājums, bet katrā nākamajā reizē varēja saņemt naudas summu, kas norādīta pārskaitījumā, turklāt tā netika noņemta no sūtītāja konta. Savukārt atkārtoti atverot saiti https://e-maks.lv/etickets/messages/numurs/tcancel, nauda tika papildināta sūtītāja kontā.

emaks-pazin

Šo metodi varēja izmantot arī tad, ja naudu sūtīja sev. Tādā gadījumā atverot https://e-maks.lv/etickets/messages/numurs/tcancel, sākumā tika atgriezts rezervētais naudas daudzums, bet, atkārtojot pieprasījumu uz saiti, tika pieskaitīts pārskaitījumā norādītais naudas daudzums.

Skolēni, izmantojot e-maks.lv, varēja kļūt par miljonāriem

Uzreiz pēc sistēmas ieviešamas, atklājām nopietnu ievainojamību jaunajā e-maks.lv, ko izstrādā Rīgas Karte SIA. Šī sistēma ir pirmais solis Rīgas Satiksmes / Rīgas Kartes sabiedriskā transporta E-talonu funkcionalitātes papildināšanā, ļaujot ar to norēķināties ārpus transportlīdzekļiem. Ikviens, izmantojot e-pasta adresi, var reģistrēties šajā sistēmā.

Izmantojot atklātās ievainojamības, bija iespējams palielināt konta atlikumu, kā arī, zinot cita lietotāja e-pasta adresi, iegūt konta atlikumu no cita lietotāja. Par ievainojamību februāra sākumā informējām CERT.LV un neilgu laiku pēc tam tā tika novērsta.

Iedomāsimies šādu scenāriju, kāds līdz šim tiešām bija iespējams:

Andrim kāds pačukstējis, kā kļūt par miljonāru 5 minūšu laikā. Viņš iegāja savā elektroniskajā makā e-maks.lv, un atvēra konta papildināšanas sadaļu. Pat, ja viņa kontā bija tukšums, sistēma ļāva Andrim nosūtīt “mīnus 23 000 000” naudiņas Kārlim; šīs darbības rezultātā Andra konta atlikums tika papildināts par “23 000 000” naudiņām. Pirms sistēmas administrators to spēja pamanīt, Andris iegūtos līdzekļus aizsūtīja savam draugam Pēterim, kurš šo darbību akceptēja. Andris savu kontu izdzēsa un beigu beigās abi draugi summu sadalīja līdzīgās daļās.

emaks-atlikums

Interesē tehniskā informācija par ievainojamību?