35
Evaluation of Transactional Controls in e-Banking Systems Kraków, 27.05.2014 Paweł Goleń Arkadiusz Bolibok How Transaction Integrity Verification should look like

CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

  • Upload
    proidea

  • View
    352

  • Download
    2

Embed Size (px)

DESCRIPTION

There are more then 20 000 000 of users of internet banking systems in Poland. More than 7 000 000 of them use such systems actively. They usually lack of technical knowledge and are not aware of the current threat landscape linked with such systems. As a result users of internet banking are often profitable targets for cybercriminals. Not all attacks are targeted against wealthy clients and highly sophisticated. It is more profitable to execute relatively simple mass attacks which affects as large population of targets as possible. The gain from single victim may be not very impressive, but number of users affected by such attacks yields a considerable outcome for the attackers. As in every system, there are some security controls implemented in internet banking. Two such mechanisms are: user authentication, and transaction authorization. The transaction authorization is the (last?) line of defense which should be able to stop such attacks even if the first line of defense, authentication, has failed. As we know this is not always the case. To design an effective control one needs to understand the environment in which this control will operate and the type of attacks it should withstand. To get this context we will analyze several typical attack scenarios and identify what weaknesses are exploited. Based on this analysis we will prepare a list of requirements for an effective control s which could be used in internet banking to thwart typical attacks. Next we will evaluate the typically used transaction authorization methods used in polish internet banking systems to check if they meet the requirements identified by us. Sample attack scenarios will be provided to demonstrate that if even one of these requirements is not met a gap is created which may lead to a successful attack. Finally, one important question needs to be answered – can this transaction authorization mechanism be efficient enough to be the last line of defense against these mass attacks?

Citation preview

Page 1: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

Evaluation of

Transactional Controls in

e-Banking Systems

Kraków, 27.05.2014

Paweł Goleń

Arkadiusz Bolibok

How Transaction Integrity Verification should look like

Page 2: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

Who are we?

• We don’t like to talk about ourselves

• We both have technical background

– In building

– In breaking

• Now we work in Risk Management area

Page 3: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

Popularity of eBanking

• 38 million is the population of Poland

• 24 million – accounts with internet access

– 8 million active users

• Banks promote use of internet banking

– Easy, convinient, secure

• Ordinary users use Internet Banking

– Limited knowledge, limited awareness

– They may be easy targets

Page 4: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

If there are targets...

• Targeted attacks

– May be very profitable

– More difficult to perform

– More risky to the attacker

• Mass attacks

– Single attack needn't be very profitable

– No specific targets (the more, the better)

– Many successful attacks in one campaign

Page 5: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

How does eBanking look like?

Page 6: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

eBanking use cases

eBanking user

Transfer Money

Send Application

View Account Information

Manage Defined Transfers

Manage Account Parameters

Transfer Internaly

Tranfer Externaly

Execute Define Transfer

Modify Define Transfer

Add New User

Order New Product

Add New Access ChannelChange Account Paramters

Create Time Deposite

Loan Repayment

Transfer to Other Own Account

Execute Domestic Transfer

Execute International Transfer

Transfer to Tax Office

Page 7: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

eBanking misuse cases

eBanking User

Transfer Money

Send Application

View Account Information

Manage Defined Transfers

Manage Account Parameters

Attacker

Disclose Account Information

Transfer Money To Attacker

Change Account Parameters

Create New User

Add New Access Channel

Add New ProductModify Defined Transfer

<<extend>>

<<extend>>

<<extend>><<extend>>

<<extend>>

<<extend>>

<<extend>>

<<extend>>

Page 8: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

Attacker's motivation

• Disclose information accessible through

eBanking interface

• Tranfer money to an account controlled by

the attacker

• Influence financial market

Page 9: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

Scope of analysis

eBanking User

Transfer Money

Send Application

Manage Defined Transfers

Manage Account Parameters

Attacker

Transfer Money To Attacker

Change Account Parameters

Create New User

Add New Access Channel

Add New ProductModify Defined Transfer

<<extend>>

<<extend>>

<<extend>><<extend>>

<<extend>>

<<extend>>

<<extend>>

<<extend>>

Page 10: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

User to system interaction

eBanking

User

