写点什么

我的开源代码被大公司盗用后:有人承认,有人让我滚

  • 2022-08-12
    北京
  • 本文字数:2734 字

    阅读完需:约 9 分钟

我的开源代码被大公司盗用后:有人承认,有人让我滚

自己辛辛苦苦写的代码被他人不声不响拿去商用卖钱,这对很多人来说都是非常恼火的事情。最近,业界资深网络安全专家 Patrick Wardle 在 Black Hat 的分享中讲述了自己的开源代码在不被告知的情况下被至少三家独立公司使用的事情。

至少被三个不同的公司“盗取”代码

 

Patrick Wardle 是非常优秀的 macOS 安全研究人员,也是苹果公司重点关注的 OBTS 安全会议组织者。他还是专为 macOS 创建开源安全工具的非营利组织 Objective-See 基金会的创始人,这意味着 Wardle 的许多软件代码现在可以免费下载和修改,但这也使自己的代码未被允许就被一些科技公司拿去了,他也是在多年后才发现的。

 

Wardle 以 Mac 恶意软件专家而闻名,曾在国家安全局担任恶意软件分析师一职。在此期间,他分析了攻击国防部计算机系统的代码,并创建了可以查看摄像头和麦克风是否被恶意软件操纵的 macOS 工具OverSight,并通过 Objective-See 免费发布了该工具。

 

当时是 2016 年,媒体曝出网络犯罪分子使用恶意软件通过用户的 macOS 网络摄像头和麦克风秘密监视人们。其中,一名黑客使用了一款名为“Fruitfly”的恶意软件劫持了笔记本电脑的网络摄像头,目的是监视儿童。在对新病毒进行了数月的分析后,Patrick Wardle 解密了部分代码并设置了一个服务器来拦截来自受感染计算机的流量。

 

然而几年后,Wardle 为客户分析可疑代码时,在客户自己设备上的一个工具中发现了问题。该工具由一家大型科技公司开发,提供了与 OverSight 类似的功能,包括监控 macOS 网络摄像头和麦克风。

 

通过筛选程序,Wardle 找到了他非常熟悉的代码,他的整个“监督”算法,包括他未删除的 bug,都包含在这个程序中。他终于意识到,某个开发人员对他的工具进行了逆向工程,窃取了他的成果,并将其重新用在了一个名字不同但功能几乎相同的产品中。

 

“就像有人抄了你写的东西,还把你的拼写和语法错误也抄了过去。”Wardle 说道。后来,Wardle 的客户立即联系了该公司,提醒了他们的开发人员窃取了 Wardle 的代码。



这并不是 Wardle 最后一次发现有公司使用他的代码。后来, Wardle 发现还有两家大公司也分别在自己的产品中使用了他的算法。Wardle 没有透露这些公司的名字。

 

“你联系到这些公司,并说:‘嘿,你们这些家伙,大部分都是偷的我的东西。你对我的工具进行了逆向工程并重新实现了算法——这在法律上非常......呃,是灰色的。但在欧盟,有一条规定你这样做是违法的。我有一个非营利组织,你实际上是从非营利组织中窃取了信息,并将其放到了你自己的商业代码中,然后从中获利。这十分不合适。”Wardle 说道,“但这些公司回应的态度都不一样。”

 

“有的回复很友好,我有次收到了一个 CEO 的回复邮件,承认了这一点并询问如何解决这个问题。但有人先是回复我说需要三周的内部调查,之后便向我表示没有看到任何相同的代码,让我滚。”Wardle 说道。遇到后者时,Wardle 不得不需要更多证据。

证明盗窃代码很难

 

但实际上,证明对方代码是盗窃来的非常难。Wardle 表示,他必须使用自己的闭源软件并采用逆向工程来了解那些公司的代码是如何工作的,并证明那些代码与自己的相似。此外,Wardle 还与为独立安全研究人员提供无偿法律服务的非营利性电子前沿基金会 (EFF) 合作。

 

Wardle 能够弄清楚是否为盗窃代码是因为他自己既编写工具又编写逆向工程软件,同时掌握这两门专业知识让他更容易找到证据。但像 Wardle 一样拥有这种技术背景,同时在社区还有一定影响力的开发者并不多,在维护权益方面常常处于弱势。

 

