[转载]数字空间和信息安全的进化论

2024-01-12 07:10

本文主要是介绍[转载]数字空间和信息安全的进化论,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本文转载自Tombkeeper的微信公众号 皮相 (微信id: OnTheSurface)


(2016年11月9日在中国互联网安全领袖峰会的演讲)


今天有两件大事:第一件大事是美国人民正在选他们的领袖,第二件就是我们在这里参加中国互联网安全领袖峰会——开个玩笑,不过两件事其实真有点关系。2008年的美国大选,通常被认为是互联网第一次影响了大选;而今年的美国大选,则是信息安全问题第一次影响了大选的结果。


现在大家应该都可以接受这样一个观点:我们同时生活在两个空间,一个是物理空间,一个是数字空间。自计算机和互联网诞生,这么多年过去,我们对数字空间的依赖不断加深,我们在物理空间中活动也不断向数字空间转移,而这两个空间的交融也变得越来越深入,数字空间对人类的影响越来越大。

0?wx_fmt=jpeg


刚才讲到物理空间,大爆炸理论认为是150亿年前一次大爆炸形成了宇宙。宇宙中的物质最早是基本粒子,然后基本粒子形成了最早的星际物质,星际物质形成了星球,星球形成了星系,150亿年之后有了我们今天这样的宇宙。这是一个由简单到复杂的过程。

0?wx_fmt=jpeg


当然还有一种观点,认为宇宙其实是由神创造的。但是不管宇宙是谁创造的,不管物理空间是谁创造的,数字空间一定是我们创造的,这也是我们作为人类的荣耀。


我们回顾创造数字空间的过程,回顾数字空间前几十年的发展历史,会发现:数字空间也有一个类似物理空间这样由基本粒子一步步演化的发展过程。而在数字空间的创世早期,安全问题也大多数是一些微观层面的问题。


早期的安全问题往往是由什么而引起的呢?可能是某一处代码有问题,某一处配置文件有问题,或者是某一个变量设定有问题,是一些微观层面的问题形成了微观的安全问题,影响了一个微观的对象。

 

现在我们看一张比较鲜艳一些的图。这张图展示的是生物演化的过程,从一个单细胞生物的诞生,一直到产生了地球上最为复杂,最为壮观的生命,那就是我们人类。 0?wx_fmt=jpeg


虽然今天的地球上仍然存在着单细胞生物,但整个演化过程总体还是变得越来越复杂,个体的功能变得越来越多样。同时还有一点:就是个体的脆弱点也同样变得越来越复杂。

 

虽然人类是万物之灵,但是人类无论是精神还是肉体都是非常脆弱的,比很多动物都脆弱。而且很多的这种脆弱到现在还搞不清楚。因为在演化过程中,不光这些对象演化了,对象的弱点也会演化。


今天人们在数字空间中,操作的对象颗粒度变得越来越粗,对象之间的联系也变得越来越复杂。

 

所以今天很多安全问题已经不再是某一行代码的问题,或者说某几处代码之间的问题。而是一个协议和一个协议之间的问题,或者是某些协议共同作用发生的问题。甚至是一个设备和一堆设备之间的问题,一个系统和一个系统之间的问题,而且甚至这些对象它们相互之间看不到特别明显的关系。这些其实就是演化的结果。

 

传统那些安全问题是否还存在?就像今天地球上仍然存在单细胞生物一样,这些问题仍然存在,但是新的问题已经演化出来了。

 

有个非常典型的例子,是很多电商系统都犯过的一个错误。当我们去电商网站买一样东西的时候,在付款的过程中会进入到交易结算的系统,交易结算的系统和电商系统通常是两个系统,甚至于是隶属于不同的公司所有。这两个系统在产生关系的时候,就有可能发生问题。交易系统的设计是由一组人员去完成的,而结算支付系统往往是另外一组人员去完成的。

 

