更新资料
挑战向表单添加“提交按钮”存在问题。
用户代理是: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) <strong i="11">Chrome/57.0.2987.88</strong> Safari/537.36
。
_由@systimotic编辑的_
电话框架中显示警告。 它说:“ Chrome浏览器在此页面上检测到异常代码,并将其阻止以保护您的个人信息(例如密码,电话号码和信用卡)。”
码:
<link href="https://fonts.googleapis.com/css?family=Lobster" rel="stylesheet" type="text/css">
<style>
.red-text {
color: red;
}
h2 {
font-family: Lobster, Monospace;
}
p {
font-size: 16px;
font-family: Monospace;
}
.thick-green-border {
border-color: green;
border-width: 10px;
border-style: solid;
border-radius: 50%;
}
.smaller-image {
width: 100px;
}
</style>
<h2 class="red-text">CatPhotoApp</h2>
<p>Click here for <a href="#">cat photos</a>.</p>
<a href="#"><img class="smaller-image thick-green-border" alt="A cute orange cat lying on its back. " src="https://bit.ly/fcc-relaxing-cat"></a>
<p>Things cats love:</p>
<ul>
<li>cat nip</li>
<li>laser pointers</li>
<li>lasagna</li>
</ul>
<p>Top 3 things cats hate:</p>
<ol>
<li>flea treatment</li>
<li>thunder</li>
<li>other cats</li>
</ol>
<form action="/submit">
</form>
<form action="/submit-cat-photo">
<input type="text" placeholder="cat photo URL">
</form>
@ leekirby6感谢您的问题。 您能否提供有关在何处看到此通知的更多信息? 如果您能够提供截图,那么截图也可能会有所帮助。 打开页面时,我没有收到来自Chrome的任何通知。 谢谢!
哦,我忘了截图。
当我使用Firefox时没有任何反应。
它可能与Chrome Beta有关。 参见#12655。 Chrome稳定版对我来说效果很好。 @ leekirby6可以在稳定的Chrome上尝试吗?
谢谢你的依靠。 我更喜欢beta版本而不是稳定版本:
我用过Firefox!
此错误是否表示露营者将在以后的Chrome版本中看到此错误? 如果是这种情况,我们可能应该确保在发布之前将其修复。
我可以在测试版和实时网站上使用Chrome 57重现此内容。
可以复制的版本是57.0.2987.88。 从3月9日发布的Chrome浏览器博客中:
Chrome小组很高兴宣布将Chrome 57升级到稳定版-适用于Windows,Mac和Linux的57.0.2987.98。 这将在未来几天/几周内推出。
错误:
XSS Auditor禁止访问“ https://www.freecodecamp.com/challenges/add-a-submit-button-to-a-form#?solution = solution-here”,因为在其中找到了脚本的源代码请求。 由于服务器未发送“ X-XSS-Protection”标头,因此启用了审核器。
这提到,我们看到的确实是由功能导致的错误在Chrome 57启用。
该警告似乎是由iframe中的表单触发的。
这是一个StackOverflow帖子,其中包含有关如何解决此问题的建议。
我测试了Codepen如何处理此问题。 它在那里工作正常。 一些明显的区别:
ALLOWALL
在fCC上SAMEORIGIN
。 我认为这不太可能是原因,但可能是相关的。1; mode=block
,但在Codepen上不存在。 我认为这就是为什么它在Codepen上有效但在fCC上无效的原因。/ cc @ freeCodeCamp / moderators对于我们来说,这似乎有可能成为一个非常严重的问题,但我不确定。 有人可以协助调查吗?
@systimotic感谢您引起大家的注意。 是的-这是一个严重的问题。 如果Google推出此更新,它将完全打破我们的挑战。 因此,我们需要尽快解决此问题。
您在这方面能取得任何进展吗?
@BerkeleyTrue ,这是您可以快速修复并部署到生产中的东西,还是您打算委托某人?
2017年3月13日,星期一,下午6:44,昆西·拉尔森(Quincy Larson) [email protected]
写道:
@systimotic https://github.com/systimotic感谢您将其带到
大家的注意。 是的-这是一个严重的问题。 如果Google推出
此更新将完全打破我们的挑战。 所以我们需要修复
尽快。您在这方面能取得任何进展吗?
@BerkeleyTrue https://github.com/BerkeleyTrue这是你吗
可以快速修复并部署到生产环境,或者您是否有人在
打算委派这个吗?-
您收到此消息是因为您已订阅此线程。
直接回复此电子邮件,在GitHub上查看
https://github.com/freeCodeCamp/freeCodeCamp/issues/13727#issuecomment-286147082 ,
或使线程静音
https://github.com/notifications/unsubscribe-auth/AX9USGhYYpx9VbE14GEjc5ELIWUePYCaks5rlWRggaJpZM4MS57P
。
我有个主意,如果我的理论行得通,我将对备份/母版提出公关。
如果可以的话,我也可以为它分期申请
但是请,如果其他人有想法,请继续努力吧
这似乎是一个关键问题
@QuincyLarson @systimotic @Bouncey对其进行浏览(根据@timo的链接),Chrome将默认行为X-XSS-Protection: 1
更改X-XSS-Protection: 1; mode=block
。 当页面的源代码在请求本身之内时(即代码URL),这完全阻止了页面的运行。
以前,Chrome的默认行为是过滤掉脚本中被认为有害的部分。 通过编码chrome会抱怨的特定部分(表单动作等),然后在注入iframe之前对其进行解码,我们已经解决了这一问题。
现在,默认行为将完全阻止页面。 这就是导致问题的原因(我相信)。
我下载了Chrome Canary,并且〜无法复制该问题(它在版本59上)〜我可以通过在code-uri中添加脚本标签来复制它。
修复可能就像将我们的X-XSS-PROTECTION
更改1
;
我无法在Beta版上进行复制,但可以在正式版上进行复制
Chrome 57现在是Ubuntu的``Chrome稳定版''
我无法在备份/母版上本地复制
尝试通过服务器控件将一些html和JavaScript代码发布回服务器,您将看到问题。
发生在Chrome版本57.0.2987.110(64位)Win10 64位上
大家好,
请帮助我更好地理解这一点。
我是软件公司的业务分析师。 我们遇到了这样的问题:Chrome浏览器更新57.0.2987.98后,我们收到以下错误消息:“此页面无法正常工作Chrome浏览器在此页面上检测到异常代码,并将其阻止以保护您的个人信息(例如密码,电话号码和信用卡) 。 ERR_BLOCKED_BY_XSS_AUDITOR”-基本上是您在这里讨论的内容。
我的问题是:
我们有许多遭受此错误困扰的客户,我们需要了解是应该等待Chrome修复还是在我们这边实施此修复。
@dimapct这是
@昆西·拉森
Chrome设置>高级设置>防范危险站点>关闭
为我工作了一段时间
我刚刚遇到了这个错误报告。 我想知道我的经验是否可以对此有所启发。
当我在Ubuntu论坛上写帖子(这是一个非常好的网站)时,Chrome浏览器经常(但不总是)按“预览发布”时出现此错误。
我试图找到一种模式,但似乎完全是武断的。 我可以输入Chrome可以接受的某些文字,以及不能接受的其他文字,我发现它们之间没有显着差异。 例如,有时Chrome会阻止带有引号的帖子,而有时则不会。
我在Linux Ubuntu上使用Chrome 57 Stable(来自正式的Chrome存储库)。
(我暂时接受@QuincyLarson的建议,尽管将其关闭会有些
不幸的是, @ QuincyLarson提出的解决方案对我不起作用。
但是,还有更多信息,希望对您有所帮助:
https://bugs.chromium.org/p/chromium/issues/detail?id=702542
https://bugs.chromium.org/p/chromium/issues/detail?id=706038
https://productforums.google.com/forum/#!msg/chrome/4MUJd75N4Jw/8uDOUMgrEQAJ
@paddylandau谢谢。
似乎通过在我们的csp中显式添加x-xss-protection标头可以解决此问题。 有人有时间测试吗?
添加此标头的问题在于,就Chrome而言,这意味着降低安全性。 对我来说这很奇怪。
实际上,如果将标头设置为1,则只是保持安全性不变,并阻止Chrome v57提高安全性。 唯一真正的区别是,v57嘈杂地阻止了v56-和其他浏览器到目前为止一直默默阻止的某些代码。
我仍然遇到此问题:(
我仍然在“创建表单元素”上遇到此问题。
关于此问题的有趣之处在于,当您在其他浏览器上完成课程并返回Chrome浏览器并“查看该课程的解决方案”时,代码读取没有错误,您可以继续下一课程。 有什么想法吗?
2017年4月10日上午10:21,“ Rogerio Penchel” [email protected]
写道:
我仍然遇到此问题:(
-
您收到此消息是因为您已订阅此线程。
直接回复此电子邮件,在GitHub上查看
https://github.com/freeCodeCamp/freeCodeCamp/issues/13727#issuecomment-293018041 ,
或使线程静音
https://github.com/notifications/unsubscribe-auth/AV-9X3RBc4-MBzYNChdMp0_uZrywTADUks5rumUPgaJpZM4MS57P
。
我在Firefox中运行了这个,没有任何问题
@nvnellore这仅适用于Chromium,并通过扩展名适用于Chrome。 没有其他浏览器会出现此问题。
当我添加带有以下内容的内容时,我已经看到了此ERR_BLOCKED_BY_XSS_AUDITOR
抱歉-请澄清...试图仅更新我们购物车中的内容。
一旦包括
然后,我们得到ERR_BLOCKED_BY_XSS_AUDITOR错误。
现在就经历了。
@udbhavs的解决方案工作正常。
铬57
Windows 10-64位
Chrome版本57.0.2987.133(64位)
Windows 8.1专业版64位
@ssisaias -解决方法(而不是解决方案)从@udbhavs可能会奏效,但这是因为它故意破坏安全! 这不是一个合理的解决方法,并且肯定不适用于基于工作的计算机或实际上任何保存机密信息的计算机。
通过升级到版本58(版本58.0.3029.81 beta(64bit,在我的机器上),该问题似乎已解决。我遇到了相同的错误,必须进入3个点->关于。在该版本下是一个按钮我必须按键才能完成从v57到v58的更新。重新启动Chrome后,问题得以解决。
@willdanneriv也许您很幸运,因为版本58尚未为我解决。 今天更新后,我仍然收到该错误。
@paddylandau也许。 您是Beta还是稳定版?
@willdanneriv稳定。 今天发布到我机器上的那个。
版本58.0.3029.81(64位)
和你一样
@paddylandau您是否按照我的步骤进行并重新启动?
只是覆盖基地,对不起,它对您不起作用。
@willdanneriv —我使用Linux,而不是Windows,因此更新是直接从官方Google存储库中自动安装。 我只有在更新完成后才启动Chrome; 我发布的版本号是从Chrome的“关于Google Chrome浏览器”中剪切并粘贴的。
作为实验,我跳到Windows 10计算机上并尝试了该操作,但遇到了同样的问题(当然,Chrome已完全更新)。
也许您今天偶然尝试过的论坛添加了上述@BerkeleyTrue所述的解决方案?
我在运行带有Chrome 58.0.3029.81的OS Sierra的Mac上也遇到了此问题。 我对发布的位置有些困惑,但希望它能起作用!
在Mac OS中,我也面临着同样的问题。
我现在在Chrome上遇到了同样的问题,然后继续使用Firefox继续,因为Chrome阻止了我的前进。 我建议您使用其他浏览器,也可以这样做。 但是,我仍然认为我们需要放心,我们的私人信息在这里是安全的
仍然有人在Chrome或Firefox中遇到这种情况吗? 我刚刚更新到Chrome 58,无法在该位置重现该问题,也无法在最新的Firefox中重现该问题。
遇到问题时,请登录其他浏览器并尝试相同的操作。 我在chrome中遇到了问题,然后在Safari中尝试了。
仍然有人在Chrome或Firefox中遇到这种情况吗?
是的,我可以在主网站上使用Chrome 58复制,但相同的挑战在Beta网站中也可以。
也许这是伯克利已经确定的目标以外的进步。
我注意到了一个问题。 我离开Chrome并继续在Firefox上浏览时
看到错误消息,因此我在Firefox上进行了更多练习,但是在
地图上未标明特定练习是否完成。 刚出现
好像被跳过了。
因此,我现在回到Chrome来进行此操作,该错误已得到修复。 但是,我
无法从我在Firefox上停止的位置继续,刷新了标签页,然后
我还关闭了选项卡,然后重新打开它,但是接下来的练习向我展示了该选项卡
不是我目前在Firefox上进行的练习。
然后,我退出了我在Chrome上的帐户,然后再次登录并能够
选择我想做的运动。 我认为这个过程可以完成
更好,这样,如果我刷新标签,就可以进入停止的运动
在。 感谢您的帮助。
在2017年4月25日星期二上午7:34,mrugesh mohapatra < notifications@github.com
写道:
仍然有人在Chrome或Firefox中遇到这种情况吗?
是的,我可以在主网站上使用Chrome 58复制,但挑战相同
在Beta网站上可以正常工作。也许这是伯克利已有的成就之外的进步
确定。-
您收到此邮件是因为您发表了评论。
直接回复此电子邮件,在GitHub上查看
https://github.com/freeCodeCamp/freeCodeCamp/issues/13727#issuecomment-296928274 ,
或使线程静音
https://github.com/notifications/unsubscribe-auth/AZgA8UshOMmM5_yVN3POvedvIIVyoCL9ks5rzZPkgaJpZM4MS57P
。
Tobiloba Ogunlobiyi
+234 816 699 8393
www.linkedin.com/in/tobilobaogunlobiyi
@QuincyLarson —是的,我在Chrome 58上仍然存在此问题。
@ tobi10 —简单的刷新只会重新加载页面,但不会刷新所有内容; 它仍然使用缓存。 要强制完全刷新并忽略缓存,请按Ctrl
+ Shift
+ R
。 这样可以避免您再次登录的麻烦。
@paddylandau-我又遇到了同样的问题,我被困在第一次jQuery练习中,然后去firefox进行了练习,还做了另外4个练习。 然后,我回到Chrome继续。 我按照您的建议使用ctrl + shift + R刷新了,然后注销并重新登录,但这表明我被困在第一次练习中。 附件是页面的屏幕截图
@ tobi10 —我想您必须继续使用Firefox。 我知道这很麻烦,所以我们希望Google尽快修复此错误。
谢谢@paddylandau
@willdanneriv-谢谢,您的建议对我
我在挑战方面遇到了同样的问题,但是我将在金丝雀中尝试。 这是Google Chrome的开发人员版本。 如果有效,我将在此处发布另一条消息,也许我们都将不得不切换。
我在加那利(Canary)进行了所有尝试,并且能够轻松完成而没有任何错误或问题。 我使用的是Windows 7,并且确实有当前版本的Google Chrome,所以它不仅是Windows 10或旧版的Chrome问题。
如果您想尝试,可以在这里获得Canary。 https://www.google.com/chrome/browser/canary.html
我在Arch Linux的Vivaldi 1.8.770.56(稳定通道)(64位)上也有此功能-它也基于Chromium。 与@ tobi10相同的地方
我在Chrome上遇到了这个问题,但根据上述@paddylandau的建议,我进行了一次强制刷新,然后工作了。 (在Mac上为CMD + SHIFT + R)
再发行一次
嗨,这是一个已知问题。 我们正在尝试找出解决此问题的方法。
请改用此主题开头的(👍)。
我们只想为潜在的解决方案保留此线程。
在Chrome 58.0.3029.96版(64位)中解决此问题。
在Firefox 53.0.2版(32位)中未解决此问题。
尽量不要使用JavaScript。
我遇到了同样的问题,结果发现用#替换JavaScript:void(0)解决了我的问题。
谢谢。
2017年5月8日,星期一,晚上7:09,priyasjoshi notifications@github.com
写道:
尽量不要使用JavaScript。
我遇到了同样的问题,结果是用#替换了JavaScript:void(0)
解决了我的问题。-
您收到此邮件是因为您发表了评论。
直接回复此电子邮件,在GitHub上查看
https://github.com/freeCodeCamp/freeCodeCamp/issues/13727#issuecomment-300032774 ,
或使线程静音
https://github.com/notifications/unsubscribe-auth/AT1eCNOnLJ8N0nN5JHiBNCx-e4cFc42Cks5r37zDgaJpZM4MS57P
。
在我们尝试解决此问题时,请与我们联系。
今天的核心团队对话:
因此,我认为我们可能必须从Beta复制逻辑。 主要是在读取时从uri剥离解决方案,禁用自动运行并添加代码锁定
生产中用于剥离和锁定uri代码的一些代码(uri中的解决方案)
https://github.com/freeCodeCamp/freeCodeCamp/blob/staging/client/sagas/code-storage-saga.js#L98
用来执行此操作的工具:
从uri获取代码:
https://github.com/freeCodeCamp/freeCodeCamp/blob/staging/client/utils/code-uri.js#L52
删除代码uri:
https://github.com/freeCodeCamp/freeCodeCamp/blob/staging/client/utils/code-uri.js#L66
在处理文件到iframe之前构建文件的史诗中,我们检查代码是否会自动运行
https://github.com/freeCodeCamp/freeCodeCamp/blob/staging/client/sagas/build-challenge-epic.js#L24
在这里,我们将执行按钮锁定在经典视图中,并显示一个解锁按钮
注意:我对作品进行了重大重构,将破坏所有这些链接。 合并PR时,我将在单独的注释中更新它们
谢谢@BerkeleyTrue ,今晚将
@raisedadead很棒-感谢您的帮助。 请保持我们的状态,并告诉我们是否需要备份。
上星期二,我和@raisedadead一起调查了这个问题。 我在这里分享我们的发现,并补充我以后自己发现的东西。 我希望这将为我们为什么认为这是解决此问题的方法提供一些背景知识。
在任何浏览器中,使用任何代码,在freeCodeCamp beta上均无法“复制”此问题。
使用初始报告中共享的代码,此问题在Chrome 57和Chrome 58(当前)中可以_is_再现,但是在Chrome 59(Chrome Beta)或Chrome 60(Chrome Canary)中不能再现。
在这一行中,我们启用了头盔xxsFilter插件。 它将X-XXS-Protection
标头设置为1; mode=block
。 它已经在那里呆了两年了。
让我们再次看一下错误:
XSS Auditor禁止访问“ https://www.freecodecamp.com/challenges/add-a-submit-button-to-a-form#?solution = solution-here”,因为在其中找到了脚本的源代码请求。 由于服务器未发送“ X-XSS-Protection”标头,因此启用了审核器
这使我感到困惑。 我们总是发送此标头,它肯定在响应中,但它仍说不存在。 我对此的最佳猜测:标题发送到/add-a-submit-button-to-a-form
页面。 该问题发生在/add-a-submit-button-to-a-form#?solution=solution-here
,它认为有所不同。 我相信这可能是Chrome中的错误。
在Chrome 57中,没有标头更改为默认值1; mode=block
,并且1
也将作为1; mode=block
[source]处理。 这就是为什么我们从该版本开始注意到此问题的原因。 我尚未发现Chrome 59不再存在此问题的根源。我不确定他们是否仅解决了我们的特定问题,还是不确定他们是否从57版本撤回了更改。
这是XSS审核员的工作的简短摘要(或者至少是我的理解):它查看URL和页面源代码。 如果它在HTML中也找到了URL中的一个脚本(或其他看起来有害的东西),它将阻止该页面。 [来源1] [来源2] [来源3]
适当且最简单的解决方案应该是将X-XXS-Protection
标头设置为0
。 但是,我们尝试了此操作,因为未提取此标头(我不明白为什么),所以此方法不起作用。 现在已经提出的替代解决方案是从URL中删除代码,以使URL不再影响页面,并且XSS审核员也不会感到惊讶。 我认为在生产版本中进行这项工作很棘手,但是我相信它应该可以解决问题。 我相信这是@raisedadead正在进行的工作。
感谢您的见解,并总结了前几天我们调试的内容。 是的,在生产站点上有点棘手,我将尽快更新。
将这个“ --disable-xss-auditor”添加到chrome快捷方式的目标字段后,它对我有用。
对我来说,它在Chrome或Firefox(54.0b12)上不起作用。 不得不求助于使用IE。
该问题已在Beta版和主网站中得到修复。
编码愉快!
最有用的评论
我可以在测试版和实时网站上使用Chrome 57重现此内容。
可以复制的版本是57.0.2987.88。 从3月9日发布的Chrome浏览器博客中:
错误:
这提到,我们看到的确实是由功能导致的错误在Chrome 57启用。
该警告似乎是由iframe中的表单触发的。
这是一个StackOverflow帖子,其中包含有关如何解决此问题的建议。
我测试了Codepen如何处理此问题。 它在那里工作正常。 一些明显的区别:
ALLOWALL
在fCC上SAMEORIGIN
。 我认为这不太可能是原因,但可能是相关的。1; mode=block
,但在Codepen上不存在。 我认为这就是为什么它在Codepen上有效但在fCC上无效的原因。/ cc @ freeCodeCamp / moderators对于我们来说,这似乎有可能成为一个非常严重的问题,但我不确定。 有人可以协助调查吗?