Banking Fraud Evolution

62
[ Banking Fraud Evolution ] New techniques in real fraud cases Jose Miguel Esparza

description

SOURCE Seattle 2011 - Jose Miguel Esparza

Transcript of Banking Fraud Evolution

Page 1: Banking Fraud Evolution

[ Banking Fraud Evolution ]New techniques in real fraud cases

Jose Miguel Esparza

Page 2: Banking Fraud Evolution

[ Agenda ]

• Banking trojans

• Tatanga: a new actor emerges

• Anatomy of an e-banking fraud incident

• The eternal game of cat and mouse

• Real e-banking fraud incidents

• Conclusions

Page 3: Banking Fraud Evolution

[ Banking trojans ]

• …

• ZeuS

• Sinowal (Torpig)

• Gozi

• SpyEye

• Carberp

• Feodo

• …

Page 4: Banking Fraud Evolution

[ Banking trojans ]

Source: abuse.ch

Page 5: Banking Fraud Evolution

[ Banking trojans ]

• Binaries functionalities

– Bot

– Configuration update

– Binary update

– HTML injection

– Redirection

Page 6: Banking Fraud Evolution

[ Banking trojans ]

• Binaries functionalities

– Screenshots

– Capture virtual keyboards

– Credentials theft

– Certificates theft

– System corruption (KillOS)

Page 7: Banking Fraud Evolution

[ Banking trojans ]

• Binaries functionalities

– Screenshots

– Capture virtual keyboards

– Credentials theft

– Certificates theft

– System corruption (KillOS)

Information theft

Page 8: Banking Fraud Evolution

[ Tatanga ]

• Discovered by S21sec in February 2011

• Very low detection

• MarioForever (2008) evolution?

• C++

• No packers

• Modular design

• Anti-VM, anti-debugging

• 64bits support

Page 9: Banking Fraud Evolution

[ Tatanga ]

• Proxys to distribute binaries

• Weak encrypted communication with C&C

• HTML injection

• Man in the Browser

• Records video!!

Page 10: Banking Fraud Evolution

[ Tatanga ]

• Proxys to distribute binaries

• Weak encrypted communication with C&C

• HTML injection

• Man in the Browser

• Records video!!

Page 11: Banking Fraud Evolution

[ Tatanga ]

• Modules: XOR + BZIP2

– HTTPTrafficLogger

– Comm

– ModDynamicInjection

– ModEmailGrabber

– ModAVTrafficBlocker

– ModCrashGuard

Page 12: Banking Fraud Evolution

[ Tatanga ]

• Modules: XOR + BZIP2

– ModMalwareRemover

Page 13: Banking Fraud Evolution

[ Tatanga ]

• Modules: XOR + BZIP2

– SSL Decrypt

– FilePatcher

– IMSender

– HTTPSender

– Coredb

– SmartHTTPDoser

Page 14: Banking Fraud Evolution

[ Tatanga ]

• Control panel

– Statistics: country, browser, OS, AV, injections, honeypots

– Injections and drops management

– Storing dumps of banking webpages

– Classified versions of droppers and modules

– Dependencies between modules

– DDoS

– FTP iframer

– …

Page 15: Banking Fraud Evolution

[ Tatanga ]

Page 16: Banking Fraud Evolution

[ Tatanga ]

Page 17: Banking Fraud Evolution

[ Tatanga ]

Page 18: Banking Fraud Evolution

[ Tatanga ]

Page 19: Banking Fraud Evolution

[ Tatanga ]

Page 20: Banking Fraud Evolution

[ Tatanga ]

Page 21: Banking Fraud Evolution

[ Tatanga ]

Page 22: Banking Fraud Evolution

[ Tatanga ]

Page 23: Banking Fraud Evolution

[ Tatanga ]

Page 24: Banking Fraud Evolution

[ Anatomy of an e-fraud incident ]

• Infection

• Configuration file update/download

• Interaction with the user

Social engineering!!

HTML injection, Mit(B|M|Mo), Pharming, Phishing…

• Banking credentials theft

Page 25: Banking Fraud Evolution

