Bezpečnosť, identita a prístupové práva

Ako testovať..., Bezpečnosť, identita a prístupové práva, Konkrétne oblasti, LMS (Learning Management System), Všeobecné témy

Ako testovať prihlásenie a správu používateľov (študent, učiteľ, admin)

Príklad
Predstav si e-learningový systém, kde sa študent prihlási do kurzu, učiteľ mu pridelí úlohu a admin spravuje používateľov.
Na prvý pohľad všetko funguje. Lenže:

  • študent vidí kurz, do ktorého nie je zapísaný,
  • učiteľ nevie upraviť hodnotenie,
  • admin omylom zablokuje aktívneho používateľa bez upozornenia.

Výsledok: chaos, bezpečnostné riziko a nedôvera v systém.…

Ako testovať..., Bezpečnosť, identita a prístupové práva, DRM (Digital Rights Management), Všeobecné témy

Ako testovať expiráciu obsahu (časovo obmedzený prístup)

Príklad

Používateľ si kúpi prístup k filmu na 48 hodín. Film si večer pozrie na mobile, ráno chce pokračovať na notebooku – ale systém mu zobrazí hlášku „prístup vypršal“, aj keď ešte nemal.
Naopak, iný používateľ má obsah dostupný aj po 3 dňoch, pretože expirácia sa nesprávne počítala podľa lokálneho času zariadenia.…

Ako testovať..., Bezpečnosť, identita a prístupové práva, Cestné mýto, diaľničné známky a cestná daň, Konkrétne oblasti, Všeobecné témy

Ako testovať ochranu osobných údajov v mýtnych systémoch

Príklad

Predstav si vodiča nákladného auta, ktorý používa elektronické mýto.
Systém eviduje ŠPZ vozidla, prejazdy cez mýtne brány, čas prejazdu a účet dopravcu.

Jedného dňa zákazník požiada o výpis údajov o svojich prejazdoch. Operátor mu však omylom zobrazí aj údaje o inom vozidle, ktoré patrí inej firme.…

Ako testovať..., Bezpečnosť, identita a prístupové práva, Bonusy, Všeobecné témy

Role a práva v programoch

Správne nastavené roly a prístupové práva sú základom bezpečnosti a funkčnosti každého systému. Rozhodujú o tom, kto čo môže vidieť, upravovať alebo spúšťať. Nižšie je prehľad najčastejších typov rolí, práv a ich rozdielov.

Typy rolí

Administrátor (Admin)

  • plný prístup k systému,
  • správa používateľov, rolí, nastavení a dát,
  • zodpovedá za konfiguráciu a bezpečnosť.
Ako testovať..., Bankové a platobné procesy, Bezpečnosť, identita a prístupové práva, Konkrétne oblasti, Všeobecné témy

Ako testovať zrušenie účtu a výmaz údajov (GDPR)

Príklad
Predstav si klienta, ktorý po rokoch využívania bankovej aplikácie požiada o zrušenie účtu a vymazanie všetkých svojich osobných údajov. Ak systém údaje nesprávne ponechá (napr. e-mail v marketingovej databáze alebo históriu prihlásení v logoch), vzniká riziko porušenia GDPR a vysokých pokút. Tester má preto overiť, že proces výmazu je konzistentný, auditovateľný a nezanecháva citlivé zvyšky.…

Ako testovať..., Bezpečnosť, identita a prístupové práva, Všeobecné témy

Ako testovať systém na detekciu podvodov (fraud detection)

Príklad:

Predstav si banku, ktorá zaviedla nový systém na detekciu podozrivých transakcií.
Zákazník napríklad nikdy neposielal peniaze do zahraničia a zrazu zadá prevod vysokej sumy na účet v inej krajine. Systém má takúto anomáliu zachytiť a transakciu označiť alebo dočasne zablokovať.

Ako tester však musíš overiť, či systém funguje správne – či dokáže rozlíšiť bežné správanie od skutočne podozrivého a či zbytočne neblokuje klientov.…

Ako testovať..., Bezpečnosť, identita a prístupové práva, Všeobecné témy

Ako testovať obmedzenie prístupu k citlivým údajom (napr. zostatky, výpisy, IBANy)

Príklad:

