IETF-SSH archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: Core draft last call update.
> What about the attack described in Appendix C of
> <URL:http://eprint.iacr.org/2001/045/>, which appears to be
> applicable to the SSH binary packet protocol as specified in
> draft-ietf-secsh-transport-13.txt (no matter if CBC or OFB or
> counter mode is used)?
This attack has greatly increased difficulty for SSH because the SSH
MAC also covers the random pad at the end of the message. As a
result, you can only tell if m and m' are identical if the random
padding appended by the sender is identical.
Quoting from the transport draft:
After key exchange, the selected MAC will be computed
before encryption from the concatenation of packet data:
mac = MAC(key, sequence_number || unencrypted_packet)
where unencrypted_packet is the entire packet without MAC (the length
fields, payload and padding), and sequence_number is an implicit
packet sequence number represented as uint32.
The chance of this happening depends on the message length -- ssh
requires at least 4 bytes of padding, and requires that messages be
padded to a multiple of the block size and a multiple of 8.
If the implementation inserts the minimum padding, this will be
between 4 and 11 bytes (and it can always insert more).
The most "interesting" case is, of course, a single byte of channel
data, which will get a minimum of 9 bytes of padding.
You also only get one shot at this per connection -- the peer will
drop the connection and forget the session key if you get it wrong.
Compression will complicate this attack as well.
- Bill
Home |
Main Index |
Thread Index |
Old Index