当前位置 博文首页 > Python爱好者的专栏:程序员避免面向监狱编程攻略大盘点

    Python爱好者的专栏:程序员避免面向监狱编程攻略大盘点

    作者:[db:作者] 时间:2021-06-14 21:42

    ?

    2020年时间过得好快,转眼间白驹过隙般飞奔而去,而在岁末年初的当口,笔者在回顾这一年程序员世界的大事件后,突然发觉如何避免程序员面向监狱编程是个特别值得一谈的话题,这几天一款秒杀茅台酒的Python项目,突然在Github上火了起来,不过联想到年初Pandownload事件主角因贩卖不限速网盘APP而获罪的新闻,笔者不禁为这个项目的发起人略感到担心。

    当然避免面向监狱编程并不是普通程序员才要考虑的问题,9月末百度元老史有才被警方带走,可见就算你身居高位也无法保证安全。

    而部分公司权限分配不合理,加之程序员在工作期与单位已经发生不严重矛盾,这样的情况下极端的删库跑路事件也是时有发生,年初微盟的核心数据库2月23日19点被员工恶意删库,3月3日上午9点数据恢复正式上线。针对事故给商家造成的影响,准备了1.5亿元人民币赔付拨备金,其中公司承担1亿元,管理层承担5000万元。针对这一事件笔者在前文《耗明145小时弥补删库,血亏1.5亿元》中已经有所介绍了。

    如果说上述情况不算是无心之过,那么今年年初某个程序员因为接了个外包,帮别人写了个软件,结果软件涉赌而锒铛入狱456天的刷屏新闻,还历历在目,事件的当事人还在程序人生发表了整个事件的回忆录。所以看似被动的接外包其实也不安全。更遑论P2P公司暴雷,老板跑路了,但程序员背锅被抓,而中科大博士业余时间写“外挂”非法牟利被捕,诸如此类似乎也在说明程序员是个相当高危的职业。

    就算不去P2P公司,不接外包,不做外挂,只是业余时间写个开源软件也可能招致灾锅,去年年底,Nigix之父Igor Sysoev的前东家Rambler集团对Nginx提出了侵犯版权的诉讼,而被警方带走调查,Rambler声称Igor Sysoe在任职期间所有的开发成果均属于Rambler集团所有,因此该公司才是Nginx项目的合法所有人。业余时间的开源项目做得好被招妒忌这个还可以理解,而本本分分的完成职责内的开发任务也可能被杀了祭天,美团大数据杀熟事件以及年初原油宝负油价事件,技术原因和系统问题全部被定性为罪魁祸首。

    不过最吊诡的情况是在程序员疯狂掉坑背锅的同时,重大的信息安全事件也层出不穷,比如一个月前的感恩节期间,富士康在墨西哥的一家工厂遭受了名为 DoppelPaymer 勒索软件攻击,黑客在此之前偷窃了未加密的文件,进而在入侵之后对设备进行了加密处理。近日, DoppelPaymer 勒索软件在其勒索软件数据泄漏站点上发布了属于富士康的文件。泄漏的数据包括常规业务文档和报告。

    随后黑客要求价值3400万美元的比特币做为赎金,而美国司法部也在日期公布了黑客组织 Sandworm的材料,他们对于平昌冬奥会、2017年法国大选都发起过攻击。当然在这种大规模网络攻击上,美国安全部门也是十分的出圈,根据斯诺登的曝料2010年他们就进行过实验,利用 30 行代码炸毁了 27 吨的发电机。而民用设施的漏洞则更多了,他在 2010 年 Blackhat 大会一名来自于新西兰的程序员Jack公开演示了如何黑掉ATM机使ATM随意吐钱;随后Jack又在2012年的Blackhat大会上展示了如何攻击心脏起搏器和除颤器。

    那么,作为一个IT界的一员,如何避免这些坑呢?又如何在出现问题时尽可能的保护好自己呢。下面笔者就和各位共同探讨一下在这样一个"一半烈火,一半海洋"的大背景下,作为程序员如何避免面向监狱编程,而企业又如何尽量避免黑客攻击所带来的损失。

    使用IDaaS云身份认证系统为核心

    自2006年“云计算”概念诞生以来,企业上云浪潮席卷全球。由于企业上云后可灵活使用资源,扩展灵活易管理的业务模式,可提高资源配置效率,降低信息化建设成本。业界有说法是“系统上云后,硬件投入成本减少近2/3。?企业上云还能享受到的一大好处是基于硬件的数据安全能力。传统的数据安全产品大多基于软件实现的,而目前阿里云、微软、IBM三家都已经为客户提供了“可信执行环境”,这是一个基于处理器硬件保护的解决方案,通过软、硬件结合的方式防止数据运行时泄露的发生。云厂商具备的计算资源规模优势等先天条件,使得其可以借助加密计算等多种前沿技术来保证用户数据安全,以增强企业上云的安全性。

    不过令人遗憾的是很多企业上云之后还由于惯性沿用之前的身份认证系统,而传统身份认证体系最主要的认证方式就是“用户名、口令”,而微盟等删库事件之所以会发生,其根本原因就是采用传统的身份鉴别方式,因为用户名、口令的机制很容易由于人为因素或者制度安全体系的漏洞导致泄漏或者被猜测出来。

    IDaaS(身份即服务),才是云计算时代的身份识别和访问管理系统,它提供了单点登录、强大的认证管理、基于策略的集中式授权和审计、动态授权、企业可管理性等功能。而IDaaS的解决方案完全舍弃了用户名、口令的传统方式,IDaaS根据用户的登陆地点、时间及终端等等信息综合授予用户相应权限,并且还对用户对态调整,相较于传统安全外挂式、成本贵的缺点,优势十分明显:

    ?成本低廉、避免重复造轮子:传统安全方案需要企业需要采购几十甚至上百个安全产品才能初步建立企业安全体系,成本高昂不说,对于安全体系来说这也是一种重复建设的浪费。而?IDaaS作为一种云服务其成本优势不言而方

    传统安全模型是游离在IT体系之外的外挂式安全:企业在使用网络、存储、数据库等IT基础设施时,往往采购自不同的厂商,安全产品也有不同的品牌。于是只能在基础设施外部署相关的安全产品,做“外挂式的安全”。如何能让安全产品与产品间,安全产品与基础设施间做更好地联动?这对于传统安全厂商来说,是个较大的挑战。

    ?大幅降低使用门槛:之前安全产品俨然成了企业的“奢侈品”:企业光购买安全产品没有用,必须还得有专门的安全人员来使用才能真正发挥效果,于是线下安全厂商大多采用产品加服务的销售方式进行,由于无法构成相对联动的体系,导致企业需要招聘很多安全专业人员来专门运营,成本增大,导致大多数企业没有足够的专业安全人员来运营。而云安全也真正让云计算变成一种普惠科技走入千家万户。

    因此企业在全面触云之后,当务之急就是要将自身原有的安全认证体系升级到IDaaS平台,只有利用云安全产品,才能真正保证企业信息资产的安全。不过目前IDaaS领域还处在一片蓝海当中,目前向客户提供IDaaS集成服务的厂商只有阿里云,而可以支持单独提供IDaaS服务的也只有Authing身份云等有限几家初创企业,因此笔者这里也呼吁各大云厂商尽快将IDaaS服务集成到自身的云平台上,正如我们刚刚所讲,如何平衡安全与成本之间的关系,其实是摆在各行业面前的难题,而Authing身份云的IDaaS服务恰恰是解决此类问题的关键所在。

    多方安全计算客户隐私保护的关键

    前一段笔者在医院陪床,也叫过几次外卖,亲身感受到了外卖平台大数据杀熟的“壮举”,只要我将地点调整到距离医院仅十米之遥的小区,快递费就至少能省2元;类似的例子还发生在年中的池子事件,当时笑果文化为了调查员工的履约情况,从银行非法调出了池子的帐户流水,以上这些问题的发生让整个业务不禁要问有没有一种方法,让我们可以在不暴露自己身份的情况下先获得快递费用的定价,或者在不获取员工银行流水的情况下,对于员工异常行为进行有效监测。

    当然按照巨头们的说法,放弃自己的隐私以换取便利是生活在当这个时代所必然付出的代价,不过这个问题早在40年前就在学术界进行过讨论了,1982年,两个百万富翁在不泄露财产的情况比富的问题就被提出,1986年此题就被图灵奖获得者,清华姚班的创始人姚期智教授所解决了。而两富翁比富问题也就是多方安全计算的雏形了。
    ?

    近期区块链技术的加持下,多方安全计算发展趋势迅猛。由区块链构建的数据价值交换经济生态,已经成为多方安全计算的算法底座,其中交换标的物是数据资产的使用权,交换媒介是基于隐私计算技术的数据价值交换网络,参与者是数据的供应方和需求方。最终,区块链技术可以来保存各种数据交易记录,让整个交易过程清晰可见并可追溯,并以它为基础来实现数据的计量计价,以及探索未来的各种基于场景或贡献度的数据计价。通过隐私计算和区块链技术结合,所有业务参与方可以合规、合法和可持续地把有价值的数据引入到安全计算的厂景中。

    正是在这样的广泛应用前景之下,Gartner预估三年之内数据要素市场可以有10倍的增长,成为一个千亿级别的市场。不过多方安全计算既要求有强大的互 联网技术背景,也要充分理解传统行业的运行逻辑,因此这个领域内其实玩家更少,尤其是考虑到多方安全计算从短期看对于巨头的数据垄断是不利的,因此这个领域也就成了巨头不愿意做,而初创企业又做不来的局面。

    目前从笔者看到的情况看,多方安全计算领域内蓝象智联的GAIA系列产品,已经具备高安全、高精度、高可用的特点,方案已经成熟可以商用。目前蓝象智联推出了两个产品系列,分别是数据安全计算节点GAIA EDGE以及一站式联邦学习平台GAIA CUBE。其它成熟的商用方案还不是很多,因此这里希望未来可以通过多方安全计算产品,让整个数据要素市场可以得到健康、合规的发展。

    划定底线,涉挂,涉黄,涉赌坚持不碰

    除了上述给整个行业的建议外,下面我们来简单谈一下具体到我们每个程序员如何避免自己踩坑,首先要着重强调的是底线千万不能碰。当然可能也有人会拿菜刀无罪的说法来辩白,写个软件我也不知道最终会被用在何处,为此笔者咨询专业人士,得到的结论是,刑事责任关注要看当事人是否有主观故意。

    根据《最高人民法院、最高人民检察院、公安部关于办理网络赌博犯罪案件适用法律若干问题的意见》中关于网上开设赌场共同犯罪的认定和处罚规定:

    明知是赌博网站,而为其提供下列服务或者帮助的,属于开设赌场罪的共同犯罪,依照刑法第三百零三条第二款的规定处罚:

    也就是说,如果作为程序员,只要你知道自己写的代码将被用于赌博,或者其它明知道是违法或者可能违法行为的情况下,继续为其提供技术支持,都是可能触犯刑法的程序员一定要远离du博、S情以外这里还要特别说明一下P2P和外挂,也必须第一时间撇清。

    P2P:前段时间,有脉脉用户发帖称"P2P公司暴雷,前端程序员被捕

    对于这种做互联网金融的企业的程序员,需要多多了解一下自己公司当前的主营业务是否合法。是否涉及到非法集资违法行为,如果有这个苗头还是趁早远离

    外挂:在我国的司法定义中,外挂是指利用电脑技术针对一个或多个游戏,通过改变软件的部分程序制作而成的作弊程序。制作贩卖游戏外挂也是会受到我国司法机关打击的犯罪行为。

    根据开发者制作的不同的外挂类型,以及使用方式等,根据以往案例,可能触犯非法经营罪、破坏计算机信息系统罪以及侵犯著作权罪等。

    有所爬,有所不爬方能自保

    根据最新的流量分析,互联网40%左右的流量都是机器人也就是爬虫发起的。而有关爬虫的法律问题,笔者特意咨询了单位法务部门的同事,根据我国的《刑法》、《网络安全法》的规定,爬虫可能涉及到的犯罪行为有如下情况:

    1.首先侵入国家事务、国防建设、尖端科学技术领域的计算机信息系统的,不论情节严重与否,构成非法侵入计算机信息系统罪。

    2.违反国家有关规定,向他人出售或者提供公民个人信息,构成“侵犯公民个人信息罪”。也就是说通过出售个人信息获利或者侵入含有国家机密的系统均会构成犯罪,但这两种情况均不会是无心之过,但是以下规定需要格外注意。

    3.违反国家规定,对计算机信息系统功能进行删除、修改、增加、干扰,造成计算机信息系统不能正常运行,后果严重的,构成犯罪。也就是如果使用爬虫的抓取力度过大,造成被攫取的网站无法正常运行的情况,并造成严重后果的也会构成犯罪。我们前文所述巧达科技的程序员也是因为爬虫流量太大,造成目标网络接近瘫痪,而涉嫌触犯此条被捕。

    另外为避免其它民事纠纷,要尽量遵守Robots 协议。Robots 协议是一种存放于网站根目录下的 ASCII 编码的文本文件,它通常告诉网络搜索引擎的漫游器也就是爬虫,此网站中的哪些内容是不应被爬虫获取的,哪些是可以被爬虫获取的。严格按照 Robots 协议 爬取网站相关信息一般不会出现太大问题。

    因为司法实践中一般也会考虑行业的通行规范,因此一般遵守Robots 协议得到的信息不会被认为是商业机密或者个人隐私数据。或者说遵守协议所得的信息即使涉密其泄密责任一般也不会由爬取方承担。

    全面增强版权保护意识

    2018 年,北京市公安局通报了一起私自开通公司多个重要技术项目访问权限,下载公司独立开发的三个项目源代码并倒卖牟利的案件。

    根据通报称陈某在离职前夕,通过非法手段提高自己系统操作权限,从而获取全部的核心代码,并通过自己的账号进行下载,离职后将代码带出,倒卖获利八百万元。这里需要指出的是,程序员在工作时间开发的代码版权是完全属于所在单位,把自己开发的源代码拷回家是一件非常危险的事情,而相关案例更是屡见不鲜。

    2010 年,著名的跨国银行控股公司高盛的一名程序员因窃取了投资银行高频交易系统源代码而获刑。2012 年,一名 32 岁的中国籍程序员 Bo Zhang 在纽约被警方逮捕。因为他被控盗窃了“Government-Wide Accounting and Reporting Program(GWA)”的源代码,GWA 所有权属于美国财政部,开发成本约 950 万美元。因此笔者这里再次提醒大家造成不要把公司的源代码拷回家,一旦泄露后果非常严重。

    当然除了咱们程序员个人要重视版权,这里笔者还要呼吁我们的IT公司也要重视版权保护。近日中国电子书厂商Oynx拒绝开源其基于Linux 内核修改的设备源码,而这一做法明显违反了Linux的GPL协议。因此在Reddit社区引发了开源软件如何在中国维权的大讨论。

    凭心而论我国阿里、腾讯、百度等大厂近些年来在开源方面贡献都很大,Oynx拒绝开放源码的行为也纯属是个例,不过这次风波也明显带有了中国的地域性瑟彩,毕竟好事不出门,坏事传千里,即使我们开源了飞浆、RocketMQ等多个优秀的开源软件,也无法对冲不遵守开源规则所带来的恶劣影响。

    之前开源的视频编码项目FFMPEG,就因有企业使用其代码但并未遵循 LGPL/GPL 许可证的规定,而使用“耻辱柱(Hall of Shame)”的方式来公示那些违反 GPL 许可证使用FFMPEG代码的其公司,其中有很大一部分是中国的知名企业,为此整个业界也都欣起了轩然大波。

    而最近笔者发现国内最早的开源操作系统项目MiniGUI也发布了例外清单,https://www.fmsoft.cn/exception-list对某些未遵守GPL协议的公司进行了例外处理。虽然这些还没有升级成我国IT界与开源社区的冲突,但是笔者还是要呼吁业界,在在使用开源软件的时候一定要注意遵守相关规则。我们IT各界也要重视知识版权。

    最后笔者想说这次盘点只是各位程序员能有相应的自我保护意识,坚守底线就可以保证安全,而IT企业也要积极运行新晋的云安全技术来提升自身的风险抵御能力,如此互动才能让我们的安全环境越来越好!

    下一篇:没有了