: Web

Browser

: eBanking

System

1 .User provides transaction parameters

2. Transaction parameters are send

to system

5. User provides authorization

data

3. Summary of transaction is sent

4. Summary of transaction is presented

to user

6. Authorization data is sent

to system

7. Verifcation of authorization data

8. Execution of transaction

9. Transaction confirmation

10. Transaction confirmation

presented to user

Page 11: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

Threats

• Malware installed on the machine of the ebanking

client (A1, A2)

• Unauthorized interception and modification of

information as it is transmitted over public

networks (B4, B5)

• Theft of access control information by means of

phishing and trademark spoofing (B10, C1, C3)

Based on Infromation Security Forum Treat List

Page 12: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

Threats mapped to interaction

eBanking

User

: Web

Browser

: eBanking

System

1 .User provides transaction parameters

2. Transaction parameters are send

to system

5. User provides authorization

data

3. Summary of transaction is sent

4. Summary of transaction is presented

to user

6. Authorization data is sent

to system

7. Verifcation of authorization data

8. Execution of transaction

9. Transaction confirmation

10. Transaction confirmation

presented to user

Malware

Phishing

Man in the middle

Page 13: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

Possible malicous activites

eBanking

User

: Web

Browser

: eBanking

System

1 .User provides transaction parameters

2. Transaction parameters are send

to system

5. User provides authorization

data

3. Summary of transaction is sent

4. Summary of transaction is presented

to user

6. Authorization data is sent

to system

7. Verifcation of authorization data

8. Execution of transaction

9. Transaction confirmation

10. Transaction confirmation

presented to user

Malware modifies transaction

paramters

MitM modifies transaction paramters

MitM forges transaction summary

Malware forges transaction summary

Malware eavesdrops authorization

data

(optional) Malware blocks transaction

execution

MitM forges transaction confirmation

Malware forges transaction

confirmation

MitM eavesdrops authorization data

(optional) MitM blocks transaction

execution

Attacker uses eavesdropped

authorization data (offline)

Attacker uses authorization data

aquired by phishing (offline)

Page 14: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

Types of controls used

• Authentication controls

• Access controls

• Transaction Integrity Verification (TIV)

Page 15: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

Transaction Integrity Verification

(...) generic term to describe (...) method of

verifying that the actual content of a

transaction has not been altered by the

fraudulent techniques (...)http://en.wikipedia.org/wiki/Transaction_verification

Page 16: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

Reference to TIV in standards

• Requirements phase and testing phase

– OWASP ASVS 2.0

V1.22 Verify re-authentication, step up or adaptive

authentication, SMS or other two factor application, or

transaction signing is required before any application-

specific sensitive operations are permitted as per the

risk profile of the application

– Lack of sufficient requirements and guidelines

Page 17: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

Possible 'high level' scenarios

• Offline execution based on acquired data

– Multiple operations

– Only one or very limited numer of operations

– Constrained operation

• Modification of operation in progress

– Unrestricted modification

– Constrained modification

• Replay of executed operation

Page 18: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

Popular methods

• Classic Transaction Authentication Number

(TAN)

• One Time Password Generator

– Based on time

– Based on a challenge-response

• Digital signature

• Transaction Authentication Number

delivered by SMS (mTAN)

Page 19: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

How we compare

Phishing MitM Malware

Offl ine execution of multiple operations based on

acquired data

Offl ine execution of single operation based on

acquired data

Unconstrained modification of operation in progress

Constrained offl ine execution of single operation

based on acquired data

Constrained modification of operation in progress

Replay of executed operation

>>

> I

mp

ac

t >

>>

>>> Difficulty >>>

Big impact, Bigger difficulty

Big impact, Low

difficulty

"Please take my

money"

Lower impact, Lower

difficulty

Lower impact, Bigger difficulty

"You wil l need to sweat for that"

Page 20: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

Classic Transaction Authentication

Number (TAN)

• Delivered to user

via independent

channel

• Transaction data is

not related to

authentication code

Page 21: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

Assumptions:

• Each code can be used only once

Transaction Authentication Number

Phishing MitM Malware

Offl ine execution of multiple operations based on

acquired data

Offl ine execution of single operation based on

acquired data

