تحديث
التحدي إضافة زر إرسال إلى نموذج به مشكلة.
وكيل المستخدم هو: 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؟
شكرا على الاعتماد. أفضل الإصدار التجريبي من الإصدار الثابت:
لقد استخدمت Firefox!
هل هذا الخطأ مؤشر على أن المخيمين سيرون هذا في إصدار مستقبلي من Chrome؟ إذا كان الأمر كذلك ، فمن المحتمل أن نتأكد من إصلاح ذلك قبل الإصدار.
يمكنني إعادة إنتاج هذا باستخدام Chrome 57 ، سواء في الإصدار التجريبي أو الموقع المباشر.
الإصدار الذي يمكن إعادة إنتاج هذا فيه هو 57.0.2987.88. من مدونة إصدارات Chrome ، في 9 آذار (مارس):
يسر فريق Chrome الإعلان عن ترقية Chrome 57 إلى القناة الثابتة - 57.0.2987.98 لنظام التشغيل Windows و Mac و Linux. سيتم طرح هذا خلال الأيام / الأسابيع القادمة.
الخطأ:
حظر XSS Auditor الوصول إلى ' https://www.freecodecamp.com/challenges/add-a-submit-button-to-a-form# ؟ solution = solution-here' لأنه تم العثور على شفرة المصدر للبرنامج النصي داخل الطلب. تم تمكين المدقق لأن الخادم لم يرسل رأس حماية X-XSS.
يشير هذا إلى أن الخطأ الذي نراه ناتج بالفعل عن الوظيفة التي تم تمكينها في Chrome 57.
يبدو أنه تم تشغيل التحذير من خلال وجود نموذج في إطار iframe.
إليك منشور StackOverflow مع اقتراح حول كيفية حل هذا.
لقد اختبرت كيف يتعامل Codepen مع هذا. إنها تعمل بشكل جيد هناك. بعض الاختلافات الملحوظة:
ALLOWALL
على Codepen ، SAMEORIGIN
على fCC. أعتقد أنه من غير المحتمل أن يكون هذا هو السبب ، لكن قد يكون له صلة.1; mode=block
على لجنة الاتصالات الفدرالية ، ولكنها غير موجودة على Codepen. أعتقد أن هذا هو السبب في أنها تعمل على Codepen ولكن ليس على FCC./ cc @ freeCodeCamp / moderators يبدو أنه من المحتمل أن يصبح مشكلة خطيرة جدًا بالنسبة لنا ، لكنني لست متأكدًا. يمكن لأي شخص أن يساعد في التحقيق؟
systimotic شكرًا لجذب انتباه الجميع. نعم - هذه قضية خطيرة. إذا أطلقت Google هذا التحديث ، فسوف تكسر تمامًا تحدياتنا. لذلك نحن بحاجة إلى إصلاح هذا في أسرع وقت ممكن.
هل تمكنت من إحراز أي تقدم في هذا؟
BerkeleyTrue ، هل هذا شيء يمكنك إصلاحه ونشره في الإنتاج بسرعة حقيقية ، أم أنك تفكر في تفويض ذلك؟
يوم الإثنين ، 13 مارس 2017 ، الساعة 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
.
لدي فكرة ، سأرفع العلاقات العامة ضد النسخ الاحتياطي / الماجستير إذا نجحت نظريتي.
إذا نجحت ، يمكنني حينئذٍ أن أقوم بتثبيتها على الإطلاق
لكن من فضلك ، إذا كان لدى شخص آخر فكرة ، فابدأ في العمل عليها
هذا يبدو وكأنه قضية حرجة
QuincyLarsonsystimoticBouncey تبحث في ذلك، (وفقا لtimo رابط الصورة) كروم هو تغيير السلوك الافتراضي X-XSS-Protection: 1
إلى X-XSS-Protection: 1; mode=block
. ما يفعله هذا هو منع الصفحة بالكامل من العمل عندما تكون شفرة المصدر للصفحة ضمن الطلب نفسه (أي عنوان url للصفحة).
في السابق ، كان السلوك الافتراضي للكروم هو تصفية أجزاء النص التي يمكن اعتبارها ضارة. لقد تجاوزنا هذا الأمر عن طريق ترميز الأجزاء المحددة التي قد يشتكي منها الكروم (إجراءات النموذج وما شابه) ثم فك تشفيرها قبل الحقن في إطار iframe.
الآن السلوك الافتراضي سيؤدي إلى حظر الصفحة تمامًا. هذا هو سبب المشكلة (على ما أعتقد).
لقد قمت بتنزيل Chrome canary و ~ لم أتمكن من تكرار المشكلة (وهي في الإصدار 59) ~ تمكنت من نسخها عن طريق إضافة علامة البرنامج النصي إلى code-uri.
قد يكون الإصلاح بسيطًا مثل تغيير X-XSS-PROTECTION
إلى 1
؛
لا يمكنني التكرار في الإصدار التجريبي ، لكن يمكنني إنتاجه
Chrome 57 هو الآن "الكروم الثابت" لـ Ubuntu
لا يمكنني إعادة الإنتاج محليًا على نسخة احتياطية / رئيسية
حاول إعادة النشر ، عبر التحكم في الخادم ، بعض أكواد html وجافا سكريبت إلى الخادم وسترى المشكلة.
حدث لي في إصدار Chrome 57.0.2987.110 (64 بت) Win10 64bit
اهلا جميعا،
الرجاء مساعدتي في فهم هذا بشكل أفضل.
أنا محلل أعمال في شركة برمجيات. نواجه مشكلة أنه بعد تحديث Chrome 57.0.2987.98 حصلنا على الخطأ "هذه الصفحة لا تعمل اكتشف Chrome رمزًا غير عادي في هذه الصفحة وحظره لحماية معلوماتك الشخصية (على سبيل المثال ، كلمات المرور وأرقام الهواتف وبطاقات الائتمان) . ERR_BLOCKED_BY_XSS_AUDITOR "- ما تناقشه هنا بشكل أساسي.
ستكون أسئلتي:
لدينا عدد من العملاء الذين يعانون من هذا الخطأ ونحتاج إلى فهم ما إذا كان علينا انتظار إصلاح Chrome أو تنفيذ الإصلاح من جانبنا.
dimapct هذا مستودع FreeCodeCamp.com ليس لمتصفح Chrome. يرجى توجيه أسئلتك المتعلقة ببرنامج عملك والكروم إلى فريق Chrome ، وليس إلينا.
تضمين التغريدة
إعدادات Chrome> الإعدادات المتقدمة> الحماية من المواقع الخطرة> إيقاف التشغيل
عملت معي لبعض الوقت
لقد صادفت للتو تقرير الخطأ هذا. أتساءل عما إذا كانت تجربتي قد تلقي بعض الضوء على هذا.
عندما أكتب منشورًا على
لقد حاولت أن أجد نمطًا ، لكنه يبدو عشوائيًا تمامًا ؛ يمكنني كتابة بعض الصيغ ، التي يقبلها Chrome ، والصيغ الأخرى ، التي لا يقبلها ، ولا أرى فرقًا كبيرًا بينهما. على سبيل المثال ، في بعض الأحيان يحظر Chrome منشورًا بعلامات اقتباس ، وأحيانًا لا يحظر ذلك.
أستخدم Chrome 57 Stable (من مستودعات Chrome الرسمية) على Linux Ubuntu.
( سأتبنى الاقتراح 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 شكرا.
يبدو أنه تم حل المشكلة عن طريق إضافة رؤوس حماية x-xss بشكل صريح إلى csp الخاص بنا. أي شخص لديه بعض الوقت لاختبار هذا؟
تكمن مشكلة إضافة هذا العنوان في أنه يعني تقليل الأمان ، من أجل Chrome. هذا يبدو غريبا بالنسبة لي.
في الواقع ، إذا قمت بتعيين العنوان على 1 ، فأنت بذلك تحافظ على الأمان كما هو وتمنع Chrome v57 من زيادة الأمان. الاختلاف الحقيقي الوحيد هو أن v57 يحظر بشكل صاخب بعض التعليمات البرمجية التي تمنعها v56 والمتصفحات الأخرى بصمت حتى الآن.
ما زلت أواجه هذه المشكلة :(
ما زلت أواجه هذه المشكلة في "إنشاء عنصر نموذج".
الشيء المثير للاهتمام فيما يتعلق بهذه المشكلة هو عندما تكمل الدرس على متصفح مختلف والعودة إلى Chrome و "عرض الحل" لذلك الدرس ، يقرأ الرمز بدون أخطاء ويمكنك المتابعة مع الدرس التالي. أي أفكار؟
في 10 نيسان (أبريل) 2017 الساعة 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.
جربت هذا الآن.
نجح حل
كروم 57
Windows 10 - 64 بت
إصدار Chrome 57.0.2987.133 (64 بت)
Windows 8.1 Pro 64 بت
@ chassisaias - قد يعمل الحل البديل (ليس حلاً) من udbhavs ، ولكن هذا لأنه يخرق الأمان عمدًا! إنه ليس حلاً معقولًا ، وبالتأكيد ليس مناسبًا لجهاز كمبيوتر مستند إلى العمل أو في الواقع أي جهاز كمبيوتر يحتفظ بمعلومات سرية.
يبدو أنه تم حل المشكلة عن طريق الترقية إلى الإصدار 58 (الإصدار 58.0.3029.81 بيتا (64 بت ، على جهازي). لقد تلقيت نفس الخطأ واضطررت للذهاب إلى النقاط الثلاث -> حول. تحت الإصدار كان هناك زر اضطررت إلى الضغط لإكمال التحديث من الإصدار 57 إلى الإصدار 58. وعند إعادة تشغيل Chrome ، تم حل المشكلة.
willdanneriv أنت محظوظ ، ربما ، لأن الإصدار 58 لم يحل
تضمين التغريدة هل أنت في بيتا أم مستقر؟
تضمين التغريدة الذي تم إطلاقه على جهازي اليوم.
الإصدار 58.0.3029.81 (64 بت)
مثل لك.
paddylandau هل اتبعت العملية التي قمت بها في
مجرد تغطية القواعد ، آسف أنها لا تعمل من أجلك.
willdanneriv - أنا أستخدم Linux ، وليس Windows ، لذلك يتم تثبيت التحديثات تلقائيًا مباشرة من مستودع Google الرسمي. لم أبدأ تشغيل Chrome إلا بعد اكتمال التحديثات ؛ رقم الإصدار الذي نشرته كان عبارة عن قص ولصق من "حول Google Chrome" في Chrome.
كتجربة ، قفزت إلى جهاز يعمل بنظام Windows 10 وحاولت هناك ، وحصلت على نفس المشكلة (تم تحديث Chrome بالكامل ، بالطبع).
ربما أضاف المنتدى الذي جربت فيه هذا بالصدفة اليوم الحل كما وصفه BerkeleyTrue أعلاه؟
أواجه هذه المشكلة أيضًا على جهاز Mac الذي يعمل بنظام التشغيل OS Sierra مع Chrome 58.0.3029.81. أنا مرتبك قليلاً بشأن مكان النشر ، لكن آمل أن يعمل هذا!
أواجه أيضًا نفس المشكلة في نظام التشغيل mac.
واجهت نفس المشكلة الآن على Chrome ، ثم انتقلت إلى Firefox للمتابعة ، لأن Chrome كان يمنعني من التقدم. أنصح إذا كان لديك متصفح آخر ، فأنت تفعل الشيء نفسه. ومع ذلك ، ما زلت أعتقد أننا بحاجة إلى التأكد من أن معلوماتنا الخاصة آمنة هنا
هل لا يزال أي شخص يعاني من هذا في Chrome أو Firefox؟ لقد قمت للتو بالتحديث إلى Chrome 58 ولا يمكنني إعادة إظهار المشكلة هناك ، ولا في أحدث إصدار من متصفح Firefox.
عندما تواجه مشكلة ، قم بتسجيل الدخول إلى متصفح آخر وجرب نفس الشيء. لقد واجهت المشكلة في الكروم ثم حاولت في Safari فعلت للتو.
هل لا يزال أي شخص يعاني من هذا في Chrome أو Firefox؟
نعم ، يمكنني إعادة الإنتاج باستخدام Chrome 58 على موقع الويب الرئيسي ولكن نفس التحدي يعمل جيدًا في موقع الويب التجريبي.
ربما يكون هذا بمثابة قيادة للتقدم بخلاف ما حدده بيركلي بالفعل.
لقد لاحظت مشكلة بالرغم من ذلك. تركت الكروم وواصلت استخدام Firefox عندما
رأيت رسالة الخطأ ، لذلك قمت ببعض التدريبات على Firefox ، ولكن على
الخريطة التي لم يتم وضع علامة عليها في هذا التمرين كما تم. لقد ظهر للتو
كما لو تم تخطيها.
لذا عدت إلى Chrome الآن للقيام بذلك وتم إصلاح الخطأ. ومع ذلك أنا
لم أستطع المتابعة من حيث توقفت على Firefox ، قمت بتحديث علامة التبويب و
لقد أغلقت أيضًا علامة التبويب وأعدت فتحها ، لكن تم عرض التمرين التالي لي
ليس التمرين الذي أعمل عليه حاليًا على Firefox.
ثم خرجت من حسابي على Chrome وسجلت الدخول مرة أخرى وتمكنت من ذلك
لتحديد التمرين الذي أريد القيام به. أعتقد أن العملية يمكن إنجازها
أفضل ، حتى إذا قمت بتحديث علامة التبويب الخاصة بي ، فسيأخذني إلى التمرين الذي توقفت عنه
في. شكرا لشباب مساعدتكم.
يوم الثلاثاء 25 أبريل 2017 الساعة 7:34 صباحًا ، mrugesh mohapatra < notifications@github.com
كتب:
هل لا يزال أي شخص يعاني من هذا في Chrome أو Firefox؟
نعم ، يمكنني إعادة الإنتاج باستخدام Chrome 58 على موقع الويب الرئيسي ولكن نفس التحدي
يعمل بشكل جيد في موقع بيتا.ربما يكون هذا بمثابة قيادة للتقدم بخلاف ما فعلته بيركلي بالفعل
المحددة.-
أنت تتلقى هذا لأنك علقت.
قم بالرد على هذا البريد الإلكتروني مباشرة ، وقم بعرضه على GitHub
https://github.com/freeCodeCamp/freeCodeCamp/issues/13727#issuecomment-296928274 ،
أو كتم الخيط
https://github.com/notifications/unsubscribe-auth/AZgA8UshOMmM5_yVN3POvedvIIVyoCL9ks5rzZPkgaJpZM4MS57P
.
توبيلوبا أوغونلوبياي
+234816699 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
يرجى الرجوع إلى هذا التعليق .
أعتقد بشدة أن التعليق أعلاه يحلل بشكل صحيح ما يجري هنا.
تم إصلاح هذا على الأرجح في staging
لأننا أوقفنا تنفيذ التعليمات البرمجية تلقائيًا على الصفحة.
willdanneriv - شكرًا ، نصيحتك عملت معي.
أواجه نفس المشكلة في هذا التحدي ، لكنني على وشك تجربتها في Canary ؛ وهو إصدار المطور من Google Chrome. إذا نجحت ، فسأنشر رسالة أخرى هنا ، وربما يتعين علينا جميعًا التبديل.
لقد جربت كل ذلك في Canary ، وتمكنت من الانتهاء بسهولة دون أي أخطاء أو مشاكل. أنا Windows 7 ، ولدي الإصدار الحالي من Google Chrome ، لذا فهو ليس مجرد إصدار Windows 10 أو إصدار قديم من Chrome.
يمكنكم الحصول على Canary هنا يا رفاق ، إذا كنتم تريدون تجربته بدلاً من ذلك. https://www.google.com/chrome/browser/canary.html
لدي هذا أيضًا على Vivaldi 1.8.770.56 (قناة ثابتة) (64 بت) على Arch Linux - وهو يعتمد على Chromium أيضًا. نفس المكان مثل @ tobi10
واجهت هذه المشكلة على Chrome ولكن وفقًا لاقتراحpaddylandau أعلاه ، قمت بتحديث قوي ثم نجحت. (CMD + SHIFT + R في أنظمة تشغيل Mac)
العدد مرة أخرى
مرحبًا ، هذه مشكلة معروفة. ونحاول اكتشاف طرق لإصلاح ذلك.
الرجاء استخدام (👍) في المشاركة الافتتاحية في هذا الموضوع بدلا من ذلك.
نود الاحتفاظ بهذا الخيط فقط للحلول المحتملة.
الحصول على المشكلة في Chrome الإصدار 58.0.3029.96 (64 بت).
عدم الحصول على المشكلة في Firefox الإصدار 53.0.2 (32 بت).
حاول ألا تستخدم JavaScript.
لقد واجهت نفس المشكلات التي تبين أن استبدال JavaScript: void (0) بـ # حل مشكلتي.
شكرا لك.
يوم الاثنين 8 مايو 2017 الساعة 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
.
الرجاء تحمل معنا بينما نحاول إصلاح هذا.
من محادثة الفريق الأساسية اليوم:
لذلك أعتقد أننا قد نضطر إلى تكرار المنطق من بيتا. بشكل أساسي ، تجريد الحل من 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
هنا نقوم بقفل زر التنفيذ في العرض الكلاسيكي وعرض زر إلغاء القفل
ملاحظة: لدي معيد بناء رئيسي في الأعمال من شأنه كسر كل هذه الروابط. سوف أقوم بتحديثها في تعليق منفصل عندما يتم دمج ذلك العلاقات العامة
شكرًا BerkeleyTrue ، سوف
raisedadead رائع - شكرًا على مساعدتك. يرجى إطلاعنا على آخر المستجدات وإعلامنا إذا كنت بحاجة إلى أي نسخة احتياطية.
الثلاثاء الماضي ، بحثت مع
هذه المشكلة _not_ قابلة للتكرار في الإصدار التجريبي المجاني من freeCodeCamp ، في أي متصفح ، بأي رمز.
باستخدام الرمز الذي تمت مشاركته في التقرير الأولي ، هذه المشكلة _هي _ قابلة للتكرار في Chrome 57 و Chrome 58 (حاليًا) ، ولكن _لا _ في Chrome 59 (Chrome Beta) أو Chrome 60 (Chrome Canary).
في هذا السطر ، نقوم بتمكين المكون الإضافي helmet 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.
هذا يحيرني. لقد أرسلنا هذا العنوان دائمًا ، إنه بالتأكيد موجود في الرد ، لكنه لا يزال يقول إنه غير موجود. أفضل تخميني عن سبب حدوث ذلك: تم إرسال الرأس لصفحة /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 وكود مصدر الصفحة. إذا عثر على نص برمجي (أو أي شيء آخر يبدو ضارًا) في عنوان URL الذي وجده أيضًا في HTML ، فسيحظر الصفحة. [المصدر 1] [المصدر 2] [المصدر 3]
يجب أن يكون الحل المناسب والأسهل هو تعيين رأس X-XXS-Protection
على 0
. ومع ذلك ، فقد جربنا هذا ، نظرًا لأن هذا العنوان لم يتم اختياره (لا أفهم السبب) ، فهذا لا يعمل. الحل البديل الذي تم اقتراحه الآن هو إزالة الكود من عنوان URL ، بحيث لا يؤثر عنوان URL على الصفحة بعد الآن ، ولن يفزع مدقق XSS. أعتقد أنه سيكون من الصعب جعل هذا العمل ضمن نسخة الإنتاج ، لكنني أعتقد أنه يجب أن يحل المشكلة. أعتقد أن هذا ما يعمل عليه
شكرًا على البصيرة ، وعلى الملخص الممتاز لما قمنا بتصحيحه في اليوم الآخر. نعم ، الأمر صعب بعض الشيء على موقع الإنتاج ، وسوف أقوم بالتحديث في أسرع وقت ممكن.
إضافة هذا "--disable-xss-auditor" إلى الحقل الهدف لاختصار الكروم جعلته يعمل بالنسبة لي.
لم يعمل على Chrome أو Firefox (54.0b12) بالنسبة لي. اضطر إلى اللجوء إلى استخدام IE.
تم إصلاح هذا في كل من الإصدار التجريبي والموقع الرئيسي.
ترميز سعيد!
التعليق الأكثر فائدة
يمكنني إعادة إنتاج هذا باستخدام Chrome 57 ، سواء في الإصدار التجريبي أو الموقع المباشر.
الإصدار الذي يمكن إعادة إنتاج هذا فيه هو 57.0.2987.88. من مدونة إصدارات Chrome ، في 9 آذار (مارس):
الخطأ:
يشير هذا إلى أن الخطأ الذي نراه ناتج بالفعل عن الوظيفة التي تم تمكينها في Chrome 57.
يبدو أنه تم تشغيل التحذير من خلال وجود نموذج في إطار iframe.
إليك منشور StackOverflow مع اقتراح حول كيفية حل هذا.
لقد اختبرت كيف يتعامل Codepen مع هذا. إنها تعمل بشكل جيد هناك. بعض الاختلافات الملحوظة:
ALLOWALL
على Codepen ،SAMEORIGIN
على fCC. أعتقد أنه من غير المحتمل أن يكون هذا هو السبب ، لكن قد يكون له صلة.1; mode=block
على لجنة الاتصالات الفدرالية ، ولكنها غير موجودة على Codepen. أعتقد أن هذا هو السبب في أنها تعمل على Codepen ولكن ليس على FCC./ cc @ freeCodeCamp / moderators يبدو أنه من المحتمل أن يصبح مشكلة خطيرة جدًا بالنسبة لنا ، لكنني لست متأكدًا. يمكن لأي شخص أن يساعد في التحقيق؟