Predstav si, že si tester v banke a máš za úlohu overiť, že bežný zákazník nemá prístup k údajom iného klienta. V praxi to znamená, že ak sa prihlásim ako používateľ A, nesmiem vidieť zostatky, IBANy ani výpisy používateľa B – a naopak.

V jednej firme, kde som testovala, sa stalo, že backend posielal viac údajov, než bolo potrebné.…

Ako testovať..., Bezpečnosť, identita a prístupové práva, Všeobecné témy

Ako testovať prihlasovanie pomocou mobilného tokenu alebo biometrie

Príklad:

Predstavte si mobilnú bankovú aplikáciu, kde sa zákazník neprihlasuje heslom, ale potvrdí vstup buď odtlačkom prsta, rozpoznaním tváre, alebo jednorazovým kódom cez mobilný token. Tento spôsob je dnes bežný v bankovníctve – heslo je slabé miesto, biometria či token výrazne zvyšujú bezpečnosť.

Ako to otestovať?…

Ako testovať..., Bezpečnosť, identita a prístupové práva, Všeobecné témy

Ako testovať dvojfaktorovú autentifikáciu (2FA) (nielen v bankovníctve)

1. Overenie toku autentifikácie:

  • Je 2FA aktivovaná po zadaní správnych prihlasovacích údajov?
  • Dostane používateľ výzvu na zadanie kódu (napr. SMS, e-mail, mobilná appka)?

2. Správnosť a jedinečnosť kódu:

  • Kód je jedinečný pre každé prihlásenie?
  • Platí len obmedzený čas (napr. 5 minút)?
  • Čo sa stane po jeho uplynutí?
Ako testovať..., Bezpečnosť, identita a prístupové práva, Všeobecné témy

Ako testovať prístupové oprávnenia cez backend alebo API

Príklad:

Predstavte si interný systém na správu podujatí  – organizátori môžu pridávať eventy, upravovať detaily alebo pozývať účastníkov. Dobrovoľníci majú prístup len na čítanie. A bežní používatelia môžu vidieť len verejné podujatia. Všetko beží cez REST API.

Čo všetko treba otestovať:

  1. Autorizácia vs. autentifikácia
    • 401 Unauthorized: nedodaný alebo neplatný token → používateľ nie je prihlásený
    • 403 Forbidden: token je platný, ale používateľ nemá práva na danú akciu
  1. Rôzne úrovne oprávnení
    • prihlásený organizátor môže POST /events, PATCH /events/:id
    • dobrovoľník môže len GET /events
    • anonymný používateľ môže len GET /events?public=true
Ako testovať..., Bezpečnosť, identita a prístupové práva, Všeobecné témy

Ako testovať „nezmazateľný“ záznam (soft delete)

V niektorých systémoch býva soft delete implementovaný veľmi jednoducho – záznam sa fyzicky neodstráni, len sa v databáze nastaví určitá hodnota (napr. is_deleted = true alebo stav = ‚zmazané‘).
Vďaka tomu sa dá záznam opäť zobraziť úpravou tejto hodnoty, ak je na to oprávnenie. V logoch alebo histórii záznamu býva zaznamenané, kto a kedy záznam zmazal.…

Ako testovať..., Bezpečnosť, identita a prístupové práva, Všeobecné témy

Ako testovať systém, kde sa menia práva používateľa?

Zmeny roly môžu výrazne ovplyvniť, čo používateľ vidí, čo môže robiť a čo má zakázané. A práve to je výzva pre testerov.

Príklad:
Máme interný systém, kde môže byť používateľ zamestnancom, manažérom alebo adminom. Každá rola má iné oprávnenia – napríklad zamestnanec môže vidieť len svoje dáta, manažér údaje svojho tímu a admin všetko vrátane nastavení systému.…

Ako testovať..., Bezpečnosť, identita a prístupové práva, Všeobecné témy

Ako testovať SQL injection a XSS útoky

SQL-injekcia a XSS (Cross-Site Scripting) sú dva najčastejšie útoky, ktoré zneužívajú špeciálne znaky v používateľskom vstupe:
 
SQL-injekcia
 
Čo to je?
Útok, pri ktorom útočník vloží do vstupu časť SQL príkazu tak, aby zmenil vykonávanú databázovú operáciu.
 
Kľúčové znaky:
Single quote ‚ – používa sa na uzavretie reťazcov v SQL.…

Návrat hore