Paper 2018/093
Statistical Attacks on Cookie Masking for RC4
Kenneth G. Paterson and Jacob C. N. Schuldt
Abstract
Levillain et al. (AsiaCCS 2015) proposed two cookie masking methods, TLS Scramble and MCookies, to counter a class of attacks on SSL/TLS in which the attacker is able to exploit its ability to obtain many encryptions of a target HTTP cookie. In particular, the masking methods potentially make it viable to continue to use the RC4 algorithm in SSL/TLS. In this paper, we provide a detailed analysis of TLS Scramble and MCookies when used in conjunction with RC4 in SSL/TLS. We show that, in fact, both are vulnerable to variants of the known attacks against RC4 in SSL/TLS exploiting the Mantin biases (Mantin, EUROCRYPT 2005): * For the TLS Scramble mechanism, we provide a detailed statistical analysis coupled with extensive simulations that show that about $2^{37}$ encryptions of the cookie are sufficient to enable its recovery. * For the MCookies mechanism, our analysis is made more complex by the presence of a Base64 encoding step in the mechanism, which (unintentionally) acts like a classical block cipher S-box in the masking process. Despite this, we are able to develop a maximum likelihood analysis which provides a rigorous statistical procedure for estimating the unknown cookie. Based on simulations, we estimate that $2^{45}$ encryptions of the cookie are sufficient to enable its recovery. Taken together, our analyses show that the cookie masking mechanisms as proposed by Levillain et al. only moderately increase the security of RC4 in SSL/TLS.
Metadata
- Available format(s)
- Category
- Implementation
- Publication info
- Preprint. MINOR revision.
- Keywords
- RC4 stream cipherstatistical analysismasking.
- Contact author(s)
- kenny paterson @ rhul ac uk
- History
- 2018-01-28: received
- Short URL
- https://ia.cr/2018/093
- License
-
CC BY
BibTeX
@misc{cryptoeprint:2018/093, author = {Kenneth G. Paterson and Jacob C. N. Schuldt}, title = {Statistical Attacks on Cookie Masking for {RC4}}, howpublished = {Cryptology {ePrint} Archive, Paper 2018/093}, year = {2018}, url = {https://eprint.iacr.org/2018/093} }