在去年,一位名叫 Brendan Gregg 开发者公开了自己写的 DTrace 项目相关开源代码被 Sun 公司“偷走”的往事。那是更早的 2005 年,Gregg 忙着编写和发布 DTrace 相关的高级性能工具,然后发现 Sun 公司发布的相关工具竟然比自己发布的还少。

 

Gregg 不是 Sun 的员工,不清楚公司内部运作,但他还负责为 Sun 提供培训与咨询支持。有一次,Sun 为其演示了基于 DTrace 打造的新产品,也就是在这个过程中,Gregg 发现其中一些工具是自己编写的脚本,而且这些工具非常不成熟,是自己当年随手写了就对外开源的,里面有很多奇怪的组合,个人风格强烈。Gregg 还发现,Sun 还把他作为作者的名字删掉了。但最后 Gregg 也没有得到什么补偿。

 

相比 Sun 公司的行为,苹果和甲骨文的做法就让 Gregg 舒服很多。Gregg 表示,几年后,苹果把他几十款工具添加进了 OS X 系统中,并完整保留了作者的姓名、版权以及 CDDL 开源许可证,甚至还对功能进行了改进与增强。多年之后,甲骨文在 Oracle Solaris 11、BSD 社区在 FereBSD 上也采取了同样的开源成果吸纳方式。

 

事实上,这样盗用他人开源代码为自己谋利的案例有很多。去年,特朗普支持的社交媒体平台 Truth被 Mastodon 创始人告上法庭。Mastodon 的创始人 Eugen Rochko 称,该应用程序称从自己的开源项目中提取了大量代码。当时,网友们发现 Truth 测试版的界面与 Mastodon 基本相同,而且该网站的部分代码与其他社交网络的代码没有任何差异。

 

特朗普媒体与技术集团 (TMTG)此前还称 Truth 为“专有软件”,并试图隐藏 Truth 基于 Mastodon 的事实。这件事情被曝光后,其相关股价随之大跌。

 

结束语

 

事实上,开源软件本身允许其他平台使用自己的代码,但开源软件的许可证要求使用者将他们的源代码和做的任何修改提供给公众。但很多公司在使用了代码之后没有任何说明。

 

Wardle 认为,导致这种现象的本质是开发人员的任务就是找到某种解决方法,比如监控麦克风和摄像头,然后他们就找到相应的工具进行逆向工程并窃取算法,而公司的目的就要解决方案,并不会追问代码的来处。

 

“我相信这是一个系统性问题,因为当我开始寻找时,我不是只找到了一个,而是好几个,这些公司还都完全不相关。”Wardle 认为代码盗窃的做法非常普遍。

 

对此,Wardle 建议,对于软件开发人员来说,任何编写代码(无论是开源代码还是闭源代码)的人都应该假设它会被盗,并学习有助于他们发现这种情况的技术。对于公司而言,管理者应该教育员工或开发人员不要偷窃,并让他们认真了解围绕对一个产品逆向工程以获取商业利益的法律规范,否则将整个组织将面临法律风险。

 

此类事件的发生也在不断提醒人们,一定要规范使用开源软件的代码,否则对公司名誉、实际利益都没有好处。

 

参考链接:

https://gizmodo.com/black-hat-what-to-do-big-tech-company-steals-your-code-1849378076

https://www.theverge.com/2021/10/29/22752850/mastodon-trump-truth-social-network-open-source-gab-legal-notice

https://mp.weixin.qq.com/s?__biz=MjM5MDE0Mjc4MA==&mid=2651083118&idx=1&sn=d42542f5c8ad7bb6caad49c21d637711&chksm=bdb9a93d8ace202b16aca5fa85b6fcc29401badb132bc442ec40b4bd785db58f7f4ea514455d&scene=27#wechat_redirect

2022-08-12 14:4711529

评论 2 条评论

发布
用户头像
既然开源就该默认代码会被随意抄袭。不过抄袭者应该完整保留作者的姓名、版权以及 CDDL 开源许可证,这是做人的道德。
2022-08-13 08:43 · 浙江
回复
每个开源项目遵循的license都是不一样的,要求也不尽相同
2022-08-21 17:31 · 北京
回复
没有更多了
发现更多内容

AI数字人的测试

北京木奇移动技术有限公司

AI智能体 软件外包公司 AI数字人

【HarmonyOS】关于鸿蒙原生使用原生相机实现扫一扫功能

走向菜鸟的菜鸟

