Naar aanleiding van nieuws: Virus ontfutselt geld van klanten ABN Amro - update, start ik hier een discussie. Het doel is om een perfecte webbanking-applicatie te ontwikkelen, die theoretisch (onder bepaalde voorwaarden) onkraakbaar is.
Mijn eerste voorstel is voor een stukje gebaseerd op Kerberos. Lees en huiver
Mijn eerste voorstel is voor een stukje gebaseerd op Kerberos. Lees en huiver
- Iedere klant krijgt een USB-key en een stuk software om deze USB-key aan te spreken. In deze USB-key zit een RSA encoder, waar de private key 1 van de bank in is gestoken. Deze is voor elke klant anders.
- Op de USB-key zit ook een RSA decoder, waar de public key 2 van de bank in is gestoken.
- De USB-key bevat verder een display en een knopje 'Bevestigen'.
- Een transactie wordt als volgt gemaakt:
- Bank stuurt de volledige transactie gecodeerd (key2) naar de client, samen met een willekeurige string.
- De usb-key decodeert de transactie en toont deze op zijn display.
- Indien de gebruiker de transactie aanvaardt (ie: drukt op 'Bevestigen'-knop) wordt de transactie + willekeurige string versleuteld mbv key1.
- De bank decodeert de ontvangen boodschap en kijkt of deze hetzelfde is als de verstuurde boodschap.
- Een man in the middle attack is onmogelijk. De verstuurde transactie van de bank kan niet gefaked worden. Het antwoord van de usb-key kan niet gefaked worden. Een replay attack is ook niet mogelijk.
- Portable drivers noodzakelijk
- De 'Bevestigen'-knop kan hardwired worden. Dat wil ik echter een trojan nog wel eens zien doen ;-)
- Er kan een man-in-the-middle attack gebeuren tussen de encoder-chip en de display. Dat is echter OOK onmogelijk voor trojans.
- Dure USB-key
- De usb-key is zo ontworpen dat de keys softwarematig onmogelijk te ontfutselen zijn. (timing attack bijvoorbeeld)
- De gebruiker leest de transactie na voor hij/zij op 'bevestigen' drukt
- Black hats hebben geen fysieke toegang tot de usb-key, noch kunnen ze hem softwarematig herprogrammeren
WebDAV in Vista is horribly broken. Ik wil het fixen, maar ben nog steeds op zoek naar de tarball met de source...