Saugumas

Paštomatų saugumo modelis

Tikslas: net visiškai perėmus debesiją, t. y. serverį, duomenų bazę ir administratoriaus paskyrą, niekas negali atidaryti užimtų durelių. Kiekvieną atidarymą paštomatas tikrina pats, be interneto.

Kas ir kuo gali atidaryti dureles

Paštomatas pasitiki tik raktais, esančiais jo pasitikėjimo faile. Jie nukopijuojami diegimo metu ir niekada nesiunčiami per debesiją. Operatoriaus šakninis raktas laikomas atjungtas nuo tinklo.

01

Gavėjas

6 skaitmenų kodas arba QR kodas telefone. Paštomatas lygina HMAC maišos reikšmes. Kodas nustatomas įdedant siuntą ir vėliau nebekeičiamas.

02

Siuntėjas

8 skaitmenų kodas. Juo atidaromos tik laisvos durelės.

03

Kurjerio pakrovimas

Debesijos raktu pasirašytas QR žetonas. Pakraunant atidaromos tik tuščios durelės, o jau įdėtos siuntos pakeisti negalima.

04

Kurjerio paėmimas

QR žetonas, pasirašytas vežėjo įrenginio raktu, kurį sertifikuoja operatoriaus šakninis raktas. Debesija jo suklastoti negali.

05

Technikas

Aptarnavimo žetonas, pasirašytas sertifikuoto techniko įrenginio raktu.

06

Pagalba, nuotolinis atidarymas

Operatoriaus passkey ir paštomato ekrane rodomas kodas. Be kodo reikia dviejų skirtingų žmonių su dviem skirtingais raktais. Ne daugiau kaip 3 kartus per valandą.

RS485

Spynų magistralės sargas

Dauguma spynų plokščių komandų neautentifikuoja. Kas pasiekia RS485 laidus, gali atidaryti dureles pigiu adapteriu. Paštomatas yra vienintelis teisėtas valdantysis linijos įrenginys, todėl viską, ko jis neužklausė, laiko įtartinu.

  • Atidarytas aptarnavimo skydasSkydo jungiklis rodo, kad skydas atidarytas, o per pastarąsias 30 minučių nebuvo panaudotas aptarnavimo žetonas.
  • Svetimas srautasBaitai linijoje, kai paštomatas nesiuntė užklausos, arba atsakymai į užklausas, kurių jis nesiuntė.
  • Triukšmas3 ar daugiau sugadintų atsakymų per minutę.
  • Įterptas retransliavimo įrenginys5 atsakymai iš eilės užtrunka ilgiau nei įprastas laikas, padaugintas iš 3, plius 25 ms.
  • Išlaužtos durelėsDurelių jutiklis rodo, kad durelės atviros, nors per pastarąją minutę paštomatas jų neatidarė.
  • Nukirstas kabelisVisos anksčiau atsakiusios plokštės vienu metu nutyla. Įvykyje nurodomos durelės, už kurių yra siuntų.

Kas vyksta toliau

Siunta už išlaužtų durelių sulaikoma: jos kodas nustoja veikti, o durelės lieka užimtos, kol siuntą paima kurjeris. Užfiksavęs svetimą srautą ar išlaužtas dureles, paštomatas išjungia ritės, kurias plokštės laiko įjungtas. Debesija sukuria įsibrovimo arba anomalijos įspėjimą ir išsiunčia webhook. Visa tai veikia su esamomis plokštėmis.

Ko sargas padaryti negali

Sargas aptinka ataką, bet jos nesustabdo. Kas vyksta už nukirsto kabelio, paštomatas nemato, kol ryšys neatkuriamas. Be skydo jungiklio skydo atidarymas lieka nepastebėtas. Pačią ataką užblokuoti gali tik plokštė, tikrinanti komandų parašus.

Kiekvienos durelės turi jutiklį. Paštomatas kas 0,5 s jį tikrina pagal savo komandas.

Maišos grandine susietas įrodymų žurnalas

Kiekvienas paštomato įvykis su ankstesniu susiejamas SHA-256 maiša. Gavusi įvykius, debesija tikrina grandinę ir, jei ji nutrūksta, sukelia įspėjimą. Įrašo nepastebimai pakeisti ar pašalinti neįmanoma, todėl žurnalas tinka kaip įrodymas ginčuose.

Pasirašyti atnaujinimai

Atnaujinimą gali pasirašyti tik leidimo raktas iš paštomato pasitikėjimo failo, niekada ne debesijos raktas. Paštomatas tikrina parašą, SHA-256 ir dydį, atmeta senesnes versijas, o jei nauja versija nepasileidžia, atkuria ankstesnę.

Serverio pusės apsauga

  • Kiekvienas paštomatas jungiasi per mTLS su savo sertifikatu, galiojančiu tik tam paštomatui
  • Vienkartinis registracijos kodas, galiojantis 24 valandas ir saugomas tik kaip maiša
  • Administratorių slaptažodžiai su argon2id, rolės, CSRF ir Origin patikros, CSP
  • Po 5 nesėkmingų prisijungimų paskyra užrakinama 15 minučių pagal IP ir pagal paskyros bei IP derinį
  • API raktai saugomi kaip maišos reikšmės, su teisių sritimis ir 10 užklausų per sekundę riba
  • Webhooks tik per HTTPS, privatūs adresai blokuojami jungiantis, jokių peradresavimų
  • Gavėjų kodai per nuorodas niekada nepasiekia serverio: jie lieka URL fragmente
  • Kortelių duomenys niekada nepasiekia mūsų sistemos: mokama mokėjimų paslaugų teikėjo puslapyje

Likusios rizikos, be užuolankų

01

Gavėjų kodai debesyje

Kodus generuoja debesis ir jis siunčia SMS, todėl įsilaužėlis į debesį galėtų juos sužinoti. Kiekvienas kodas veikia tik vietoje prie paštomato, po vieną, su kameros ir žurnalo įrašais, o klaviatūra užsirakina po 5 klaidų. Masinio nuotolinio atidarymo nėra.

02

Fizinės atakos

Programinė įranga negali sutrukdyti laužti spintos. Magistralės sargas tai aptinka, o susijusios siuntos sulaikomos.

03

Kitų gamintojų paštomatai

Iš kito gamintojo debesies įtraukti paštomatai prieinami tik skaitymui ir pažymėti, kad šios garantijos jiems netaikomos.

04

Raktų saugojimas

Gamybiniams diegimams planuojame šakninius raktus laikyti HSM arba lustinėje kortelėje, o paštomato TLS raktą TPM modulyje.

Nepriklausomas auditas

2026 m. lapkritį atliktas vidinis saugumo auditas apėmė atšauktas siuntas, kodų saugojimą, dviejų asmenų taisyklę, programinės įrangos versijos grąžinimo (downgrade) atakas, pakartotinį žetonų panaudojimą po perkrovimo, klientų aplinkų izoliaciją, piktnaudžiavimą prisijungimu ir webhook SSRF. Visi nustatyti trūkumai ištaisyti ir dokumentuoti.

Išbandykite atakas patys

Demonstraciniame paštomate yra vagies įrankiai: svetima atidarymo komanda, triukšmas linijoje, retransliavimo įrenginys, nukirptas kabelis ir aptarnavimo skydelis. Stebėkite, ką praneša sargas.