鸿蒙 HarmonyOS ArkTS HarmonyOS NEXT 实践分享

【HarmonyOS】鸿蒙原生实现3DTouch快捷方式

走向菜鸟的菜鸟

鸿蒙 HarmonyOS ArkTS HarmonyOS NEXT 实践分享

【HarmonyOS】鸿蒙原生分享之“碰一碰”分享(APP内实现)

走向菜鸟的菜鸟

鸿蒙 HarmonyOS ArkTS HarmonyOS NEXT 实践分享

APP的开发方式及特点

北京木奇移动技术有限公司

APP开发 软件外包公司 APP开发公司

SvelteKit 最新中文文档教程(7)—— 构建和部署

冴羽

vue.js 前端 React Svelte SvelteKit

美通社母公司Cision联合PRWeek发布《2025企业传播报告》

财见

MHP和慕尼黑LMU发布《2025年工业4.0晴雨表》

财见

【HarmonyOS Next】鸿蒙应用弹框和提示气泡详解(一)

GeorgeGcs

ios android 鸿蒙 HarmonyOS OpenHarmony

陌陌IDC Redis如何基于阿里云DTS实现云上容灾

童子龙

redis 底层原理 数据同步工具 容灾备份

KWDB 开源社区走进南开大学

KaiwuDB

KaiwuDB 校园 学校

2025企业财务数智化峰会·湖南站,在长沙成功举办!

用友智能财务

AI 财务 数智化 会计

人效评估管理系统(源码+文档+讲解+演示)

深圳亥时科技

【HarmonyOS】鸿蒙原生实现应用间跳转之Deep Linking

走向菜鸟的菜鸟

鸿蒙 HarmonyOS ArkTS HarmonyOS NEXT

英伟达黄仁勋GTC演讲,算力和数据等基础设施驱动AI蓬勃发展

PowerVerse

算力 AGI DePIN GTC2025

JimuReport与deepseek结合,颠覆现有BI模式

JEECG低代码

数据分析 数据可视化 积木报表 报表工具

月暗推出音频模型 AudioX:任意内容生成音频和配乐;开源 TTS 模型 Orpheus,可生成叹息、笑声等非文本线索丨日报

声网

【HarmonyOS】关于鸿蒙原生项目多环境的配置和管理

走向菜鸟的菜鸟

鸿蒙 HarmonyOS ArkTS HarmonyOS NEXT 实践分享

BOE(京东方)携手京东发起百吋电视品牌联盟发布会 引领家庭视听正式迈入大屏时代

科技热闻

Intel 18A双引擎:RibbonFET搭配PowerVia如何提升芯片性能

E科讯

Veritas NetBackup 11 for Linux & Windows - 领先的企业备份和恢复解决方案

sysin

NetBackup

【HarmonyOS Next】鸿蒙中App、HAP、HAR、HSP概念详解

GeorgeGcs

鸿蒙 HarmonyOS NEXT HAP HSP HAR

【HarmonyOS】鸿蒙原生实现应用间跳转之App Linking

走向菜鸟的菜鸟

鸿蒙 HarmonyOS ArkTS HarmonyOS NEXT 实践分享

HUAWEI Pura X瞩目首发,华为游戏中心携手伙伴重塑鸿蒙游戏体验

最新动态

StarRocks 主键(Primary Key)深度解析

镜舟科技

数据仓库 数据分析 分析型数据库 物化视图 StarRocks 主键

“全球金牌课程”5月17-18日·上海线下·CSM认证【提前报名特惠】CST导师亲授

ShineScrum

敏捷 CSM认证 CSM认证培训

Second Me:在 AI 中保留自我的火种丨社区来稿

声网

鸿蒙相机开发实战:从设备适配到性能调优 —— 我的 ArkTS 录像功能落地手记(API 15)

李游Leo

HarmonyOS

【HarmonyOS】关于鸿蒙原生实现红包雨效果的方案设计

走向菜鸟的菜鸟

鸿蒙 HarmonyOS ArkTS HarmonyOS NEXT 实践分享

海信激光电视探索X1亮相AWE 2025 重塑家庭观影新标准

新消费日报

原生APP开发的成本

北京木奇移动技术有限公司

APP开发 软件外包公司 APP外包公司

我的开源代码被大公司盗用后:有人承认,有人让我滚_开源_褚杏娟_InfoQ精选文章