Joel Fendrick SECURITY IN ONLINE BANKING Overview Encryption
Joel Fendrick SECURITY IN ONLINE BANKING
Overview � Encryption Methods � AES (Advanced Encryption Standard) � SSL (Secure Socket Layer) � TLS (Transport Layer Security) � TLS Advantage Over SSL � Security Example � Attacks � Countermeasure
Encryption Methods � Asymmetric � Symmetric � Hashing
Asymmetric � Each user has two keys �Private �Public � Public key stored in public database �Messages encrypted with public key can only be decrypted with private key. �Encrypted with private > decrypted with public
Symmetric � No private/public � Only means of decryption is if you have the right key � Security issue in exchanging the key
Hashing � Unique fixed length string of characters from selected text � One way process �Cannot recreate document from hash � If anything changes in text, hash would change � Can be used to determine integrity of file
� Suppose hash of a document was: 9 c 5292056062 f 70 a 2 f 14330 cf 4 d 30 c 7 f If anything at all changes in document a new hash is formed 91857 f 37 a 636882 c 78 de 9961 e 791 c 81 a Making it easy to tell if the message has been altered in any way
AES (Advanced Encryption Standard) � Cryptographic algorithm used to protect electronic data � Block cipher that can encrypt and decrypt information � Capable of using keys of 128, 192, and 256 bits � Encrypts data into blocks of 128 bits
Pseudo code http: //www. garykessler. net/library/crypto. html#fig 17
� in[] and out[] � 16 byte arrays with the plaintext and cipher text, respectively. (According to the specification, both of these arrays are actually 4*Nb bytes in length but Nb=4 in AES. ) � w[] �array containing the key material and is 4*(Nr+1) words in length. (Again, according to the specification, the multiplier is actually Nb. ) � state[] �a 2 dimensional array containing bytes in 4 rows and 4 columns. (According to the specification, this arrays is 4 rows by Nb columns. )
� Sub. Bytes � takes the value of a word within a State and substitutes it with another value by a predefined S box � Shift. Rows �circularly shifts each row in the State by some number of predefined bytes � Mix. Columns �takes the value of a 4 word column within the State and changes the four values using a predefined mathematical function � Add. Round. Key �XORs a key that is the same length as the block, using an Expanded Key derived from the original Cipher Key
Walkthrough � This walkthrough is of Rijndael encryption �Rijndael allows for both key and block sizes to be chosen independently from the set of { 128, 160, 192, 224, 256 } bits. (And the key size does not in fact have to match the block size). �However, the block size must always be 128 bits in AES, and the key size may be either 128, 192, or 256 bits. � http: //www. formaestudio. com/rijndaelinspec tor/
AES Flaw � 2009 weakness identified � Interesting in mathematical P. O. V. �Not really relevant in application � Finding the key of AES is four times easier than previously believed � Steps to find = 8 followed by 37 zeroes
� 1 trillion machines each test 1 billion keys per second �Would take more than 2 billion years to recover AES 128 key � Andrey Bogdanov (K. U. Leuven), � Dmitry Khovratovich (Microsoft Research), � Christian Rechberger (ENS Paris)
SSL (Secure Socket Layer) � 3 basic properties �Connection is private �Peer’s identity can be authenticated using asymmetric cryptography �Connection is reliable ○ message check using keyed Message Authentication Code (MAC)
� Two layers: can include length description and content �Lowest Layer = SSL Record Protocol �Second Layer = Handshake Protocol
TLS (Transport Layer Security) � Two layers �TLS Record Protocol �TLS Handshake Protocol � Encapsulates higher level protocols
TLS Record Protocol � Two basic properties �The connection is private ○ Symmetric Data encryption �The connection is reliable ○ Keyed MAC included in each message
TLS Handshake Protocol � Three basic properties �Peer’s identity can be authenticated using asymmetric or public key cryptography �The negotiation of a shared secret is secure �The negotiation is reliable
Advantage over SSL � Application protocol independent �Higher level protocols can layer on top of it transparently ○ Decisions on how to initiate TLS handshaking and how to interpret authentication certificates are left up to the designers of the higher level protocols
Security Example � Either SSL or TLS protocol �We’ll focus on SSL since it is the basis for TLS
� Browser sends message via SSL to bank server � Bank responds by sending a certificate �Includes banks public key � Browser authenticates certificate and generate random session key �Uses this key to encrypt the data
� Bank’s server receives session key and decrypts �Key was sent encrypted by bank’s public key �Bank uses private key to decrypt � Session key that now both bank and client know is used for rest of communication
Banks Didn’t Use SSL? As of 2006 a number of big banks were not requiring the use of SSL authentication � Bank of America � Wachovia � US Bank � Chase � American Express � Etc. � SSL login form listed as optional � Outside the US at this time HSBC was the only known bank not to use SSL authentication ○ British multinational banking and financial services company
Attacks � Man in the middle � Man in the browser
Man in the middle � Someone intercepts the communication between two systems
Specific MITM Attack � Victim visits site that uses TLS 1. 0 and receives a cookie, this cookie injects the client side BEAST (Browser Exploit Against SSL/TLS) � Attacker can now use a network sniffer to look for active TLS connections �Grabs and decrypts the HTTPS cookie ○ Allows attacker to hijack victim’s session with that site.
Solution � Difficult �Attacks confidentiality VS authenticity like most attacks �Requires major change in the protocol itself �There are some fixes, but they cause compatibility issue with some existing SSL applications
Man in the browser � Malware already infecting user computer �Kicks in after user has logged onto site �Hijack money and siphon it into criminal accounts
Solution � Use a trusted browser �Can be stored on a flash drive �Since stored in own secure environment it is not susceptible to malware in the same way as a traditional browser
Countermeasure � Historically piecemeal approach �Generally recommends several defenses that support each other �Often creates gaps within the layer architecture leaving some elements exposed to threats
� Some banks implement a secure USB token �“provides secure online banking session even if computer is riddled with malware” �Read only portable USB device ○ When plugged in encrypts the customers keystrokes ○ Launches virtualized OS ○ Launches secure browser ○ Launches a secure network between client and bank server
� This is an attempt to create a virtual machine that is walled off from the rest of the PC �Protection from clients system � Makes sense that banks would want to protect their customers, as they are often the weakest link and biggest threat vector
Conclusion � Be careful and aware � Pay attention and confirm site is legitimate � Security is evolving , but so are the attacks
References � � � � � � � � [1] HIPAA Collaborative of Wisconsin. (2010). The Basics of Encryption. Retrieved on March 22, 2012, from http: //www. hipaacow. org/docs/encryption%20 whitepaper%207. 7. 10. doc [2] NIST. (2001). Retrieved on March 22, 2012, from FIPS Publications website: http: //csrc. nist. gov/publications/fips 197/fips 197. pdf [3] Katholieke Universiteit Leuven (2011, August 17). First flaws in the Advanced Encryption Standard used for internet banking identified. Science. Daily. Retrieved on March 22, 2012, from http: //www. sciencedaily. com /releases/2011/08/110817075424. htm [4] Dierks, T. , & Rescorla, E. (2008, August). The Transport Layer Security (TLS) Protocol Version 1. 2. Retrieved on March 22, 2012, from http: //tools. ietf. org/html/rfc 5246 [5] Freier, A. , & Karlton, P. (2011, August). The Secure Sockets Layer (SSL) Protocol Version 3. 0. Retrieved on March 22, 2012, from http: //tools. ietf. org/html/rfc 6101 [6] Onyszko, T. (2002, July 19). Windows. Security. com. Retrieved on March 23, 2012, from http: //www. windowsecurity. com/articles/secure_socket_layer. html [7] Online banking security and technical frequently asked questions. (2012). Retrieved on March 23, 2012, from http: //www. bankofamerica. com/onlinebanking/index. cfm? adlink=&context=en&locale=&statecheck=WI&template=faq_security&cm_mmc=&cm_sp = [8] Ou, G. (2006, April 27). Many banks failing to use ssl authentication. Retrieved on March 23, 2012, from http: //www. zdnet. com/blog/ou/many banks failing to use ssl authentication/201 [9] OWASP. (2009, April 23). The open web application security project. Retrieved on March 23, 2012, from https: //www. owasp. org/index. php/Man in the middle_attack [10] Fisher, D. (2011, September 19). threatpost. Retrieved on March 23, 2012, from http: //threatpost. com/en_us/blogs/new attack breaks confidentiality model ssl allows theft encrypted cookies 091911 [11] Bethlehem, D. (2012, February 12). Strong authentication by itself is not enough to prevent man-in-the-browser attacks. Retrieved on March 24, 2012, from http: //data protection. safenet inc. com/2012/02/strong [12] Ramirez, D. (2007). Case study: Itu t recommendation x. 805 applied to an enterprise environment— banking. Bell Labs Technical Journal, 12(3), 55 64. [13] (2011). Securing the weakest link. Bank Technology News, 24(6), 1 & 35.
- Slides: 36