Ik maakte vanochtend weer gebruik van Mayfly, een mooie tool om wachtwoorden te communiceren zonder dat ze bijvoorbeeld in e-mails terechtkomen en blijven staan.
Nu viel me in het gebruik op dat het secret in de URL is opgenomen, waardoor dat naar de server meegestuurd wordt. Nu ga ik er van uit dat een Mayfly server over het algemeen goed in de gaten gehouden wordt qua beveiliging, maar fundamenteel gezien lijkt het me een veiligheidsprobleem in Mayfly.
Mocht de server namelijk gecompromitteerd zijn dan kan een aanvaller HTTP requests onderscheppen en uit de URL het secret halen waarmee de versleuteld opgeslagen wachtwoorden te ontsleutelen zijn.
Ik denk dat hier om heen te werken valt door het secret in een Fragment identifier [1] op te nemen zodat de Javascript front-end het secret nog steeds ter beschikking heeft maar dit door browsers niet naar de server verstuurd wordt.
[1] https://en.wikipedia.org/wiki/Fragment_identifier
Ik maakte vanochtend weer gebruik van Mayfly, een mooie tool om wachtwoorden te communiceren zonder dat ze bijvoorbeeld in e-mails terechtkomen en blijven staan.
Nu viel me in het gebruik op dat het secret in de URL is opgenomen, waardoor dat naar de server meegestuurd wordt. Nu ga ik er van uit dat een Mayfly server over het algemeen goed in de gaten gehouden wordt qua beveiliging, maar fundamenteel gezien lijkt het me een veiligheidsprobleem in Mayfly.
Mocht de server namelijk gecompromitteerd zijn dan kan een aanvaller HTTP requests onderscheppen en uit de URL het secret halen waarmee de versleuteld opgeslagen wachtwoorden te ontsleutelen zijn.
Ik denk dat hier om heen te werken valt door het secret in een Fragment identifier [1] op te nemen zodat de Javascript front-end het secret nog steeds ter beschikking heeft maar dit door browsers niet naar de server verstuurd wordt.
[1] https://en.wikipedia.org/wiki/Fragment_identifier