jjzjj

安全经济调度

全部标签

第142篇 合约安全-重入锁

本篇介绍最常见的一种智能合约攻击-重入攻击,它曾导致以太坊分叉为ETH和ETC(以太经典),并介绍如何避免它。1.重入攻击重入攻击是智能合约中最常见的一种攻击,攻击者通过合约漏洞(例如fallback函数)循环调用合约,将合约中资产转走或铸造大量代币。著名的重入攻击事件:2016年,TheDAO合约被重入攻击,黑客盗走了合约中的3,600,000枚 ETH,并导致以太坊分叉为 ETH 链和 ETC(以太经典)链。距离TheDAO被重入攻击已经6年了,但每年还是会有几次因重入漏洞而损失千万美元的项目,因此理解这个漏洞非常重要。0xAA 抢bank的故事为了让大家更好理解,这里讲一个"黑客0xAA

javascript - 使用 transportCredentialOnly 安全性对 RESTful WCF 服务的跨域 Ajax JSON POST 支持

我之前就这个主题发表过帖子,但经过一年的其他事情,我再次设法陷入困境。我将尝试简要概述该场景以及当前使工作正常进行的尝试:在主机上托管HTML、JS等的IISWeb服务器:iis.mycompany.com(简称foo)通过主机上的Windows服务托管的WCFRESTfulWeb服务:wcf.mycompany.com(简称bar)从foo提供的Javascript通过对bar上的WCF服务进行RESTfulajax调用(GET或POST,取决于操作)来工作,显然这些是跨域调用,因为它们不在同一主机上。Javascript使用jQuery(1.7.2)框架来操作DOM并执行对bar(

javascript - 使用 JavaScript API 的 Parse 中的对象安全性 - 将用户绑定(bind)到保存的对象

在Parse中管理实体时,我需要将许多对象绑定(bind)到当前登录的用户。我的担忧是:没有后端代码确保传入的User是当前登录的用户。用户可以将任何新创建的对象分配给其他用户。他们有thisexampleTODOapp在thedocumentation中未显示云代码以确保Todo分配给的User是当前登录的用户。现在我浏览了thecode我开始认为,无论何时保存一个对象,它都会与用户相关联。谁能解释为什么这个应用程序工作以及它如何将Todo与User相关联?更新:没关系,我在他们的代码中找到了指定用户保存待办事项的位置。我的问题是,是什么阻止用户编写使用其他用户ID保存待办事项的代码

javascript - React Flux - 在调度中调度 - 如何避免?

我好像遇到过在Flux中无法避免dispatch-within-a-dispatch问题的情况。我读过一些关于这个问题的类似问题,但除了setTimeout黑客之外,它们似乎都没有好的解决方案,我想避免这种情况。我实际上使用的是alt.js而不是Flux,但我认为概念是相同的。场景想象一个最初呈现登录表单的组件。当用户登录时,这会触发一个XHR,最终响应身份验证信息(例如用户名),然后根据身份验证信息获取一些安全数据并呈现它而不是登录表单。我遇到的问题是,当我尝试根据XHR响应触发一个获取数据的操作时,它仍在LOGIN_RESPONSE操作的调度中,并触发了可怕的Error:Invar

javascript - 什么是 JSON 安全对象?

在凯尔辛普森的书中YouDon'tKnowJS:this&ObjectPrototypes,他写了这篇关于如何复制对象的主题:OnesubsetsolutionisthatobjectswhichareJSON-safe(thatis,canbeserializedtoaJSONstringandthenre-parsedtoanobjectwiththesamestructureandvalues)caneasilybeduplicatedwith:varnewObj=JSON.parse(JSON.stringify(someObj));Ofcourse,thatrequiresy

javascript - 为什么这个内联 javascript 没有被内容安全策略阻止?

我有一个页面,我像这样设置内容安全策略的脚本源:script-src'self'*.uservoice.com*.intuit.comajax.googleapis.comlocalhost:*当我使用我自己创建的用于测试的硬编码内联脚本加载页面时,它像预期的那样被阻止:RefusedtoexecuteinlinescriptbecauseitviolatesthefollowingContentSecurityPolicydirective:"script-src'self'*.uservoice.com*.intuit.comajax.googleapis.comlocalhost

javascript - 在javascript中重命名文档变量是否安全

我注意到GoogleClosureCompiler没有将document重命名为d以减少空间。我想不出这会破坏代码的情况(即document指向其他东西)。实际上,window也是如此。是否有理由以这种方式保护文档?==编辑==通过重命名,我正在考虑重新分配它。示例如下。vard=document;varobj1=d.getElementById("obj1");varobj2=d.getElementById("obj2");...//withenoughusesofdocumentsoitmakestoreassignitsize-wise. 最佳答案

javascript - 从 Javascript 检测损坏的锁图标(混合安全/不安全内容)

我正在努力使网站在HTTPS下完全正常运行。作为其中的一部分,我想确保我们永远不会“打破锁”。也就是说,我们不应该在SSL页面上加载非SSL内容,这可能会触发警告或其他指示器,具体取决于浏览器。为了验证情况是否如此,我想做两件事:编写Selenium测试来验证各种操作不会破坏锁。在JS中编写日志记录代码,在用户session期间检查锁是否被破坏,如果是则记录回服务器。有没有什么方法可以在JS中查看浏览器的HTTPS锁图标是坏了还是没坏?或者等价地,当前页面内容的混合/非混合状态? 最佳答案 您无法从JavaScript本身检测到这一

javascript - 内容安全政策能否与 Google Analytics 和 AdSense 兼容?

有谁知道如何让CSP(即使使用default-src通配符)工作,以便现代Analytics脚本将网站每页数据(不仅仅是主页数据)发送到网站所有者的帐户,从而显示AdSense广告?我为我的网站尝试了多种CSP变体,包括的.htaccess文件中提出的变体,但都阻止了GoogleAnalytics生成每页数据(主页除外)和GoogleAdSense从接受任何页面上的广告。Google的机器看不到Analytics脚本,尽管Google的人总是在我的网站源代码中看到它。即使将CSPdefault-src设置为星号通配符也失败了。在谷歌论坛和非谷歌论坛上询问都没有任何效果,除了人们说问题出

javascript - Vue router 路由的安全性

我现在正在学习Vue2周,但我找不到这个关于路由安全性问题的答案。当我在Vue中使用元字段和路由守卫保护路由时,就像在考试中一样,我想知道客户端如何才能看到组件仍然存在。constrouter=newVueRouter({routes:[{path:'/foo',component:Foo,children:[{path:'bar',component:Bar,//ametafieldmeta:{requiresAuth:true}}]}]})router.beforeEach((to,from,next)=>{//checkifauthenticatedbyjwtfromstoreo