首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  程序员

大家公司里都有什么样的措施来防止代码泄漏?

  •  
  •   v2girl · 2017-03-01 08:33:19 +08:00 · 12718 次点击
    这是一个创建于 985 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我想知道目前防代码泄漏的措施都到什么地步了。
    93 回复  |  直到 2017-03-18 08:57:02 +08:00
        1
    lusyoe   2017-03-01 08:46:30 +08:00 via iPhone
    一大堆手段,比如什么不接外网,不给 USB 接口,远程登陆服务器虚拟机开发,代码后缀名文件如·java 创建的时候直接加密,即使上传了也是乱码。这些都经历过。求补充…
        2
    paulagent   2017-03-01 08:51:34 +08:00   ♥ 1
    大公司指的是 google FB 这类还是老牌 ms , ibm , hp 之类,或者混合型如 apple 。 起码我看到的新闻, google 并没什么特别措施,他们家 20 亿行代码存在一个 repo 里。工程师都能访问,只有极少数代码是需要高级别人员才能访问。 你想偷先得花时间研究明白代码到底在哪里。 另外投了这种代码又有什么用? map reduce 这个代码你拿到 google 原版和 hadoop 来跑有什么区别?如果有兴趣可以看看 acm 的文章,讲 google 家代码的

    至于 ibm 和 hp 这类有硬件类的,防止泄密的都差不多,物理隔绝,不让带移动存储等等。发现有人泄密,花巨额律师费也要把这人送进监狱,以儆效尤。 总之就是胡萝卜加大棒。
    apple 家不懂

    http://cacm.acm.org/magazines/2016/7/204032-why-google-stores-billions-of-lines-of-code-in-a-single-repository/fulltext
        3
    sagaxu   2017-03-01 08:51:37 +08:00
    没保护,笔记本都可以带回家
        4
    paulagent   2017-03-01 08:52:28 +08:00
    看错了,请忽略我的回复
        5
    hnbcinfo   2017-03-01 08:53:05 +08:00   ♥ 1
    让大家把代码写的奇烂无比,泄露了也看不懂。
        6
    janxin   2017-03-01 09:00:21 +08:00 via iPhone
    除了部分核心安全代码,其他所有代码公司内均可查阅 review
        7
    stormpeach   2017-03-01 09:05:39 +08:00
    保密协议,底层代码对应用层只提供接口
        8
    mringg   2017-03-01 09:06:24 +08:00 via iPhone   ♥ 3
    说的就像那么多垃圾代码有人用似的
        9
    v2girl   2017-03-01 09:07:12 +08:00
    @lusyoe 不接外网如果要 yum install 怎么解决?
        10
    acvrock   2017-03-01 09:09:05 +08:00
    没什么特别的保护,只有一些关键账号证书不公开,只有少数人知道
        11
    nicevar   2017-03-01 09:09:08 +08:00
    核心部分代码能看到的就那几个人,其他的人都没有权限,只有接口可用
        12
    Citrus   2017-03-01 09:11:05 +08:00 via iPhone
    各种蛋疼措施。唉。。。
        13
    keinx   2017-03-01 09:12:18 +08:00
    泄露了又能怎么样,不是你拿到人家代码就能颠覆人家的,所以没啥用
        14
    yuyongji1987   2017-03-01 09:12:35 +08:00
    随便拿,弄明白那些垃圾代码是干啥的,算你厉害
        15
    yohole   2017-03-01 09:14:22 +08:00
    规则都是防君子,防不了小人
        16
    changwei   2017-03-01 09:18:04 +08:00 via Android
    @v2girl yun install 以及其他的依赖管理工具可以做内网镜像,速度也比国内直连快。
        17
    v2girl   2017-03-01 09:26:28 +08:00
    @changwei ,不接外网和杜绝 USB 是根本办法,但有时候难免要查网上的资料,如何解决?另外蓝牙有些人要用鼠标,不禁用也可以通过蓝牙传。
        18
    lusyoe   2017-03-01 09:29:03 +08:00 via iPhone
    @v2girl 你是说服务器安装软件是吧?一样不能 yum 不过可以插 USB ,自己下 RPM 包或者源码编译解决
        19
    v2girl   2017-03-01 09:31:15 +08:00
    @lusyoe ,我说的是员工自己在个人电脑上安装软件,毕竟每个人要用的工具偏好不同。如何让员工拿到自己想要的工具但又把外网给断掉,这是矛盾的。
        20
    xbotter   2017-03-01 09:31:16 +08:00
    多分几个代码仓库而已。
        21
    j4fun   2017-03-01 09:32:50 +08:00
    垃圾代码谁用谁知道。。。工作做的是经验,不是那点垃圾代码。。现在随便一个弄的好的开源程序都比公司的代码好一百万倍。
        22
    viator42   2017-03-01 09:33:11 +08:00
    @v2girl 可以在内网自己创建源
        23
    ivvei   2017-03-01 09:35:58 +08:00
    @v2girl 多几台电脑就行了。一台连外网查资料,一台只能内网开发。工具?你要什么工具?
        24
    paulagent   2017-03-01 09:36:08 +08:00
    @v2girl 我知道的是搞一台机器能上网,谁需要上网就去那个屋子里单独上网,查完资料再回到自己的机器
        25
    LINAICAI   2017-03-01 09:36:37 +08:00
    除了 git 、 svn 的账户、权限,都不设限,得靠职业道德,另外没有服务端,拿了没用啊。
        26
    rocksolid   2017-03-01 09:44:52 +08:00
    @v2girl 一般都是禁掉邮箱,网盘
        27
    tonghuashuai   2017-03-01 09:49:17 +08:00
    没保护,甚至上家公司的代码完全开源在 github (除核心业务)
        28
    recall704   2017-03-01 09:50:53 +08:00   ♥ 1
    大家都那么忙,谁有时间看你的烂代码。 逃
        29
    depress   2017-03-01 09:51:44 +08:00
    云开发平台,除了照相,无解╮(╯▽╰)╭
        30
    forestyuan   2017-03-01 10:01:51 +08:00
    技术上控制是一方面,还要来点法律措施,比如签个保密协议之类的
        31
    anheiyouxia   2017-03-01 10:20:47 +08:00 via Android
    全公司 Windows ,域管理。
    不能用 U 盘,不能直接上网,必须要 3389 到 4 台服务器上才能上网,这 4 台服务器每个星期随机分配。上传下载都必须通过 NAS 中转,而 NAS 上有扫描程序,每分钟扫描备份,发现特定后缀都会报警(发邮件通知部门主管、老板[香港人]、运维、安全部门主任),运维每个星期都会复查这类文件。

    安装或者使用任何软件必须写一个备案表,每个星期检查电脑上面装了什么用了什么。以前还不允许使用盗版软件、破解版、绿色版、各种修改版,现在买不起太多,就不理了。

    电脑断网监控、想通过接自己的路由的话,断网就被发现了(因为太多人有事没事重启电脑,现在这条没用了)。

    到处都是摄像头,不能带电脑、笔记本等东西进出公司,
    如果京东买的那些到公司的,必须要到前台写放行条(●°u°●)​ 」,还要说明为什么
        32
    darrenfang   2017-03-01 10:28:19 +08:00 via iPhone
    今天刚有同事离职,我还没告诉他不要把代码泄漏了,后来想想这些代码写得很烂,无所谓了,有空闲时间我整理下传 GitHub😅
        33
    itqls   2017-03-01 10:36:29 +08:00
    我们小公司没怎么管。。。
    现在我想想,这代码我拿出去也没什么卵用,太小众了。
        34
    laiyingdong   2017-03-01 10:42:02 +08:00
    理论上来说只要你能接触到代码就没有办法完全阻止泄露的可能性,但提高相关操作的成本还是可行的 要不你把代码背下来?
        35
    hfl1995   2017-03-01 10:54:06 +08:00
    so
        36
    hekunhotmail   2017-03-01 10:56:09 +08:00
    代码不值钱, 还有你入职签的保密协议你以为没啥约束效果吗?
        37
    zuotech   2017-03-01 10:56:59 +08:00
    开发人员远程虚拟机开发, 虚拟机的的东西只能进不能出, 要出必须通过高层审核通过,全员机器加密, 所有拷出的东西加密
        38
    irenicus   2017-03-01 11:16:45 +08:00
    物理隔离,不只是因为代码要保密 :-)
    半导体行业软件的 license 比较贵,所以绝大部分公司都用的盗版,如果被 EDA 软件公司的人发现了要给钱,哈哈

    据说海思之类的大公司也是买几个正版 license ,然后自己搞一大堆盗版的 license 用,有问题了还能找技术支持
        39
    zyzrichard   2017-03-01 11:19:47 +08:00
    @irenicus AD 么哈哈哈~~
    我们的硬件图纸什么的都在内网, PCBdoc 可以拷出来给厂家制作。
    剩下的基本上都是各种报告和验证之类的。。。现在都在自己的电脑里。
    虽然第一页上都有版权声明吧。。。。。
        40
    HmyBmny   2017-03-01 11:21:36 +08:00 via Android
    @v2girl 建个源就行了
        41
    HmyBmny   2017-03-01 11:23:38 +08:00 via Android   ♥ 1
    @v2girl 用手机浏览看到就直接点回复了,楼上的同学已经回答了
        42
    curiosity1901   2017-03-01 11:23:56 +08:00
    把代码写的要多烂有多烂,一般人都望而却步,以此达到放泄露的目的。
        43
    zkd8907   2017-03-01 11:27:45 +08:00
    给的钱够多+劳动合同
        44
    jarnanchen   2017-03-01 11:55:50 +08:00
    以前公司,外企,靠法律。泄露机密的人会被告到底。
        45
    treedon   2017-03-01 11:56:50 +08:00
    只有一款软件 EIS 终端
    代码不能复制到 QQ 聊天框里
        46
    anthow   2017-03-01 11:57:23 +08:00
    云内开发,只能进不能出,代码垃圾得成狗屎,谁有病才要这代码,不行了,我先吐一会
        47
    TuxcraFt   2017-03-01 12:16:47 +08:00
    除了核心代码 其他代码 各种限制 我觉得是老板或者管理有心理疾病……
    这些垃圾代码谁会看?
        48
    hasbug   2017-03-01 12:54:03 +08:00
    目前没保护(但他们应该想保护),我用自己的笔记本。
    公司电脑配置不给力,怪我咯。
        49
    chairuosen   2017-03-01 13:02:25 +08:00
    严格来讲,回答了这问题,也算泄密吧
        50
    dalynama22123   2017-03-01 13:10:27 +08:00
    垃圾代码,除了安全相关的,几乎没有价值
        51
    vttc   2017-03-01 13:16:57 +08:00
    没办法 , 不怕贼偷,就怕贼惦记
        52
    Juwan   2017-03-01 13:42:27 +08:00
    @darrenfang 你必须得整理下才能上传到 github 上呀,这个可是你的 github 门面呀
        53
    diffworld   2017-03-01 13:47:41 +08:00
    @v2girl 只能下载不能上传
        54
    wupher   2017-03-01 14:41:00 +08:00
    不防止,其实真心没意义。

    在上上家公司时,还说服同事,直接把项目代码打包送给兄弟部门(他们也做类似业务)。结果呢?谁愿意看啊,还指望大家一起完善成一个标准项目框架呢。

    可重用性高的系统级代码(不牵涉具体商业业务与安全),尽量考虑开源,没准还能碰上爱好者帮助审计和完善。当然,了了无已也是事实。

    据说全 Google 用一个大 Repo ,作为 Google 的雇员你能看所有的公司代码。 So, what. 这样你就自己 copy 个搜索引擎公司,然后打败 Google 么?
        55
    tilv37   2017-03-01 14:45:45 +08:00
    @lusyoe 我司与你说的一模一样。。。尤其是后缀名相关文件加密,搞得有时候我 IDE 都打不开代码文件
        56
    dongoo   2017-03-01 14:48:02 +08:00 via Android
    @diffworld 貌似这不可能吧,发送下载请求也是上传数据啊?
        57
    kxind   2017-03-01 14:52:05 +08:00
    代码像坨屎就自然不用泄露了 。。。。 233333
        58
    v2girl   2017-03-01 14:59:02 +08:00
    @zuotech ,如果 100 个员工就开 100 个虚拟机么?
        59
    v2girl   2017-03-01 15:06:19 +08:00
    @anheiyouxia ,既然 3389 到远程桌面,我登陆一个网页邮箱发送文件,你如何能知道?
        60
    scratbai   2017-03-01 15:08:40 +08:00
    真不需要保护呢
        61
    meathill   2017-03-01 15:09:36 +08:00
    这种事情没法一概而论的。

    比如前司,对代码产品化不是很在意,我离职前,领着交接人把代码在新机器上装了好几遍,每次都得好几天才能跑顺。这还是我自己写的代码,我自己去装。这种代码,给大家大家都懒得看。

    但是有些公司,尤其是做金融军工之类的,他们不是怕代码被别人用,而是怕被攻击。所以只能登录到开发机,不能上网不让插 U 盘都是很正常的。
        62
    otakustay   2017-03-01 15:20:27 +08:00
    除非核心如加密算法之类的,其它的我们根本不怕代码泄露,拿了你也跑不起来,跑得起来你也没客户
        63
    mysterin   2017-03-01 15:33:00 +08:00
    啊,代码需要保密?就我这水平接触的代码基本都是靠网上搜索东拼西凑来的,根本不存在是否泄密,一般来说要保护的是数据
        64
    zuotech   2017-03-01 15:34:36 +08:00
    @v2girl 有个虚拟机平台, 要开多少台都没问题的
        65
    Phariel   2017-03-01 15:43:27 +08:00 via Android
    无保护,靠保密条款
        66
    linzianplay   2017-03-01 15:59:11 +08:00
    @v2girl MultiPoint 可以让多个用户远程到同一个机器,在不同用户里面
        67
    darrenfang   2017-03-01 16:21:01 +08:00
    @Juwan 用 Hibernate 实现的 Repository, 后来写 C#, 用 NHibernate 也实现了一下, 因为 C# 语言的优势, NHibernate 使用起来更方便
        68
    huson   2017-03-01 16:23:46 +08:00
    其实代码不重要 数据才是重要的
        69
    zpvip   2017-03-01 16:28:30 +08:00
    保密协议。

    公司三十年源码随便访问。每个工作位都有百兆光纤网络,全靠法律意识。
        70
    cheng12308   2017-03-01 17:13:12 +08:00
    一般代码确实没卵用,有代码你能跑起来?跑起来你就干倒老东家了?数据库里面那东西拷出来才牛逼,光卖信息也能发一笔横财,只不过危险系数也高。
        71
    cheng12308   2017-03-01 17:14:06 +08:00
    还有那些什么破公共库,轮子啥的,开源的比那垃圾代码好好多倍。
        72
    XDA   2017-03-01 17:24:50 +08:00 via iPhone
    看了上面的回复就放心了,原来不止一家的代码写的跟屎一样,哈哈
        73
    anheiyouxia   2017-03-01 17:34:57 +08:00 via Android
    @v2girl 你在远程只能发你远程上面的东西
    公司内网的资源你是没办法偷出去的,因为公司内网跟外面联通的唯一方式就是那个 nas ,你必须把文件复制到上面去才能在远程上面找到这个文件。而 nas 上面你只有写权限,没有删除权限,并且后台有系统扫描你的目录,只要发现你上传了东西到 nas ,就会报警。
    不过原来的权限系统有漏洞,导致部分人是可以删除自己上传的文件的,唔使曾经就有两个人不怕死,把两个模型文件复制上去,通过邮件发到外网去,马上被公司发现,然后报警了。
    最后这两个人到公证处去做了公证,保证文件已经删除说以后只要发现有任何人在任何地方出现这个模型文件,将承担经济损失之类的。然后据说老板觉得还不够,又给这两个模型申请了专利。
        74
    c4fun   2017-03-01 17:47:35 +08:00
    SPES
        75
    killerv   2017-03-01 17:53:23 +08:00
    代码没那么重要,数据才重要,基本上你能写出来的别人也能写出来。
        76
    pyufftj   2017-03-01 18:14:18 +08:00
    @hnbcinfo 哈哈,我也是这么想的。大家都这么忙,谁有空看那么烂的代码
        77
    xhwdy26   2017-03-01 18:16:17 +08:00 via Android
    办公不用物理机,用虚拟桌面办公
        78
    sumuu   2017-03-01 18:24:21 +08:00
    哈哈,防止不了的,开发和运维合伙的话,数据库都可以拿走.
        79
    shayuvpn0001   2017-03-01 18:44:55 +08:00
    必须是物理隔离,做 air gap 啊,然后所有的项目文件放到配置管理服务器上,冷备,热备,专线连通的异地容灾各种齐全。干活之前都是先从配置库里面 pull 下来,然后做一点, commit 一点,也方便统计工作量,本地电脑炸了都没关系,所有的资料都在服务器,重新部署也简单,最坏情况下即便丢失也就丢失上一个 commit 到现在的内容(基本不可能)。本地干活儿的电脑随时都可以换,任意机器都可以。所有 U 口,串口全部封掉,交换机做端口管理,必须要装了客户端授权才可以接入网络,未授权的电脑一旦用网线连接, MAC 地址自动记录,然后立刻召唤与该该端口挂钩的责任人,二级泻秘事故处理。
        80
    kokutou   2017-03-01 18:49:15 +08:00 via Android
    nda ...
        81
    shakoon   2017-03-01 20:14:23 +08:00
    网络物理隔离,禁 USB ,禁无线网卡,除了手机拍屏幕外我也想不到什么其他办法了
        82
    billwang   2017-03-01 22:18:20 +08:00
    物理隔离,安全审计,关键操作全程录像
        83
    yuxuan   2017-03-01 22:22:26 +08:00
    新鲜的 下午刚刚全员发的消息 说公司代码被人放到 GitHub 了 然后 下午下班后 公司大墙加高了一层 所有即时通讯都上不去了 包括公司办公的 rtx 以及公司的邮件 访问个别存储类网站 会出现提示 说访问的内容涉及存储啥的 按规定不让上
        84
    snnn   2017-03-01 22:26:20 +08:00
    硅谷一些大公司,在家就能访问所有代码,还不用拨 VPN ,直接公网就可以。
        85
    cwing   2017-03-02 09:17:31 +08:00
    @yuxuan 不会这么 6 直接都被上传到 github 上了吧
        86
    JeffreyZhuang   2017-03-02 09:50:01 +08:00
    没卵用,不是 google 给你代码, 你就能再建立一个 google ,公司的价值在于人
        87
    hahiru   2017-03-02 10:47:34 +08:00
    我感觉业务代码值得保密的也就是加密算法之类的烧脑代码了吧。。。普通流程代码要来干蛤。莫不是用来找 bug?
        88
    yuxuan   2017-03-02 10:56:42 +08:00
    @cwing 估计是有人传上去了 具体情况没说
        89
    qyz0123321   2017-03-02 11:07:21 +08:00
    代码就算是泄漏了,没有对应的环境依赖什么的,也未必能运行起来啊。。。
        90
    Jimrussell   2017-03-03 12:39:20 +08:00
    @shayuvpn0001

    金融量化类相关的么? 还是军厂之类?
    一般行业的业务代码要这么搞,心疼贵司码农的心理健康。
        91
    Jimrussell   2017-03-03 12:43:21 +08:00
    表演的各位都不报行业、不说业务,我也是服了……

    这帖子里的一些鸡贼手段被外行 manager 看到照葫芦画瓢就问将来你们怕不怕。
        92
    shayuvpn0001   2017-03-05 19:07:59 +08:00
    @Jimrussell 习惯就好了。最要命的是不让上外网,手机没有摄像头,要上网查个什么东西用的老 wap 上网 baidu 的。。。
        93
    cwing   2017-03-18 08:57:02 +08:00
    @JeffreyZhuang 对的,代码本身就不值几个钱~ 就算给你看你也不定会看辣鸡代码~ 偏底层看不看得懂还是个问题~ UE4 都开源了,你看了又有何用呢~
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2149 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 31ms · UTC 00:31 · PVG 08:31 · LAX 16:31 · JFK 19:31
    ♥ Do have faith in what you're doing.