这几个平台充斥着多量开源项目音信和解决各样主题素材的代码片段

对于开采者来讲,Stack Overflow 和
GitHub
是独一无二熟知可是的两大平台,这几个平台充斥着大批量开源项目消息和消除各个主题素材的代码片段。而就在目前,Palantir的
Java 开辟职员,也是
StackQflow(与编制程序相关的题指标问答网址)中排行榜最高的参预者之风姿罗曼蒂克  安德烈亚斯Lundblad 却承认,后生可畏段本身十年前写的代码,也是 Stack Overflow
上复制次数最多、传播范围最广的代码段均隐含八个荒唐。

依照,二零一八年刊出的大器晚成篇学术散文[PDF]明确了在网址上揭发的代码片段
Lundblad 是从 StackOverflow 提取的复制最多的 Java
代码,然后在开源项目中重复使用。

该代码段以人类可读格式(举例 123.5
MB)打字与印刷了字节数(123,456,789 字节)。读书人开掘,此代码已被复制并放置到 6,000 多少个 GitHub
Java 项目中,比别的任何 StackOverflow Java
代码段都多。

图片 1

而在上周揭橥的博客文章中,Lundblad 则确认,该代码存在欠缺,并且错误地将字节数转变为人类可读的格式。他意味着,在就学了学术散文及其结果过后,已再一次审视了代码。相同的时间再次翻开了该代码,并在其博客上公布了修正的版本。

STACKOVEOdysseyFLOW
代码临时包蕴安全性错误

据驾驭,尽管Lundblad 的代码段是存在三个零星的转移错误,仅形成文件大小估量稍有不规范,但状态大概恐怕会更糟。举个例子,该代码也许含有安全漏洞。固然如此做的话,那么修复全体易受攻击的应用程序将花费数月以至数年,使客商轻松碰到攻击。

实则,就算广泛感到从 StackOverflow
复制粘贴代码是多少个坏主意,但开垦人士照旧一直如此做。

2018
年的商商讨文展现了这种做法在 Java
生态系统中的布满水平,并公布了复制流行的 StackOverflow
答案的当先四分之二开垦人士甚至都不曾理睬其来源于。


StackOverflow
复制代码但尚无签订的软件开采职员,实际上对其余编码职员逃匿了他们早已在项目里面引进未经济检查核对查的代码的情景。

那听上去疑似三个过火警惕的宣示,但在
2019 年 十二月发布的另风姿洒脱项学术商量项目[PDF]体现,StackOverflow
代码段确实含有漏洞。该钻探杂谈在过去十年中在
StackOverflow 上发表的 69 种最风靡的 C ++
代码片段中窥见了入眼的安全漏洞。

钻探人口表露,他们在总共 2859 个
GitHub 项目中窥见了那 69 个易受攻击的代码片段,突显了三个谬误的
StackOverflow
答案如何对全部开源应用生态系统变成破坏。

楚天金报:

(文/开源中华夏儿女民共和国卡塔尔