[ Anatomy of an e-fraud incident ]

• Account spying

– Manual / Automatic

– Getting balance to choose the victim

• Fraudulent transaction

– Manual Mules

– Automatic Man in the Browser (MitB)

• Money laundering

Page 26: Banking Fraud Evolution

[ The game of cat and mouse ]

Virtual keyboard

Code card

OTP Token

SMS : mTAN

PasswordID +

2FA

Page 27: Banking Fraud Evolution

[ The game of cat and mouse ]Virtual keyboard

screen/video capturing…

Page 28: Banking Fraud Evolution

[ The game of cat and mouse ]

Code card

pharming, phishing, injection…

Page 29: Banking Fraud Evolution

[ The game of cat and mouse ]

Token mTAN

…MITM, code injection

Page 30: Banking Fraud Evolution

[ The game of cat and mouse ]

Virtual keyboard

Code card

OTP Token

SMS : mTAN

PasswordID +

SCREEN-CAPTURING

PHISHING

MITM

CODE INJECTION

FORM GRABBING

KEYLOGGINGPHARMING

Page 31: Banking Fraud Evolution

[ Real e-banking fraud incidents ]

• SpyEye MitB, October 2010

• Automatic fraudulent transfer

– Session of the legit user

– Balance request

– Account selection based on balance

– Getting mules from the server

– Social engineering password request

– Automatic transaction

– Modification of balance and operations

Page 32: Banking Fraud Evolution

[ Real e-banking fraud incidents ]

• Tatanga MitB, February 2011

• Automatic fraudulent transfer using OTP

– Session of the legit user

– Balance request

– Account selection based on balance

– Getting mules from the server

– Social engineering password request

– Social engineering OTP request

– Automatic transaction

– Modification of balance and operations

Page 33: Banking Fraud Evolution

[ Real e-banking fraud incidents ]

• Tatanga MitB, February 2011

Page 34: Banking Fraud Evolution

[ Real e-banking fraud incidents ]

• ZeuS Man in the Mobile (MitMo)

– September 2010, Spain

– February 2011, Poland

Page 35: Banking Fraud Evolution

[ ZeuS Man in the Mobile ]

Page 36: Banking Fraud Evolution

[ ZeuS Man in the Mobile ]

Each day we try to improve your security. Lately we have

noticed many mobile SIM cloning attacks that result in

fraudulent transfers. Due to the increase of these incidents,

we have implemented a new mobile identification method,

using a digital certificate. The certificate works in

smartphones and is an additional method of protection.

This application ensures that only you can access your

online account.

Please click here to start the installation

Page 37: Banking Fraud Evolution

[ ZeuS Man in the Mobile ]

Source: http://niebezpiecznik.pl/post/zeus-straszy-polskie-banki/

Page 38: Banking Fraud Evolution

[ ZeuS Man in the Mobile ]

Please choose your mobile manufacturer and model

and add your mobile number.

The digital certificate installation link will be sent via

SMS. Please download and install the application

Page 39: Banking Fraud Evolution

[ ZeuS Man in the Mobile ]

Source: http://niebezpiecznik.pl/post/zeus-straszy-polskie-banki/

Page 40: Banking Fraud Evolution

[ ZeuS Man in the Mobile ]

The certificate installation program link will be sent

by SMS. Once received, please download and

install the aplication.

Page 41: Banking Fraud Evolution

[ ZeuS Man in the Mobile ]

Spoofed SMS Sender ID

ID Token

(remember this for later!)

Page 42: Banking Fraud Evolution

[ ZeuS Man in the Mobile ]

Serial Number: BF43000100230353FF79159EF3B3 Revocation Date: Sep 28 08:26:26 2010 GMT

Serial Number: 61F1000100235BC2794380405E52 Revocation Date: Sep 28 08:26:26 2010 GMT

Page 43: Banking Fraud Evolution

[ ZeuS Man in the Mobile ]

http://dtarasov.ru/smsmonitor_lite.html

Page 44: Banking Fraud Evolution

[ ZeuS Man in the Mobile ]