Unconstrained modification of operation in progress

Constrained offl ine execution of single operation

based on acquired data

Constrained modification of operation in progress

Replay of executed operation

>>> Difficulty >>>

>>

> I

mp

ac

t >

>>

Page 22: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

One Time Password Generator based

on time

• No direct data

exchange between

token and eBanking

system

• Transaction data is

not related to

authentication code

Page 23: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

Assumptions:

• Token value change triggered by time

• Each code can be used only once

Phishing MitM Malware

Offl ine execution of multiple operations based on

acquired data

Offl ine execution of single operation based on

acquired data

Unconstrained modification of operation in progress

Constrained offl ine execution of single operation

based on acquired data

Constrained modification of operation in progress

Replay of executed operation

>>> Difficulty >>>

>>

> I

mp

ac

t >

>>

One Time Password Generator based

on time

Page 24: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

One Time Password Generator in

challenge-response mode

• No direct data

exchange between

token and eBanking

system

• Transaction data is

related to

authentication code

Page 25: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

Assumptions:

• Response calculation does not take into account time

• Lenght of the challenge is limited (6-8 digits)

Phishing MitM Malware

Offl ine execution of multiple operations based on

acquired data

Offl ine execution of single operation based on

acquired data

Unconstrained modification of operation in progress

Constrained offl ine execution of single operation

based on acquired data

Constrained modification of operation in progress

Replay of executed operation

>>> Difficulty >>>

>>

> I

mp

ac

t >

>>

One Time Password Generator in

challenge-response mode

Page 26: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

Digital signature

• SmartCard is attached

to the computer /

mobile phone

• Signature operation is

conrolled by software

installed on computer

/ mobile device

• Authentication code is based on all

important transaction parameters

Page 27: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

Assumptions:

• Private key cannot be copied

• Signature is triggered by plugin/applet/ActiveX installed in the

browser

Phishing MitM Malware

Offl ine execution of multiple operations based on

acquired data

Offl ine execution of single operation based on

acquired data

Unconstrained modification of operation in progress

Constrained offl ine execution of single operation

based on acquired data

Constrained modification of operation in progress

Replay of executed operation

>>> Difficulty >>>

>>

> I

mp

ac

t >

>>

Digital signature

Page 28: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

Transaction Authentication Number

delivered by SMS (mTAN)

• Transaction data is

related to

authentication code

• Some parameters are

presented in

shortened form

• SMS delivery is triggered by eBanking

system

Page 29: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

Assumptions:

• Attacks on GSM network were not considered

• SIM card cloning was not considered

Phishing MitM Malware

Offl ine execution of multiple operations based on

acquired data

Offl ine execution of single operation based on

acquired data

Unconstrained modification of operation in progress

Constrained offl ine execution of single operation

based on acquired data

Constrained modification of operation in progress

Replay of executed operation

>>> Difficulty >>>

>>

> I

mp

ac

t >

>>

Digital signTransaction Authentication

Number delivered by SMS (mTAN)

Page 30: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

Let's compare

Tan OTP token Challenge-Response

Digital signature mTan

Page 31: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

What was effective

• Presenting operation parameters via out-of-

band channel

• Signing all the important parameters of

operation

• So what are the requirements?

– Out-of-band

– Transaction signing

Page 32: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

The out-of-band requirements

• Trusted out-of-band channel must exist

• Operations should be presented explicitly

– What operation will be executed

– Important parameters of that operation

– „Collisions” should be avoided

• Unique codes should be used

– Code is generated when operation is initiated

– Code confirms only the operation for which it was generated

Page 33: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

The signing device requirements

• User must know what is being signed

• All important parameteres should be signed

• User's action should be required

• It should be difficult to create a valid

signature without the secret

• Finding collisions should be difficult

• Replay should not be possible

Page 34: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

Quick recap

• There are no perfect controls

– Some are easier to defeat than others

– Control effectiveness can be evaluated

– There is always the weakest link: user

• Use the defense-in-depth approach

– Next layer of defense is required

– Anomaly detection, big data, (...)

Page 35: CONFidence 2014: Arkadiusz Bolibok,Paweł Goleń: Evaluation of Transactional Controls in e-Banking Systems

QUESTIONS?