无论他们之间怎么去约定,怎么沟通,这种沟通都是不能达到百分之百透彻的。所以出现过这样一种情况:攻击者可以在购买完成之后结算的时候将交易金额修改成一个非常小的数字;而电商系统只是判断了这个交易结算系统返回的信息是否交易成功,它并不知道交易数字到底是多少,就是说他不知道攻击者买一台冰箱到底是花了2千元还是花了1元。所以攻击者就可以用1元买下冰箱。以前很多电商网站都犯过这样的错误。

 

还有个例子比较新一些。前几年很多运营商向用户提供了一种叫做“短信保管箱”的服务,这是完全正常的一种业务。但是这种业务引起了什么样的后果呢?他破坏了我们用手机短信作为第二验证因子的这样一种安全设计。

 

因为手机短信在以前是被认为相对可信的另外一重因子。但当运营商把短信存储到服务器上,可以在电脑上登陆去查看的时候,实际上就已经把双因子又变成了单因子。本来是出于一个美好的初衷设计出来的美好的业务,和网银业务遭遇后,就可以被网络犯罪者用来窃取用户网银上的资金。这事儿已经发生了很多起了。


最后的结果是什么?运营商逐渐取消了这个业务。这是运营商和银行两个看起来没有关系的对象,关联产生出来的这样一套问题。

 

刚才的例子里银行是作为受害者。下面要说的例子中银行扮演的就不是受害者了。现在很多银行搞了叫做“虚拟卡”的业务。有一家银行的虚拟卡业务遭遇了苹果的应用商店之后,被人找到了其中结合上的问题。后果是什么呢?就是利用虚拟卡业务的某些特性,不花钱就可以在苹果的应用商店里充值。

 

还有一个案例,可能前一阵子大家都听说过:美国的FBI为了解锁一个苹果手机,费了很大的力气。可能很多朋友也遇到过身边的朋友手机被窃,偷手机的人用了很多的方法试图去解锁这个手机。

 

当然,我们知道苹果对手机的安全性做了很多很好的设计,去保护用户手机中数据的安全。即使被窃取之后,仍然可以通过云端对手机的数据进行删除,把这个手机清空,包括窃取的小偷也无法直接的去解开这个手机的密码。

 

但现在犯罪分子找到了一条通道。当你的手机丢失的时候,随着手机一起丢失的还有什么?你插在手机里的SIM卡。虽然SIM卡插在这台手机里是不能使用的,但是把它拔出来,装到另外一台手机上,这个SIM卡可以打电话,可以收发短信,而且是你的号码。

 

我们知道很多的网络服务为了安全性,它会要求用户跟他的手机号码绑定。所以你用手机号可以重置很多网络服务的密码。这些窃贼们拿到你的手机之后,虽然他不能直接用这个手机,但是他可以用这个SIM卡,通过SIM卡可以去控制你的某个网络服务,比如说你的邮箱。

 

如果你苹果的ID是用绑定这个手机号的邮箱注册的,那么他通过控制这个邮箱就可以控制你的苹果ID。如果你通过苹果的iCloud把手机清空了,清空之后这台手机就可以用你的苹果ID进去。所以现在这套机制被很多的盗窃手机的犯罪团伙在使用。

 

我们看这整个的过程里面,包括我之前举的这些例子,看起来谁都没有犯错误,动机都是美好的,每个对象的设计单独看起来也是美好的,大家都在为用户服务,都想把产品做好。但是这些问题纠缠在一起之后,就变成了我们要面临的新的安全问题。

 

所以我们说,今天信息安全问题和网络空间中其它的对象一样发生了演化,我们抛开软件或者硬件这样的视角,将网络空间中的这些我们与之进行互动的对象抽象出来,同样可以发现这些对象之间的安全问题如同生物进化一样,今天他们进化成了一种非常复杂的形态,而这种形态的安全问题用传统的方法是难以进行发现、分析和防御的。

 

相应的我们也必须随之进化。作为防御者,作为安全研究者,我们需要随之进化。当一切都进化的时候,你不进化是没有办法去应对这种新的情况的。当然这种情形是一种非常大的挑战,但是我相信这里面也一定蕴含着非常大的机会。


谢谢大家。



这篇关于[转载]数字空间和信息安全的进化论的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/597151

