Man in the middle attack
Jedným z možných útokov na ABRA Flexi je Man In The Middle Attack, pri ktorom sa útočník vydáva za servery ABRA Flexi a používateľ mu poskytne autorizačné údaje, ktorými sa potom útočník môže autorizovať voči skutočným serverom a tak analyzovať priebeh komunikácie.
Štandardne si ABRA Flexi vygeneruje tzv. Self-Signed Certificate. SSL certifikát je možné vymeniť.
Aby sme tomu zabránili, má ABRA Flexi niekoľko funkcií, ktoré tento problém eliminujú:
Pri spustení si ABRA Flexi stiahne certifikát a pri práci so serverom ho následne overuje. Preto nie je možné vymeniť certifikát za behu.
DANE – uloženie 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
Namiesto nástroja SWEDE je tiež možné získať konfiguráciu z bežiaceho servera ABRA Flexi na adrese /certificate/tlsa.
Do DNS potom pridáme tento záznam:
_5434._tcp.demo.flexibee.eu. IN TXT TLSA 1 0 1 85b928d1cab396d8e632d15d57b3a97ebbc2769ab74a292040dc4fc340153973
Tj. ako hodnota je uložený celý reťazec „TLSA 1 0 1 85b928d1cab396d8e632d15d57b3a97ebbc2769ab74a292040dc4fc340153973"
Vyhľadávanie prebieha v tomto poradí:
5434._tcp.demo.flexibee.eu. _tcp.demo.flexibee.eu. 5434._tcp.flexibee.eu. _tcp.flexibee.eu.
Pozor: ak súčasne nepoužívate aj DNSSec, nie je zaručená bezpečnosť odpovede DNS servera.
Pozor: ABRA Flexi client v súčasnosti tiež nepodporuje kompletnú DANE, ale iba tieto parametre: –selector 1, –mtype 1, –usage 0
CSRF
ABRA Flexi má integrovanú ochranu proti Cross Site Request Forgery a v tomto smere nie je potrebné nič nastavovať.
SQL Injection a XSS
Pri návrhu sme venovali veľké úsilie tomu, aby sme zabránili SQL Injection a Cross Site Scripting (XSS). Preto k týmto typom chýb nedochádza.
Ukladanie hesiel
Predtým ABRA Flexi používalo na ukladanie hesiel šifru MD5. Teraz sa používa SHA256 spolu so saltovaním (salt). Staré heslá sú prekódované až pri zmene.