Spoofed SMS

Sender ID

ID Token (remember

this for later! It is

important)

…sent to a UK mobile phone.

Page 45: Banking Fraud Evolution

[ ZeuS Man in the Mobile ]

ON / OFF

SET ADMIN

ADD

REM

SET

…sent from the “bad guy” mobile phone.

SENDER ALL

Page 46: Banking Fraud Evolution

[ ZeuS Man in the Mobile ]

Page 47: Banking Fraud Evolution

[ ZeuS Man in the Mobile ]

Page 48: Banking Fraud Evolution

[ ZeuS Man in the Mobile ]if ($urlPathExt == ’sis') {

$oGate->addHeader('Content-Type:

application/vnd.symbian.install');

if ($data['mobile_os_type'] == OS_SYMBIAN_78)

$oGate->outputFile('./symbian/cert_78.sis.txt');

else if ($data['mobile_os_type'] ==OS_SYMBIAN_9)

$oGate->outputFile('./symbian/cert_9.sis.txt');}

if ($urlPathExt == 'cab') {

$oGate->addHeader('Content-Type: application/cab');

if ($data['mobile_os_type']==OS_WINDOWS_MOBILE_2K)

$oGateoutputFile('./wm/cert_uncompress.cab.txt');else if

($data['mobile_os_type']=OS_WINDOWS_MOBILE_GR5)

$oGate->outputFile('./wm/cert_compress.cab.txt');

if ($urlPathExt == ’cod') {$oGate->addHeader('Content-Type:

application/vnd.rim.cod');if ($data['mobile_os_type'] == OS_BLACKBERRY_41)

$oGate->outputFile('./blackberry/cert_41.cod.txt'); else if

($data['mobile_os_type'] == OS_BLACKBERRY_GR44)

Page 49: Banking Fraud Evolution

[ ZeuS Man in the Mobile ]

Remember the token ?

mysql_unbuffered_query(“

UPDATE sms_list SET

mobile_os_version=$mobile_os_version,

is_downloaded='YES',

ts_downloaded=$ts_downloaded WHERE

token='$token'");

Page 50: Banking Fraud Evolution

[ ZeuS Man in the Mobile ]

ZeuS infected

Page 51: Banking Fraud Evolution

[ ZeuS Man in the Mobile ]

ZeuS infected

Page 52: Banking Fraud Evolution

[ ZeuS Man in the Mobile ]

ZeuS infected

ID + PASSWORD

Page 53: Banking Fraud Evolution

[ ZeuS Man in the Mobile ]

ZeuS infected

ID + PASSWORD

Mitmo Infected

Page 54: Banking Fraud Evolution

[ ZeuS Man in the Mobile ]

ZeuS infected

ID + PASSWORD

Mitmo InfectedCOMMANDS

Page 55: Banking Fraud Evolution

[ ZeuS Man in the Mobile ]

ZeuS infected

ID + PASSWORD

Mitmo InfectedCOMMANDS

Page 56: Banking Fraud Evolution

[ ZeuS Man in the Mobile ]

ZeuS infected

ID + PASSWORD

Mitmo InfectedCOMMANDS

Page 57: Banking Fraud Evolution

[ ZeuS Man in the Mobile ]

OTP: 0023424

COMMANDS

ZeuS infected

ID + PASSWORD

Mitmo Infected

Page 58: Banking Fraud Evolution

[ ZeuS Man in the Mobile ]

ZeuS infected

ID + PASSWORD

Mitmo Infected

GAME OVEROTP: 0023424

COMMANDS

Page 59: Banking Fraud Evolution

[ DEMO TIME!! ]

Page 60: Banking Fraud Evolution

[ Conclusions ]

• Successful attacks: not binary dependent

• Social engineering

– HTML injections + extras

• Innovation

• Underground market

– User dependent

• Monitoring injections

• Sharing information

Page 61: Banking Fraud Evolution

[ Questions? ]

Page 62: Banking Fraud Evolution

[ Thank You!! ]

Jose Miguel Esparza

jesparza s21sec.com

@eternaltodo