草庐IT

ruby - 如何在安全的沙箱中运行不受信任的 Ruby 代码?

我希望能够运行不受信任的ruby​​代码。我希望能够将变量传递给它可能使用的所述不受信任的代码。我还希望上述代码将结果返回给我。这是我在想什么的概念性例子input="sweet"output=nilThread.start{$SAFE=4#...untrustedcodegoeshere,itusestheinputvariable(s)#tocalculatesomeresultthatitplacesintheoutputvariable}#parsetheoutputvariableasastring.澄清一下,我基本上是将不受信任的代码用作函数。我想要提供它的一些输入,然后允

ruby - 您如何使用 ptrace 对在 Rails 中运行的不受信任的代码进行沙盒处理?

假设我有这个糟糕的Controller代码:classMovesController一段时间以来,我一直在寻找一种最好的方法来沙箱化不受信任的代码的执行,并偶然发现了这个ruby​​-lang特性中的讨论:https://bugs.ruby-lang.org/issues/8468TherealsolutiontothisproblemistorunasandboxatthelevelaboveRuby.Irununtrustedcodeonhttp://eval.ininsideaptracebasedsandbox.CharlieSomerville对该主题的进一步研究并没有得到比

javascript - 在 JavaScript 中,我应该对函数参数是正确类型的信任度有多少?

关闭。这个问题是opinion-based.它目前不接受答案。想改善这个问题吗?更新问题,以便可以通过editingthispost用事实和引文回答问题.7年前关闭。Improvethisquestion我应该总是使用instanceof和typeof来检查类型,例如addRow:function(rowBefore){if(rowBeforeinstanceofY.PopulateList.makeRow){this.allRows[row.toString()]=row;row.altered=true;Y.DragAndDrop.addNewDrag(row.rowDiv);no

javascript - 一个 "safe place"来评估 Javascript 中的受信任代码(具有特定上下文)? [编辑: how can you break it?]

不要在标题上评判我,我知道eval是邪恶的,但我这样做是有原因的,而且会非常有限。事情是这样的:我想创建一个安全的空间,我可以在其中运行特定的(和受信任的)代码,并检索结果(如果它符合我的期望)。出于安全原因,我想将它从所有其他范围中删除(这个空间被要求提供结果,并且应该不能单独将任何内容导出到周围的范围)。我找到了一个似乎可行的解决方案,它也可以为执行添加上下文,但我不确定它是否有效,或者该系统中是否存在安全漏洞。你能告诉我它是否有问题吗?它实际上创建了与全局变量同名的本地变量,以防止访问它们。它还剥离了功能(我将添加功能以保留我想要保留的功能)。该函数声明为最接近全局变量,以避免更

javascript - 如何锁定(或沙箱)JDK 的内置 Javascript 解释器以运行不受信任的脚本

我们有一个Java应用程序,想使用内置的Javascript解释器(javax.script.*)运行不受信任的代码然而,默认情况下,解释器允许访问任何java类。例如,脚本中的“java.lang.System.exit(0)”将关闭JVM。我相信这叫做“LiveConnect”,有关详细信息,请参阅Sun的“JavaScriptingProgrammer'sGuide”。我想以某种方式关闭脚本访问Java类的能力,即我只希望脚本能够访问我使用eval()或ScriptEngine上的put()方法。我找到了一些关于如何使用旧的独立版本的解释器(Rhino)实现此目的的文档,例如参见

javascript - Web Workers 是一种安全的方式来沙盒不受信任的 JavaScript 代码吗

我想知道WebWorker是否是对不受信任的JavaScript代码进行沙盒处理的安全方法。例如,在绘图应用程序的上下文中,开发人员可以在其中实现新的绘图工具,您可以将他们的代码放入webworker中,并且每当用户单击Canvas时,向他们发送包含光标位置的JSON消息,以及图像数据数组,当脚本完成时,它会传回一条包含新图像数据的消息。这是否安全,或者是否存在我没​​有想到的风险? 最佳答案 DOM对Webworker不可用,但可以访问同源内容,例如indexedDB。请参阅我的相关问题:Canworkersbesecureeno

javascript - Meteor 更新集合 - 未捕获错误 : Not permitted. 不受信任的代码可能仅按 ID 更新文档。 [403]

我是LearnignMeteor,遇到了这种情况,我正在关注关于tutsplus的Meteor教程。代码与视频中的代码完全相同,发生了集合更新,但在我的浏览器中显示了此错误:UncaughtError:不允许。不受信任的代码只能通过ID更新文档。[403]代码在这里:Template.person.events({'click':function(e,t){Session.set("edit-"+t.data._id,true);},'keypressinput':function(e,t){if(e.keyCode===13){vardocid=Session.get("edit-"

xml - 解析和访问不受信任的 XML

我有某种XML转换网关,它接受一种格式的XML,并从我不愿信任的来源将其生成为另一种格式。现在,这些转换可以是微不足道的,比如在这里和那里更改几个属性,也可以是非常复杂的,我需要分解整个输入并从头开始构建输出。所以,基本上我有两个问题:解析XML。它需要快速(最好)并且在不破坏原子表的情况下工作(我正在看着你,xmerl)因为来源不是那么可靠。轻松访问深层嵌套的元素以检索重建所需的信息。虽然有一些解析XML的选项,例如fast_xml和erlsom库,但它们生成的结构很难访问,因为它们与xmerl_xpath到目前为止,这是我发现获取深层嵌套数据的唯一合理方法。所以问题是,是否有一种方

java - 在 Windows 7 上信任 Java 7 的自签名证书

我正在尝试在java7(在Windows7上)中使用HttpsURLConnection连接到远程Web服务器并发送发布请求。除了它不信任证书(它是自签名的)之外,一切似乎都有效。我已经通过chrome导出了证书,然后将证书导入到keystore中:keytool-import-filemysslcertificate.cer如果我运行keytool-list,证书就在那里。当我在导入证书后尝试运行它(使用gradle或eclipse)时,出现此异常:javax.net.ssl.SSLHandshakeException:sun.security.validator.Validator

零信任嵌入式安全沙箱技术,企业应用软件的技术底座

零信任概念的提出,彻底颠覆了原来基于边界安全的防护模型,近年来受到了国内外网络安全业界的追捧。所谓零信任顾名思义就是“从不信任”,那么企业是否需要摒弃原有已经建立或正在搭建的传统基于边界防护的安全模型,而向零信任安全模型进行转变呢?一、零信任是什么?零信任是一种设计安全防护架构的方法,它的核心思路是:默认情况下,所有交互都是不可信的。这与传统的架构相反,后者可能会根据通信是否始于防火墙内部来判断是否可信。零信任是一种有积极意义的网络安全思想和理念,适应了信息化应用和技术发展趋势,对降低云计算、大数据条件下的网络安全风险有效。在企业安全建设中,零信任是必须经历的安全防护体系技术革新,但它必然要经