arXivDaily arXiv每日学术速递 周一至周五更新
arXiv周末暂无论文更新,休息一下吧,周末愉快~~
arXiv 1603.04085cs.CR
收藏

密码协议中客户端行为的服务器端验证

Server-side verification of client behavior in cryptographic protocols

Andrew Chi, Robert Cochran, Marie Nesfield, Michael K. Reiter, Cynthia Sturton

摘要:

客户端-服务器协议和应用程序的许多漏洞都涉及修改客户端,使其以未篡改客户端不会的方式运行,例如制作恶意数据包。在本文中,我们证明了实际验证的加密协议客户端的消息传递行为是一致的客户端程序,它被认为是运行。此外,我们在不以任何方式修改客户端的情况下实现了这一点,并且不知道驱动其行为的所有客户端输入。我们用于验证客户端消息的工具链同时探索客户端中的多个候选执行路径,我们展示的创新对于加密协议客户端特别有用,并且对于其他类型的客户端应用程序也更普遍有用。此外,我们的工具链包括一种新颖的方法,可以在多个通道中象征性地执行客户端软件,该方法推迟了昂贵的功能,直到可以推断和具体化它们的输入。我们演示了OpenSSL上的客户端验证,以表明,例如,Heartbleed漏洞可以在没有Heartbleed特定过滤的情况下在第一个恶意数据包的几秒钟内检测到,并且合法客户端的验证可以跟上,例如,Gmail工作负载。

英文摘要:

Numerous exploits of client-server protocols and applications involve modifying clients to behave in ways that untampered clients would not, such as crafting malicious packets. In this paper, we demonstrate practical verification of a cryptographic protocol client's messaging behavior as being consistent with the client program it is believed to be running. Moreover, we accomplish this without modifying the client in any way, and without knowing all of the client-side inputs driving its behavior. Our toolchain for verifying a client's messages explores multiple candidate execution paths in the client concurrently, an innovation that we show is both specifically useful for cryptographic protocol clients and more generally useful for client applications of other types, as well. In addition, our toolchain includes a novel approach to symbolically executing the client software in multiple passes that defers expensive functions until their inputs can be inferred and concretized. We demonstrate client verification on OpenSSL to show that, e.g., Heartbleed exploits can be detected without Heartbleed-specific filtering and within seconds of the first malicious packet, and that verification of legitimate clients can keep pace with, e.g., Gmail workloads.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