开源运动是否走到尽头?--谈谈怎样看待OpenSSL心脏出血

15-03-16 windshome
              

开源运动是随着Linux操作系统的诞生和广泛被使用而逐步被人们所接受的,对软件产业和IT产业来讲,是一个重大变革。开源运动,建立了一种新的模式。这种模式应该是更加积极,促进IT产业和软件产业发展的。

OpenSSL是开源代码中,最最广泛被使用的开源库,最初是以Eric Young以及Tim Hudson两人所写的SSLeay为基础所发展的。

近些年,随着互联网的发展,OpenSSL也遇到了很多问题,爆出了很多bug,别的不说,就只看去年的“心脏出血”吧,我以前一直没有怎么关注,近期看了看,也就是一个C语言不检查数组长度和copy内存引起的,应该也算不大多么大的问题。

关键问题不是这个漏洞技术分析本身,而是这个深思这个漏洞,我们能够发现几个方面的问题:

1、敷衍了事的设计或根本没有设计

C语言不检查数字长度,内存copy不慎重的话容易导致缓冲器溢出问题,这个问题多少年了?OpenSSL还在使用最最危险的C库函数。难道是他们不了解C语言的这一特性吗?作为一个被如此广泛使用的基础性的软件,理所应当经过认真的分析和设计,考虑到这些情况,设计和编码经过严格的review。之所以还是存在这样的漏洞,是为了什么?

..............

后续内容没有继续贴过来,请有兴趣的朋友参见 http://windshome.iteye.com/blog/2192830