云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

数据库服务器_什么是cdn网络_折扣

小七 141 0

TLS1.3将拯救我们所有人,以及物联网仍然不安全的其他原因

在我写这篇文章的时候,有四个DDoS攻击正在进行,并且被Gatebot自动缓解。Cloudflare的任务是受到攻击。我们的网络经常受到攻击。大约在2016年秋季,我们开始看到DDoS攻击,看起来与平常略有不同。当时我们看到的一次攻击有来自52467个唯一IP地址的流量。客户机不是服务器或桌面计算机;当我们试图通过端口80连接到客户机时,我们得到了闭路电视摄像机的登录页面。显然,锁定物联网设备是很重要的,这样它们就不会被加入邪恶的僵尸网络大军,但当我们与一些物联网开发者交谈时,我们听到了一些关于安全模式的信息。我们将深入探讨两个有问题的领域及其解决方案:软件更新和TLS。更新的问题对于个人电脑,终端用户最终负责保护他们的设备。人们明白他们需要更新电脑和手机。在苹果发布iOS10仅仅4个月之后,它就安装在了76%的活动设备上。人们只是不知道他们应该更新物联网的东西,就像他们应该更新他们的电脑,因为他们从来没有更新过东西。我父母永远不会为他们的温度计安装软件更新。随着时间的推移,问题会变得更糟。设备在旧软件版本上停留的时间越长,它与新版本兼容的可能性就越小。在某些时候,更新可能不再可能。这是一个非常现实的问题,因为一个连接的东西的保质期可能是10年,如果是厨房电器-你有没有买过冰箱?这是如果设备可以修补的话。首先,电池电量不足的设备被编程为不接收更新,因为它消耗的电量太多。第二,物联网设备太轻,无法运行完整的操作系统,它们只能在固件上运行编译的二进制文件,这意味着以后可以推送到它的代码有一定的限制。某些设备无法接收特定的修补程序。我们从物联网开发者那里听到的另一件事是,他们通常害怕推送新的更新,因为这可能意味着一次破坏几十万台设备。所有这些看起来都不是什么大不了的事-好吧,烤面包机可能会被黑客入侵,那又怎么样-但有两件非常真实的事情处于危险之中。首先,每一个容易成为目标的设备都会使其他应用程序更容易成为目标。第二,一旦有人坐在一个设备上,他们就在你的网络中,这可能会危及任何通过网络发送的流量。适用于个人电脑的安全模式不适用于物联网——最终用户无法承担责任,补丁也不可靠。我们还需要别的东西。解决办法是什么?到物联网设备的流量通过许多不同的网络:来自应用服务器的传输提供商、用于传输设备流量的内容交付网络、ISP到设备所在的大楼。正是在这些网络层上可以添加保护。随着物联网设备流量在这些网络中移动,数据包可以被过滤,只允许进入良好的流量。即使设备运行的是易受攻击的代码,在网络级别添加的过滤器也可以将黑客拒之门外。TLS的问题TLS在物联网设备中有两种使用方式:首先,TLS用于加密传输中的数据。这是用于数据隐私,并使其更难对设备所使用的通信进行反向工程。第二,设备存储用于向应用程序验证设备的客户端TLS证书-这使得伪造设备更加困难。开发人员想要在物联网中实现TLS时会遇到三个问题。首先,虽然物联网流量需要快速和轻量级,但TLS在每个会话开始时增加了两个往返行程。二是证书可以是大文件,设备内存在物联网中受到限制。第三,一些正在为物联网开发的协议在默认情况下是纯文本的。TLS不是轻量级的物联网设备运行在低功耗芯片上。一个物联网设备可能只有256或512kB的RAM,并且经常需要节省电池电量。他们不断地发送和接收大量的小信息。想象一下,一个连接互联网的风速传感器——它测量风速,每30秒将新风速发送到应用服务器。它只需要几字节的数据就可以通过网络传输,而且它希望能够在没有尽可能多的开销的情况下做到这一点,以节省RAM和电池寿命。下面是一个HTTP帖子:但假设同一个设备将使用TLS。下面是TLS握手时的相同帖子-这是TLS 1.2:根据设备和应用服务器之间的距离以及服务器的延迟,这可能会增加数百毫秒。解决方案很可能是TLS的最新版本tls1.3。tls1.3消除了TLS握手的完整往返,这使得TLS更轻更快。它通过预测服务器将决定使用哪种密钥协商协议和算法,并将猜测的参数和密钥共享直接发送到客户端hello中,从而将握手过程中的往返次数减少一半。如果服务器愿意的话,它会为相同的算法发回自己的密钥共享,整个握手就完成了。如果同一个物联网设备再次与同一台服务器对话,实际上根本就没有往返之旅。在初始握手中选择的参数与第一个数据包中的应用程序数据一起发送。为什么今天不是每个物联网设备都使用1.3?tls1.3仍在IETF标准轨道上积极开发,虽然Chrome从1月份的56版本到3月份的52版本都支持1.3,但并不是所有的东西都支持1.3。今天最大的问题是ISP和企业使用的中间盒,当他们看到1.3握手并关闭连接时会惊慌失措。当世界正在升级到tls1.2,而middlebox只理解tls1.1时,也发生了这种情况,所以这只是时间问题。TLS证书大小在TLS握手中,服务器可以使用服务器端TLS证书向客户机进行身份验证,而客户机可以使用客户端证书向服务器进行身份验证。设备通常存储证书以向应用服务器进行身份验证。然而,物联网中的设备内存通常有限,证书可能很大。我们能做什么?现在大多数证书使用的是RSA算法,这种算法从70年代就已经出现了。证书之所以大是因为RSA中要保证安全的密钥必须是大的,即1024到2048字节,然而,自2000年初以来,一种使用椭圆曲线密码术的新算法已经被广泛使用,它可以解决这个问题。使用椭圆曲线加密,我们可以使用与较大的RSA密钥具有相同安全级别的较小密钥,从而节省设备空间。默认明文物联网协议物联网设备需要轻量级,因此两种新兴的协议正在取代HTTP成为某些物联网设备的主要传输协议:MQTT和CoAP。MQTT是一种发布/订阅协议,已经有将近20年的历史了。在MQTT中,代理服务器充当代理。IoT设备或web应用程序向代理发布消息,代理将这些消息分发给需要接收该消息的所有其他IoT设备。当MQTT在大约20年前编写时,它是在没有安全性的情况下编写的。它是为石油和天然气公司编写的,他们只是发送传感器数据,没有人认为需要加密。CoAP在三年前才被标准化。它的方法和HTTP相同,但它是通过UDP的,所以它非常轻。问题是,如果您想添加TLS(实际上是因为CoAP是通过UDP传输的),那么它就不再是轻量级的了。未来随着部署的物联网设备数量的不断增长,更新机制和TLS实现如何变化将是非常有趣的。如果你对这类事情感兴趣,请加入我们。