侧信道攻击

1、侧信道攻击简介:
侧信道攻击中所指的侧信道信息一般为这几种:声音、温度、功耗、电磁、色彩。。。。。等等,这些信息叫做侧信道信息是因为,在加密硬件进行加密的时候,上述的信息只是加密过程中附带产生的一些物理量,这些物理量不会对加密提供任何好处,而天才的科研人员发现,利用上述信息,可以通过其他算法,揭示加密硬件上所使用的的秘钥。而利用这些物理量达到破解秘钥功能的方法就叫做侧信道攻击。

2、侧信道攻击现状:
1)、目前本人已知的侧信道攻击方法中,最常用的是功耗侧信道攻击,为什么功耗侧信道攻击最火呢?我的理解是,功耗信息中储存的真正有用信息比较多,因为硬件进行加密的时候,是一定会产生功耗,并且在加密的时候,功耗信息是连续的,对于一些友好的加密硬件,我们甚至可以清楚的看见加密的过程。

2)、除了功耗侧信道攻击以外,有一个比较高大上的侧信道攻击方法,即电磁侧信道攻击,利用加密芯片执行加密时产生的电磁信息进行秘钥破解,这种攻击方式甚至允许攻击者在相对较远的地方发起攻击,例如在取款机的外部,利用电磁攻击的方法破解取款机的秘钥,然后也许可以获得取款机的最高权限,这样你就能一夜暴富???
与功耗侧信道攻击相比,这种攻击方式允许黑客不对加密硬件进行任何加工,这样就可以避免大多数的加密设备的自身保护措施。

3)、除了两个比较流行的攻击方式,还有一些风扇攻击,利用电脑上提供散热的风扇转速等信息,破解正在进行的加密程序,具体名字忘了;还有色彩攻击(不知道这么称呼对不对),最近有篇论文提出的,对苹果6s的操作界面进行特征捕捉,利用获得的色彩等信息,破解手机执行的程序;声音攻击,很早以前有人写的,听键盘的敲击声还是打印机的打印声,猜测出正在输入的字是什么,这种攻击方式估计很难做到细致,因为声音如果嘈杂的话,应该破解准确率不高,还有,应用范围的问题,暂时我还没想到声音攻击的有意思的攻击场景;至于温度攻击,我也是似乎看到过一篇,具体是啥场景忘了,估计是利用温度变化来探测刚刚的操作是什么,比如手机的滑动解锁,根据温度残留,拍出红外图片,那么这也算侧信道攻击了。

3、 研究思路:
1)、研究的目的是希望攻击更加精细化,意思是,最好是根据侧信道攻击复现每一步想要知道的操作,甚至是下一步可能的操作,比如:上一步是输入了密码开机,下一步猜到目标的想法,是关机还是重启?那么其中一个可研究的点可以是,将侧信道攻击与行为预测结合起来,利用固有的信息来预测人得行为,这种方式可能是今后的热点。

2)、深度学习是当前的热点,那么将深度学习与侧信道结合起来,这种方法加速了侧信道攻击的效率,也扩大了深度学习的应用场景,对于智能开发来说,也是一个比较好的点子,最关键的是,利用深度学习的各种魔改网络,创新算法,我们能用很少的时间就可以对当前的侧信道进行一些推动,对于想要水毕业的研究生更是个好消息,用最新的深度学习成果应用到侧信道,对当前的工作有提高,这样就能水个毕业证了。

3)、学习侧信道还有另外一条路,就是从硬件出发。不管用什么算法,什么网络,基本上都是一个试错的过程,在这个过程中是需要一定运气的,那么,从硬件出发的话,就可以凭自己的努力去获得成果。因为硬件是加密的基础,如果把硬件了解的很透彻的话,再利用其它技术进行攻击,一定会事半功倍,当然了,硬件这个东西我自己没学过,但是有些大佬确实在这个方面很牛批,比如中科院的一个团队。

4)、目前我所知的都是通过一定的算法对加密程序进行攻击,或者是获得一定写信息,但是,获得的信息只是证明了存在侧信道攻击的可能性,并没有利用这一项技术做出点什么东西来,这就导致我们所做的工作都在PC端,这样对于硬件防护来说,不能提供具体的漏洞,那也增大了防护的难度。如果我们能利用某一个侧信道攻击,对一台装置进行攻击,攻击后,我们能获得目标设备的所有权限,或者想要的那部分权限,这样才算是将侧信道攻击从书上放到了地上,而这种技术就是我们进行研究的意义,不管是从黑客的角度还是防御的角度,纸上的东西终究还是看起来空洞了些。

5)、再来讨论一下功耗侧信道攻击。如果我是个黑客,我现在想要对一台设备进行攻击,我选择的是功耗侧信道攻击,那么现在有几个问题在我面前:
①我要怎么才能采集到目标设备的功耗?
②采集到的功耗数据是不是有用的?
③如果数据非常脏,我该怎么做?
④清洗后的数据我要对她干什么?怎么干?
⑤我获得我想要的信息之后我该怎么做才能扩大战果?
⑥有没有什么办法让我下一次再进入目标设备方便些的办法?
⑦我攻击完成了,过足了瘾,那么我会不会被发现,我该怎么做才能让我不被发现,防止别人对目标设备进行升级?

6)、实际在找工作的时候,就上面所述的基本能力只能获得一个白菜价,我们需要的还有加密算法的基本功,需要从加密的角度去考虑每一个细节,例如哪个步骤的信息可以使用?当现行流行的加密算法步骤,原理等烂熟于心的时候是可以获得更多的攻击灵感,也可以优化当前的攻击步骤。

有些同学可能在入门就遇到了困难,有以下几个信息可以考虑:
①有个DPA contest比赛,这个比赛主办方提供数据集,利用网站上的工具就可以对数据集进行基本的操作,那么初学者至少知道了侧信道数据是什么样的。
②github上有个叫ASCAD的,我觉得他是深度学习与侧信道结合的模板,想写论文的同学应该看看这个作者的一篇论文,题目叫《Study of Deep Learning Techniques for Side-Channel Analysis》,可能看起来有些困难,但是看完了就基本掌握了目前的一些攻击套路。
③国内有大佬写了一本关于侧信道攻击的书《密码旁路分析原理与方法 [郭世泽,王韬,赵新杰 著] 2014年版》,这本书也可以作为侧信道攻击的入门好书。或许还有其他的好书,可以找找,顺便分享给我。上述的一篇论文一本书。提取码:1234。

目前就这样,以后有想法再写。

你可能感兴趣的:(侧信道攻击,深度学习,安全,人工智能,数据挖掘)