WireGuard:下一代安全内核网络隧道先进的加密技术,精明的内核设计,…



WireGuard:下一代安全内核网络隧道尖端的加密技术,精巧的内核设计和网络以惊人的简单组合相遇
杰森·多恩菲尔德

于:FOSDEM 2017

WireGuard是下一代VPN协议,位于Linux内核中,并使用最新的加密技术。 WireGuard是最近最令人兴奋的加密网络开发之一,旨在彻底简化安全隧道。 VPN协议的当前状态还不是很理想,IPsec和OpenVPN等流行的选项非常复杂,攻击面很大,主要使用90年代的密码设计。 WireGuard展示了一种基于现代加密技术的新型抗滥用和高性能替代方案,重点是实现和易用性,它使用基于NoiseIK的1-RTT握手来提供完美的前向安全性,身份隐藏和抗密钥泄露功能模仿攻击,以及其他重要的安全属性,以及使用ChaCha20Poly1305的高性能传输。一种新颖的IP绑定cookie MAC机制用于防止针对客户端和服务器的几种形式的常见拒绝服务攻击,大大改善了DTLS和IKEv2的攻击。密钥分发以极短的Curve25519点带外处理,可以像OpenSSH一样传递。WireGuard放弃了IPsec在学术上的完美分层,引入了“加密路由表”的思想,以及极其简单和完全定义的概念定时器状态机制,允许进行简单,最少的配置; WireGuard实际上可以在实际设置中安全地部署。为了获得IPsec的性能,WireGuard在Linuxkernel内部实现,但与IPsec不同,它以少于4,000行代码的形式实现,从而使实现易于管理。这些功能融合在一起,创建了一个极其简单,却完全现代化和安全的开源VPN实用程序。

演示将分为几个部分。首先,将概述IPsec,OpenVPN和其他流行VPN的问题,概述攻击和弱点。接下来,将介绍WireGuard的“ cryptokeyrouting表”的概念,我们将逐步介绍其衍生的几个属性。本文将讨论定时器状态机制,以及安全协议必须具有状态的方式,但是有可能通过详尽定义所有可能的状态转换,使它们对用户而言是无状态的。然后,我们将介绍该演讲的核心内容:WireGuard背后的加密技术和各种加密技术创新。我们将讨论三重Diffie-Hellman,组合静态密钥和临时密钥,Curve25519点乘法的性能和DoS势,使用PRF链旋转密钥,身份隐藏和在网络上保持静默以及对认证加密的巧妙使用以及其他功能。数据。我们将研究各种攻击模型,并列举WireGuard所采用的加密缓解措施。总结将是对现代加密技巧,攻击和有用构造的全面概述,以及如何将这些见解汇集到WireGuard中。最后,我们将研究WireGuard的Linux内核实现,以了解如何避免分配未分配的数据包作为防御编码技术,从而避免分配。在演示过程中,将向希望发送数据包的听众成员提供实时的WireGuard端点,无论这些用户是加密的,合法的,畸形的,可疑的还是好奇的。

贯穿整个主题的过程将是对现有协议的攻击的枚举以及为缓解这些威胁而使用的加密技巧。

我的背景是安全性-内核,硬件,反向,加密,大型网络等-因此,我以一些新颖的技巧和协议见解破坏了许多系统。 WireGuard受到针对其他网络的各种巧妙攻击(加密和其他攻击)的启发。我之所以这样做,是因为我想要可以在我自己的基础架构上真正放心地运行的东西,而其他任何工具都几乎无法完成任务。因此,除了揭示一些避免整个攻击类别的技术之外,本演讲还将深入探讨对各种协议的实际攻击。

最后,由于WireGuard最初是针对Linux内核实现的,因此在进行内核编程时需要考虑一些非常有趣的考虑因素。跨平台的实现也正在编写​​中,由Go和Rust编写。

房间:詹森
预定的开始时间:2017-02-05 13:00:00

4 comments

Comments are closed.