• 请不要在回答技术问题时复制粘贴 AI 生成的内容
runze
V2EX  ›  程序员

在开源代码中 rm -rf 是为了什么?

  •  9
     
  •   runze · May 17, 2020 · 28198 views
    This topic created in 2369 days ago, the information mentioned may be changed or developed.
    140 replies  •  2020-05-19 11:14:31 +08:00
    1  2  
    ❮ ❯
    mumbler
    mumbler
    May 17, 2020 via Android❤️1
    2
    给人造成精神损失的恶作剧叫玩笑
    给人造成物质损失的恶作剧叫犯罪
    Pyjamas
    Pyjamas
    May 17, 2020❤️4
    3
    @mumbler 杠一下,两个都可以是犯罪
    wogong
    wogong
    May 17, 2020
    4
    无法理解的人类行为。

    已经向 Github report
    murmur
    murmur
    May 17, 2020❤️6
    5
    这个我支持人肉出来
    TypeError
    TypeError
    May 17, 2020 via Android
    6
    就是脑残,加上项目维护者粗心,ci 配错了
    Jirajine
    Jirajine
    May 17, 2020 via Android❤️8
    7
    利用 ci 自动发版的任意代码执行漏洞,完全构成了入侵计算机系统罪,和什么使用条款都没关系,数据被删的话请直接报警。
    yujiang
    yujiang
    May 17, 2020
    8
    有毛病吧???这人是什么心态,ma 没了???
    paoqi2048
    paoqi2048
    May 17, 2020
    9
    损人不利己
    azh7138m
    azh7138m
    May 17, 2020 via Android
    10
    已 report

    不能期望每个人都有底线
    masker
    masker
    May 17, 2020 via Android
    11
    开源也挡不住有心人作恶啊。
    JasonC0426
    JasonC0426
    May 17, 2020 via Android
    12
    已向 github report,估计是为了好玩。有没有学法学的,这种构不构成破坏计算机信息系统罪?
    LucentioLuo
    LucentioLuo
    May 17, 2020 via Android
    13
    chotow
    chotow
    May 17, 2020❤️13
    14
    @LucentioLuo #13 要是以后分享这种封闭社区的内容时可以顺带截图就好了。
    MaiKuraki
    MaiKuraki
    May 17, 2020
    15
    进局子吧
    chotow
    chotow
    May 17, 2020❤️7
    16
    13 楼的截图: https://imgur.com/a/gC2HOmp
    peterpei
    peterpei
    May 17, 2020
    17
    “ Improve smooth and phone battery life”
    这我傻了
    laike9m
    laike9m
    May 17, 2020
    18
    我比较好奇的是,@huanruomengyun 和 @BlueJett 是一个人的两个账号吗?
    laike9m
    laike9m
    May 17, 2020
    19
    还有就是如何配置 CI 才能做到直接把 PR 的内容更新到用户手机上。。?
    dG8gcGRm
    dG8gcGRm
    May 17, 2020 via iPhone
    20
    有什麼問題麼?我寫了僅是放在那裡。使用權在你們的手中,你使用了就意味你要承擔風險,這有什麼問題麼?
    alphatoad
    alphatoad
    May 17, 2020
    21
    看了这么多集罗翔,按照主客观统一学说,其必须有主观故意才能定罪,否则算过失
    yujiang
    yujiang
    May 17, 2020
    22
    @HughZadora 那这也不是你提交恶意代码的理由
    zsdroid
    zsdroid
    May 17, 2020❤️5
    23
    理一下,涉及 3 个人物。

    @NekoInverter 在 master 分支提交了`rm -rf /data/*`,https://github.com/ElderDrivers/EdXposed/pull/537
    接着又在 android_r 分支提交了`rm -rf /data/*`,https://github.com/ElderDrivers/EdXposed/pull/538

    @huanruomengyun 在 master 分支提交了`rm -rf /data/data && chattr -R +i /data` ,https://github.com/ElderDrivers/EdXposed/pull/540

    @BlueJett 在 master 分支提交了
    ```ui_print "- Start Cleaning!"
    rm -rf /data/media/*
    ui_print "- Finished! Check for
    ``` ,https://github.com/ElderDrivers/EdXposed/pull/541

    @BlueJett 在 master 分支提交了`ui_print "- Here is @BlueJett, sorry for what I've done..."`,https://github.com/ElderDrivers/EdXposed/pull/542
    VDimos
    VDimos
    May 17, 2020 via Android
    24
    这种人图啥?和前段时间举报 ps 那个人一样,为了什么???
    JackyCDK
    JackyCDK
    May 17, 2020❤️5
    25
    为啥 pr 的 ci release 会下载到用户手上....这 ci 的配置也太有问题了吧....
    RobertLyu
    RobertLyu
    May 17, 2020
    26
    @VDimos 法律意志的残缺和道德的败坏。
    dr1q65MfKFKHnJr6
    dr1q65MfKFKHnJr6
    May 17, 2020
    27
    怎么说呢, 开源代码, 发布出来, 你自己愿意用,除了问题骂两句得了。。。
    9yu
    9yu
    May 17, 2020
    28
    这些 PR 为什么会被接受?
    行为真是太恶心了。
    luozic
    luozic
    May 17, 2020
    29
    谁合并的?
    guog
    guog
    May 17, 2020 via Android❤️3
    30
    @HughZadora 这也能洗?
    HTSdTt3WygdgQQGe
    HTSdTt3WygdgQQGe
    May 17, 2020 via Android
    31
    一般装完各种软件和配置后,都用 rm -rf /来测试一下性能
    runze
    runze
    OP
    May 17, 2020
    32
    @cedoo22 #27 你真的点进去看了吗?
    明明是有人恶意 PR,原本的开源者也是受害者。
    gamexg
    gamexg
    May 17, 2020
    33
    看着并没有合并,为什么有很多人说数据被删除了了?
    bwt
    bwt
    May 17, 2020 via Android
    35
    @bwt 这个意思是 所有用户的 pr,ci 构建成功后都有可能会被推送到所有用户吗?
    CdR48cafe
    CdR48cafe
    May 17, 2020❤️2
    36
    @alphatoad 肯定有"间接故意"
    @HughZadora 自己承担风险的前提是完整的风险预先告知。你在路旁放了一箱下了毒的可乐,挂个"免费自取"的看板,毒死人无罪?
    batkiz
    batkiz
    May 17, 2020❤️10
    37
    1. 对一个开源项目,所有人都有资格去提交 PR,起码在 GitHub 上是这样的。
    2. 一个 PR 会不会被 merge 是由项目所有者决定的。
    3. 为什么一个未被 merge 的 PR 会被 CI 构建并推送到用户的手机上?
    ---
    换言之:
    1. 我能不能向 linux 项目提一个 PR,将 `rm -rf /*` 写进 init,并更改 license 为仅对 Google 授权呢?可以。
    2. 这个 PR 会被 merge 吗?我会不会被 linus 喷的狗血淋头?不会。会。
    3. 这个 PR 会对 linux 用户造成影响吗?会清空世界各地的 linux 系统的设备吗?不会。不会。
    ---
    related:
    什么是哈希洪水攻击( Hash-Flooding Attack )? - Gh0u1L5 的回答 - 知乎
    https://www.zhihu.com/question/286529973/answer/676290355
    DefoliationM
    DefoliationM
    May 17, 2020
    38
    笑死 提交的 pr 都不带审核的吗 23333
    ashong
    ashong
    May 17, 2020 via iPhone
    39
    @VDimos 估计精神类疾病患者
    Zzdex
    Zzdex
    May 17, 2020❤️1
    40
    根本原因还是 ci 有问题
    Jirajine
    Jirajine
    May 17, 2020 via Android❤️10
    41
    @HughZadora 稍微捋一捋:
    1. 开源作者错误的配置了 ci,导致 pr 的自动构建会推送到使用 cannery 分支的用户设备上运行,由此产生了任意代码执行漏洞。
    2. 攻击者利用该漏洞执行恶意代码,破坏用户设备。
    3. 由于 GPL 协议无任何保证风险自担所以错误配置引起漏洞的开源作者无需承担责任。
    4. 但这不意味着攻击者无需承担责任,利用 GPL 协议分发的软件的漏洞进行攻击难道可以免责么?
    5. 如此明显的破坏、入侵计算机系统,被攻击者损失者应该直接报案。
    Senventise
    Senventise
    May 17, 2020 via Android
    42
    @bwt 不是所用用户,只有 canary 版本的
    learningman
    learningman
    May 17, 2020
    43
    @batkiz 对啊,所以他现在被骂的狗血淋头并没有什么问题啊
    phithon
    phithon
    May 17, 2020
    44
    测试漏洞不要使用破坏性代码
    batkiz
    batkiz
    May 17, 2020
    45
    @learningman 您是如何得出「我认为“他现在被骂的狗血淋头”是有问题的」这一结论的呢?
    Tink
    Tink
    May 17, 2020 via iPhone
    46
    这个过分了
    dr1q65MfKFKHnJr6
    dr1q65MfKFKHnJr6
    May 17, 2020
    47
    @runze 看了, 有人恶意 PR,被 CI 推送,是 CI 管理者的问题。
    jemyzhang
    jemyzhang
    May 17, 2020 via Android
    48
    😄pr 直接 ci 推送给用户,脑洞有点大
    kenvix
    kenvix
    May 17, 2020
    49
    利用开源项目 CI 的配置缺陷提交恶意代码破坏用户设备。
    这已经犯罪了吧。
    LokiSharp
    LokiSharp
    May 17, 2020❤️1
    50
    然而这样修改 CI 设置没有任何用处,CI 只会读取当前的配置,这个配置也是提交者可以修改的。

    https://github.com/ElderDrivers/EdXposed/issues/549
    LokiSharp
    LokiSharp
    May 17, 2020
    51
    @laike9m #19 他们是给了个 Cannery 通道,让协作者能方便的拿到自己 PR 构建的 Artifacts
    jhdxr
    jhdxr
    May 17, 2020❤️1
    52
    未被 merge 的,包含不合适代码的 PR 难道 github 上还少吗?有问题的难道不应该是为什么这样子的代码能进到用户手机上去吗?

    用户该反思下自己为什么要在主力机器上用 nightly 的 channel,开发者该思考下 channel 的配置了。。。


    p.s. 别说这是 CI 的漏洞,CI 所做的事情是完全符合预期的。难道 CI 把包打出来就能自动推到用户手机上?
    ByteCat
    ByteCat
    May 17, 2020
    53
    没有 merge 的话也会被 CI 构建吗
    stimulate1797
    stimulate1797
    May 17, 2020
    54
    代码都不 review ?
    Rheinmetal
    Rheinmetal
    May 17, 2020
    55
    @ByteCat
    AppVeyor 默认情况构建 tags 和 pr
    问题不在 ci 而是推送策略问题 所有 artifact 都推送到 Canary 这就成问题了
    CheekiBreeki
    CheekiBreeki
    May 17, 2020 via Android
    56
    rm 能改善系統流暢和電池壽命,
    CheekiBreeki
    CheekiBreeki
    May 17, 2020 via Android
    57
    Nadao
    Nadao
    May 17, 2020
    58
    不会看代码,会不会是其中一个功能就是清除数据,重置系统?
    MaiKuraki
    MaiKuraki
    May 17, 2020
    59
    slyang5
    slyang5
    May 17, 2020
    60
    @murmur 看他博客 友链 应该很好找出来
    Vhc001
    Vhc001
    May 17, 2020
    61
    @MaiKuraki #59 怎么,你试过了?
    fengyj
    fengyj
    May 17, 2020
    62
    这项目维护者 ci 真是写得够狠啊
    JamesR
    JamesR
    May 17, 2020
    63
    canary 版本用户全嗝屁了
    Jooooooooo
    Jooooooooo
    May 17, 2020
    64
    符合破坏计算机信息罪

    建议报警
    yanqiyu
    yanqiyu
    May 17, 2020❤️1
    65
    这灵魂 CI/CD,我觉得恶意 pr 不但可以破坏用户文件,还可以偷走项目的一些 secret
    tankren
    tankren
    May 17, 2020
    66
    恶意利用 GitHub 漏洞 恶意删除他人文件 受害者可以报警
    yanqiyu
    yanqiyu
    May 17, 2020
    67
    @cedoo22 不一定,开源代码的不附加保证并不代表恶意行为可以被开脱。
    suotm
    suotm
    May 17, 2020
    68
    不理解这种行为,似乎不是很高级的 hack,先问一下始作俑者意义何在?
    sky96111
    sky96111
    May 17, 2020
    69
    @gamexg CI 配置有问题,未合并的 pr 也会被构建,然后用户端金丝雀版会直接从最新的 CI 下载文件
    gamexg
    gamexg
    May 17, 2020
    70
    @sky96111 #69 好吧,神奇的 ci 配置。
    这次仅仅只是删除文件还算好的,要是被植入木马才是大坑。
    bitdepth
    bitdepth
    May 17, 2020
    71
    一堆人不懂開源協議亂罵
    開源協議寫了你自己拿去用,作者不負責的
    hwdef
    hwdef
    May 17, 2020
    72
    @bitdepth
    你这语气看来你很懂。

    所以你的意思是向开源代码里提交恶意代码不应该被骂?
    longaiwp
    longaiwp
    May 17, 2020
    73
    问题是这是提交 PR 的人的问题吗?这难道不是 CI 就会自动发版的问题吗? Github 的恶意 PR 不计其数,导致问题的就你,你想想是谁的问题?责任分主次,不要颠倒黑白。
    chinvo
    chinvo
    May 17, 2020 via iPhone
    74
    @longaiwp #72 主责自然是破坏者啊,怎么还有想让项目背主锅的

    洗地水平太差
    LokiSharp
    LokiSharp
    May 17, 2020❤️1
    75
    @longaiwp #73 没出问题啊。。。
    出问题的都是自己选择 Canary 通道的人,后果自负。没推到 Release 通道之前发生什么都和作者没关系

    至于 PR 提交者的责任,我们旁观者没啥好追责的,不是当事人,吃瓜就好了。
    minami
    minami
    May 17, 2020
    76
    @bitdepth #71 那你解释下 AntD 圣诞彩蛋事件?嗯?如果照你说的开源不要负责,为什么彩蛋作者要背 325,还要出来公开道歉?
    kojirou
    kojirou
    May 18, 2020
    77
    本来想阴阳怪气一下,想想还是算了^^
    SZP1206
    SZP1206
    May 18, 2020
    78
    长了见识,还真是什么人都有啊
    bitdepth
    bitdepth
    May 18, 2020 via iPad
    79
    @minami 自己讀完 GPL 3.0 license 再來談
    minami
    minami
    May 18, 2020❤️2
    80
    @bitdepth #79 你这讲的越来越离谱了,这个是恶意 PR,项目所有者也是受害者,你叫我读 GPL ????
    minami
    minami
    May 18, 2020❤️1
    81
    @bitdepth #79 还有,你是不是以为只有法律负责才是负责?那你这道德感也太低下了。受害者诉求很简单,github 封号+必须公开道歉。到你这成了可以装作没事?天哪,道德低劣至此
    mariotaku
    mariotaku
    May 18, 2020
    82
    CI 不应该接受*任何*不信任的 PR,如果我在 CI 的 build script 里面有引用到 secret variable,恶意 PR 加入一个读取所有的环境变量并发到自己的邮箱的命令,密钥很可能就泄露了。
    mercury233
    mercury233
    May 18, 2020 via Android
    83
    三点反思:
    协议里的免责条款非常有必要
    几千个 star 的项目的代码仍然可能没有很好的 review
    项目已经有 60 多个 pr,按照这个流程,可能有用户受到之前其他有问题的 pr 的影响,但开发者并没能得到有效反馈,说明收集反馈真的很难
    bitdepth
    bitdepth
    May 18, 2020 via iPad
    84
    @minami 自己定的規則自己玩去。自己不看代碼怪別人?
    某些開發者的能力不見得高在哪裡。
    我建議凡在 script 中寫中文的都該死
    lazydao
    lazydao
    May 18, 2020
    85
    真是傻逼祸害人
    ppphp
    ppphp
    May 18, 2020
    86
    我的观点:
    项目拥有者,顶多技术有点瑕疵,但是他 no warranty 。
    攻击者上传恶意代码,代码本身也是 no warranty 的,但是对于代码托管平台和发布平台来说是有 warranty 的,用户条款里一定会有不能上传恶意软件,用 key 需要授权什么的说法。所以只有项目拥有者受到了真正的损失,一般也追责追不到,所以会自己用技术来避免这种事情。
    收多大钱承担多大责任,和让恶意者付出成本并不矛盾吧。
    lazydao
    lazydao
    May 18, 2020❤️2
    87
    法律是底线,结果有些人真就把违法当人生底线了。
    loneyor
    loneyor
    May 18, 2020
    88
    虽然是 dev 自己的疏忽,但是利用这个疏忽和漏洞,要是造成大损失,至少在国内肯定有罪的
    sugarsalt
    sugarsalt
    May 18, 2020
    89
    所以,各打五十大板吧。
    lwp2070809
    lwp2070809
    May 18, 2020 via Android
    90
    这个问题似乎没有当初 bumblebee 严重,不过一个是出于主观恶意,一个是失误。利用 edxposed 漏洞的人实在是可耻。
    Crixs
    Crixs
    May 18, 2020
    91
    这是明显的主观破坏
    Greatshu
    Greatshu
    May 18, 2020
    92
    也好,使用 canary 本来就是有风险的,这算是给用户上了一课。
    jy02201949
    jy02201949
    May 18, 2020
    93
    https://www.v2ex.com/t/646108

    项目主手撕太极现场,让大家放弃商业化,拥抱开源,然后……

    我没有贬低这个项目的任何意思,EdXposed 挺好的,就是结合这次事件,感慨一下,开源跟商业化的战争还远远没有结束啊
    BenchWidth
    BenchWidth
    May 18, 2020
    94
    如果前面的参数值不存在就是另外一个故事了
    minami
    minami
    May 18, 2020
    95
    @bitdepth #84 原来还是种族歧视者啊,失敬失敬
    hakono
    hakono
    May 18, 2020 via Android
    96
    @jy02201949 我不知道你在这时候搬出这话题是什么意思。商业软件里没有经过良好测试然后发布造成给用户毁灭打击的事件并不少
    jeasonzuo
    jeasonzuo
    May 18, 2020
    97
    夺损呐!
    irainsoft
    irainsoft
    May 18, 2020
    98
    一个没脑子的用户利用一个开源项目的漏洞向所有人证明了使用 Canary 通道是有风险的,虽然这是一个原本不应存在的风险。普通用户还是用稳定 relase 版吧,如果真的是开发人员也最好拿专门的设备来做测试...
    root8080
    root8080
    May 18, 2020
    99
    看了底下回复 就..... 觉得好丢脸......
    jy02201949
    jy02201949
    May 18, 2020
    100
    @hakono #96 商业做不好,不代表开源就能做好,一味指责别人商业化的不对,但自身也需要加强自己开源的安全性,我抛出这个话题不是指责谁,只是说这两者之间没有绝对的对错,麻烦带着脑子看别人说的话
    1  2  
    ❮ ❯
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4994 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 168ms · UTC 02:14 · PVG 10:14 · LAX 18:14 · JFK 21:14
    ♥ Do have faith in what you're doing.