ssh keystroke timing attacks

Post on 11-Feb-2016

52 Views

Category:

Documents

3 Downloads

Preview:

Click to see full reader

DESCRIPTION

SSH Keystroke Timing Attacks. Mike Hogye Thad Hughes Josh Sarfaty Joe Wolf. SSH. The S ecure SH ell protocol was created by Tatu Ylönen and others to provide encrypted data transfers between remote machines. Mmmm…SSH. SSH Weaknesses. SSH can leak information about passwords - PowerPoint PPT Presentation

TRANSCRIPT

SSH Keystroke Timing Attacks

Mike HogyeThad HughesJosh Sarfaty

Joe Wolf

SSHThe Secure SHell protocol was created by Tatu Ylönen and others to provide encrypted data

transfers between remote machines

Mmmm…SSH

SSH Weaknesses

SSH can leak information about passwordsApproximate length of password can

be inferred by examining number of packets.

Keystroke Timing Analysis can reduce the search space for brute force attacks.

Password Keystroke Timing

• Users type passwords often• Password keystrokes develop consistent rhythm due to

optimized hand motion• This rhythm can be used to determine characteristics about

the password

Time Between Adjacent Keystrokes vs. Key Typed

0.0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

R ] i p J [ : 4 Enter

Key Typed

Tim

e Be

twee

n Ad

jace

nt K

eyst

roke

s (s

econ

ds)

Trial 1

Trial 2

Trial 3

Trial 4

Trial 5

Trial 6

Trial 7

Trial 8

Time Between Adjacent Keystrokes vs. Key TypedWith Network Latency

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

R ] i p J [ : 4 Enter

Key Typed

Tim

e Be

twee

n Ad

jace

nt K

eyst

roke

s (s

econ

ds)

Trial 1

Trial 2

Trial 3

Trial 4

Trial 5

Trial 6

Trial 7

Trial 8

SSH Immediate Mode• Each keystroke is sent IMMEDIATELY from client to

server, one character per packet• Allows interactive user experience

Passwords & SSH•SSH login does NOT used immediate mode•Password (and username) packets are padded to fixed lengths•No problems, right?

WRONG !!Maybe?

su•UNIX “Switch User” command (used to get root access)•Executed in IMMEDIATE mode

SSH1 su command

Nested SSH•Start new SSH session from within a running SSH session•Username and password sent to server B in immediate mode

So What?• Password lengths can be determined• Reveals timing information of password keystrokes• Academically speaking, this is a lot of information

Is This Practical?• How to detect an “su” command?• How to detect a nested SSH session?• Network latency

Detecting the “su”• Look for the ‘su’ signature• Not as easy as it sounds

“I am a su”

40 40

ack ack

40 40 40 40

ack ack ack

48 48

“s” “u” Return “a” “b” “c” “d” Return

40

ack

ack ack ack

56 566440 40 40 40

ack

ack ack ack

40

Server Response

Client

Server

SSH2 su command

SSH! (nested)• Theoretically similar to detecting ‘su’• In practice, much harder to detect• No definite packet signature for calling

‘ssh’

How late(ncy) is your network

• Random network delay influences observed packet times

• Song’s paper considered latency statistics– Determined that latency is not an issue– Used eight year old statistics– Song’s estimated network latency: 10 ms

• Modern latency easily reaches 170 ms

Internet Latency

Conclusions• Song: Timing analysis can reduce brute-

force password search by a factor of 50• In practice, this is unlikely• Use SSH2

– PuTTY defaults to SSH1

top related