相关文章

Ubuntu如何分配​​未使用的空间

《Ubuntu如何分配​​未使用的空间》Ubuntu磁盘空间不足,实际未分配空间8.2G因LVM卷组名称格式差异(双破折号误写)导致无法扩展,确认正确卷组名后,使用lvextend和resize2fs... 目录1:原因2:操作3:报错5:解决问题:确认卷组名称​6:再次操作7:验证扩展是否成功8:问题已解

MySQL之InnoDB存储页的独立表空间解读

《MySQL之InnoDB存储页的独立表空间解读》:本文主要介绍MySQL之InnoDB存储页的独立表空间,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、背景2、独立表空间【1】表空间大小【2】区【3】组【4】段【5】区的类型【6】XDES Entry区结构【

CSS实现元素撑满剩余空间的五种方法

《CSS实现元素撑满剩余空间的五种方法》在日常开发中,我们经常需要让某个元素占据容器的剩余空间,本文将介绍5种不同的方法来实现这个需求,并分析各种方法的优缺点,感兴趣的朋友一起看看吧... css实现元素撑满剩余空间的5种方法 在日常开发中,我们经常需要让某个元素占据容器的剩余空间。这是一个常见的布局需求

MySQL启动报错:InnoDB表空间丢失问题及解决方法

《MySQL启动报错:InnoDB表空间丢失问题及解决方法》在启动MySQL时,遇到了InnoDB:Tablespace5975wasnotfound,该错误表明MySQL在启动过程中无法找到指定的s... 目录mysql 启动报错:InnoDB 表空间丢失问题及解决方法错误分析解决方案1. 启用 inno

在Java中基于Geotools对PostGIS数据库的空间查询实践教程

《在Java中基于Geotools对PostGIS数据库的空间查询实践教程》本文将深入探讨这一实践,从连接配置到复杂空间查询操作,包括点查询、区域范围查询以及空间关系判断等,全方位展示如何在Java环... 目录前言一、相关技术背景介绍1、评价对象AOI2、数据处理流程二、对AOI空间范围查询实践1、空间查

MySQL表空间结构详解表空间到段页操作

《MySQL表空间结构详解表空间到段页操作》在MySQL架构和存储引擎专题中介绍了使用不同存储引擎创建表时生成的表空间数据文件,在本章节主要介绍使用InnoDB存储引擎创建表时生成的表空间数据文件,对... 目录️‍一、什么是表空间结构1.1 表空间与表空间文件的关系是什么?️‍二、用户数据在表空间中是怎么

CentOS7增加Swap空间的两种方法

《CentOS7增加Swap空间的两种方法》当服务器物理内存不足时,增加Swap空间可以作为虚拟内存使用,帮助系统处理内存压力,本文给大家介绍了CentOS7增加Swap空间的两种方法:创建新的Swa... 目录在Centos 7上增加Swap空间的方法方法一:创建新的Swap文件(推荐)方法二:调整Sww

Python实现特殊字符判断并去掉非字母和数字的特殊字符

《Python实现特殊字符判断并去掉非字母和数字的特殊字符》在Python中,可以通过多种方法来判断字符串中是否包含非字母、数字的特殊字符,并将这些特殊字符去掉,本文为大家整理了一些常用的,希望对大家... 目录1. 使用正则表达式判断字符串中是否包含特殊字符去掉字符串中的特殊字符2. 使用 str.isa

使用PyTorch实现手写数字识别功能

《使用PyTorch实现手写数字识别功能》在人工智能的世界里,计算机视觉是最具魅力的领域之一,通过PyTorch这一强大的深度学习框架,我们将在经典的MNIST数据集上,见证一个神经网络从零开始学会识... 目录当计算机学会“看”数字搭建开发环境MNIST数据集解析1. 认识手写数字数据库2. 数据预处理的

java字符串数字补齐位数详解

《java字符串数字补齐位数详解》:本文主要介绍java字符串数字补齐位数,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Java字符串数字补齐位数一、使用String.format()方法二、Apache Commons Lang库方法三、Java 11+的St