Man in the middle attack
Jedním z možných útoků na ABRA Flexi je Man In The Middle Attack, kdy se útočník vydává za servery ABRA Flexi a uživatel mu poskytne autorizační údaje, kterými se pak útočník může autorizovat proti skutečným serverům a tak analyzovat průběh komunikace.
Standardně si ABRA Flexi vygeneruje tzv. Self-Signed Certificate. SSL certifikát lze vyměnit.
Abychom tomu zabránili, má ABRA Flexi několik funkcí, které tento problém eliminují:
Při spuštění si ABRA Flexi stáhne certifikát a při práci se serverem jej pak ověřuje. Proto není možné vyměnit certifikát za běhu.
DANE – uložení certifikátu do DNS
$ ./swede --insecure create --port 5434 --certificate certifikat.pem --selector 1 --output rfc demo.flexibee.eu _5434._tcp.demo.flexibee.eu. IN TLSA 1 0 1 85b928d1cab396d8e632d15d57b3a97ebbc2769ab74a292040dc4fc340153973
Místo nástroje SWEDE je také možné získat konfiguraci z běžícího serveru ABRA Flexi na adrese /certificate/tlsa
.
Do DNS pak přidáme tento záznam:
_5434._tcp.demo.flexibee.eu. IN TXT TLSA 1 0 1 85b928d1cab396d8e632d15d57b3a97ebbc2769ab74a292040dc4fc340153973
Tj. jako hodnota je uloženo celé „TLSA 1 0 1 85b928d1cab396d8e632d15d57b3a97ebbc2769ab74a292040dc4fc340153973“
Hledání probíhá v tomto pořáadí:
5434._tcp.demo.flexibee.eu. _tcp.demo.flexibee.eu. 5434._tcp.flexibee.eu. _tcp.flexibee.eu.
Pozor: pokud nepoužíváte současně i DNSSec, není zaručena bezpečnost odpovědi DNS serveru.
Pozor: ABRA Flexi client také v tuto chvíli nepodporuje kompletní DANE, ale pouze tyto parametry: –selector 1, –mtype 1, –usage 0
CSRF
ABRA Flexi má integrovanou ochranu proti Cross Site Request Forgery a v tomto směru není nutné nic nastavovat.
SQL Injection a XSS
Při návrhu jsme věnovali mnoho úsilí, abychom zabránili SQL Injection Cross Site Scripting (XSS). Proto k těmto typům chyb nedochází.
Ukládání hesel
Dříve ABRA Flexi používalo pro ukládání hesel šifru MD5. Nyní je použita SHA256 a je použito saltování (salt). Stará hesla jsou překódována až při změně.