ค้นหาว่าทรัพยากรใดบ้างที่ไม่ใช้งานผ่าน HTTPS


93

ฉันมีไซต์ ASP.NET ซึ่งควรขนส่งผ่าน HTTPS อย่างสมบูรณ์ อย่างไรก็ตามใน Google Chrome ฉันได้รับคำเตือนว่าหน้าดังกล่าวมีทรัพยากรที่ไม่ปลอดภัย ฉันจะทราบได้อย่างไรว่าทรัพยากรเหล่านั้นคืออะไรและเหตุใดจึงไม่ใช้ HTTPS


1
คำถามคล้าย ๆ กันที่นี่stackoverflow.com/questions/305538/…
arkoak


12
โครเมี่ยม Devtools> แท็บเครือข่าย> คลิกขวาที่ส่วนหัวของคอลัมน์ใด ๆ > คลิก "โครงการ"
Costa

สิ่งนี้จะเห็นได้ทั่วไปเมื่อผู้ใช้ฝังรูปภาพ url ในโพสต์ stackexchange พวกเขาใช้เวอร์ชัน http แทน https
jiggunjer

ฉันรู้ว่าโพสต์นี้เก่าไปหน่อย แต่เผื่อว่าจะช่วยใครได้มีแอปเดสก์ท็อปที่คุณสามารถเรียกใช้ตอนนี้เพื่อสแกนและรายงานปัญหาเกี่ยวกับเนื้อหาผสมที่พบในเว็บไซต์: ecommerce.co.uk/httpscheckerหวังว่าจะช่วยได้ :)
Stilliard

คำตอบ:


45

โดยปกติจะเกิดขึ้นเนื่องจากคุณกำลังโหลดรูปภาพจาวาสคริปต์จะรวมไฟล์หรือไฟล์ CSS ภายนอกโดยไม่ใช้ https คุณสามารถใช้โปรแกรมเช่น FireBug: http://getfirebug.com/

FireBug จะบอกคุณว่าองค์ประกอบของคุณกำลังโหลดอย่างไรและองค์ประกอบใดไม่ผ่านชั้น ssl หากคุณไม่มี firefox ฉันค่อนข้างมั่นใจว่า Chrome มีบางอย่างที่คล้ายกับ FireBug ในตัว

วิธีใช้ firebug มีดังนี้

  1. เปิด firebug
  2. คลิกที่แท็บคอนโซล
  3. โหลดหน้านี้ซ้ำ
  4. ข้อผิดพลาด https ใด ๆ จะแสดงในคอนโซลและแจ้งให้คุณทราบว่าทรัพยากรใดไม่ทำงาน

หวังว่านี่จะช่วยได้


17
คุณสามารถเจาะจงมากขึ้นได้ไหม

2
โหลดหน้าเว็บโดยเปิดใช้งานแท็บ Net เมื่อโหลดหน้าเสร็จแล้วให้วางเมาส์เหนือแต่ละรายการและรายการ GET จะแสดง URL ที่กำลังดึงข้อมูล ในที่สุดคุณจะพบสิ่งที่ถูกดึงผ่าน HTTP แทนที่จะเป็น HTTPS
Joe C

2
คุณคิดว่าการตรวจสอบข้อมูลจำเพาะแต่ละรายการในกองทรัพย์สินทั้งหมดด้วยตนเองหรือไม่ สิ่งที่เกี่ยวกับการกรอง https?
palmic

5
หากต้องการเพิ่มลงในโซลูชันของ @ phantom คุณสามารถคลิกขวาที่รายการในแท็บเครือข่ายแล้วเลือก "คัดลอกทั้งหมดเป็น HAR" การดำเนินการนี้จะคัดลอกรายการทั้งหมดเป็นวัตถุคล้าย JSON ซึ่งทำให้ง่ายต่อการวางลงในโปรแกรมแก้ไขและ Ctrl-F สำหรับ "http:" ไม่อยากจะเชื่อเลยว่าไม่มีแท็บแบบแผนในแท็บเครือข่ายเครื่องมือสำหรับนักพัฒนาซอฟต์แวร์
ผู้พิทักษ์

3
ฉันเพิ่งพบปัญหาเดียวกัน แต่การอ้างอิงรูปภาพ css และ js ทั้งหมดเป็น https แต่บางคนก็เป็นสีแดง ดังนั้นฉันจึงคัดลอก url และเมื่อฉันวางลงในแท็บเบราว์เซอร์ของตัวเองเท่านั้นฉันพบว่าใบรับรองของเซิร์ฟเวอร์หมดอายุแล้ว นั่นเป็นอีกสาเหตุหนึ่งที่ไม่ชัดเจนที่คุณอาจได้รับข้อผิดพลาดนั้น
สตู

88

ฉันเพิ่งมีปัญหานี้ใน Chrome ด้วย ฉันตรวจสอบในแท็บเครือข่าย แต่ทรัพยากรทั้งหมดถูกโหลดผ่าน https

วิธีแก้ไข: ปิด Chrome แล้วเปิดใหม่

Chrome ต้องแคชการตรวจจับเนื้อหาที่ปลอดภัยเพื่อที่แม้ว่าคุณจะแก้ไขปัญหาแล้วข้อความเนื้อหาที่ไม่ปลอดภัยก็จะไม่หายไป


18
การปิดโครเมี่ยมมีมากเกินไปคุณสามารถปิดแท็บได้
Patrick James McDougle

1
ฉันมีความสัมพันธ์แบบรัก / เกลียดกับ Chrome - ปัญหาเช่นนี้อยู่ในคอลัมน์ "ความเกลียดชัง" -_- เสียเวลาไปมากโดยเปล่าประโยชน์ ขอบคุณสำหรับวิธีแก้ปัญหานี้มันใช้ได้ผลสำหรับฉัน
Mike

@MjrKusanagi ขอบคุณสำหรับเคล็ดลับ .. RESTART ทำงานให้ฉันด้วย.. ฉันไม่เห็นอะไรเลยในแท็บเครือข่ายหรือข้อผิดพลาดของคอนโซล .. เปลี่ยนตัวเลือกเริ่มต้นทั้งหมดแล้ว.. สงสัยว่าทำไมมันไม่ทำงาน.. แต่ได้สีเขียว https: // ในแถบที่อยู่ ..
โชคดี

ปัญหาของฉันคือแท็ก <form> บนเพจของฉัน ดีบักเกอร์เครือข่ายของ Webkit จะไม่แสดงให้คุณเห็นหากพารามิเตอร์การดำเนินการของคุณชี้ไปที่ URL ที่ไม่ปลอดภัย!
Billy

39

ฉันไม่มีส่วนเกี่ยวข้องกับคนที่ให้สคริปต์ออนไลน์นี้ แต่มันง่ายและสามารถบุ๊กมาร์กในเบราว์เซอร์ใดก็ได้ .. ทำงานได้ดีและรวดเร็วในการแก้ปัญหา .. http://www.whynopadlock.com


เฮ้นั่นเป็นประโยชน์จริงๆฉันไม่พบผู้กระทำผิดจนกว่าฉันจะลองใช้สคริปต์นั้นและพบว่ามันเป็นแบบอักษรของ Google ที่เชื่อมโยงกับ http แทนที่จะเป็น https!
Daniel Valadas

นี่เป็นสิ่งเดียวที่ทำให้เกิดปัญหานี้ขอบคุณ ปรากฎว่าฉันมีแท็ก <form> ที่อ้างถึงการดำเนินการบน http ไม่ใช่ https!
Billy

8

ใน Google Chrome: คุณสามารถดูทรัพยากรที่กระทำผิดได้ในConsoleแท็บของInspect Elementหน้าต่าง

จะแสดงเป็น:

หน้าในhttps://example.com/pageแสดงเนื้อหาที่ไม่ปลอดภัยจากhttp : //example.com/resource

แน่นอนว่าคุณอาจต้องโหลดหน้านี้ซ้ำโดยInspect Elementเปิดหน้าต่างไว้แล้ว


3
แท็บเครือข่าย> คลิกขวาที่ส่วนหัวของคอลัมน์> คลิก "Scheme"
Costa

1
@ คอสต้า: ปัญหาของแนวทางนั้นคือจะไม่แสดงรายการเนื้อหาที่ Chrome บล็อก คำตอบในคำตอบแสดงทั้งสองอย่าง
colan

สิ่งนี้เรียกว่า "Console Drawer" และจะเปิดขึ้นโดยคลิกที่เครื่องหมาย "> ☰" ใกล้ด้านขวาบนของตัวตรวจสอบ
Dale Anderson

Chrome จะแจ้งคำเตือนนี้สำหรับแบบฟอร์มบนหน้าที่ส่งไปยังสถานที่ที่ไม่ปลอดภัย
Dale Anderson

คำตอบที่ดี ฉันแก้ไขปัญหา http ทั้งหมดที่แสดงในแท็บเครือข่ายของฉัน แต่คอนโซลแสดงให้ฉันเห็นว่าฉันต้องแก้ไขเป้าหมายแบบฟอร์มสำหรับจดหมายข่าวเพื่อให้ใช้ https เป้าหมายแบบฟอร์มบนหน้า SSL ไม่สามารถกำหนดเป้าหมายไปยังหน้าที่ไม่ใช่ SSL ได้
Buttle Butkus

6

วิธีที่ง่ายที่สุดวิธีหนึ่งคือคลิกขวาที่หน้าใน Firefox แล้วเลือกดูข้อมูลหน้า จากนั้นไปที่แท็บสื่อและค้นหาสิ่งที่โหลดจาก http แทนที่จะเป็น https


2
ซึ่งใช้งานได้ดีสำหรับรูปภาพและสิ่งที่คล้ายกัน แต่บ่อยครั้งที่เป็นไฟล์ Javascript หรือ CSS ที่เชื่อมโยงทำให้ HTTPS พัง
Joe C

นี่เป็นวิธีแก้ปัญหาที่เร็วที่สุดในการค้นหาลิงก์ผู้ร้ายในหน้าใดหน้าหนึ่ง ฉันคิดว่านี่เป็นทางออกที่ดีที่สุดสำหรับโซลูชันทั้งหมดในหน้านี้ .. ขอบคุณ
Pavan Kumar

สิ่งนี้ใช้ไม่ได้เนื่องจากไม่แสดงจาวาสคริปต์ที่โหลดโดยสคริปต์อื่น มันแสดงให้เห็นองค์ประกอบเดียวที่มีการเชื่อมโยงโดยตรงใน HTML
Janning

5

เราได้ขูดขีดคันของเราเองและเขียนเครื่องมือที่รวบรวมข้อมูลเว็บไซต์ของคุณและแจ้งให้คุณทราบว่าหน้าใดมีทรัพยากรที่ไม่ใช่ SSL อยู่ คุณเพียงแค่ป้อน URL รากของเว็บไซต์ของคุณ - ไม่จำเป็นต้องตรวจสอบทุกหน้าด้วยตนเอง

http://www.jitbit.com/sslcheck/


2

ฉันสังเกตเห็นว่าเมื่อมีปัญหานี้แถบเครื่องมือ (uTorrent) ทำให้เกิดข้อผิดพลาด ฉันลบแถบเครื่องมือและข้อผิดพลาดก็หายไป ไม่แน่ใจว่าเหตุใดแถบเครื่องมือจึงทำให้เกิดข้อผิดพลาดในไซต์ของฉัน แต่ไม่มีปัญหากับใบรับรอง SSL อีกต่อไป


1

ใน Chrome คุณสามารถค้นหาทรัพยากรที่โหลดผ่าน http กับ https ได้โดยทำดังต่อไปนี้:

1) ในเมนูเครื่องมือเลือกเครื่องมือ> เครื่องมือสำหรับนักพัฒนา

2) คลิกที่ไอคอนแถบเครื่องมือ "ทรัพยากร"

3) ขยายโฟลเดอร์ Frames เพื่อดูหน้าต่างๆ ขยายหน้าที่มีทรัพยากรที่คุณต้องการดู จากนั้นทรัพยากรแต่ละหน้าจะถูกแสดงรายการโดยแยกย่อยตามรูปภาพสคริปต์และสไตล์ชีต

4) หากต้องการดู URL ที่ใช้ในการโหลดทรัพยากรนั้นเพียงวางเมาส์เหนือชื่อทรัพยากรจากนั้น URL จะปรากฏขึ้นโดยใช้ http หรือ https คุณยังสามารถคลิกที่ชื่อภาพเพื่อดูภาพทางด้านขวาพร้อมกับ URL


3
แท็บเครือข่าย> คลิกขวาที่ส่วนหัวของคอลัมน์> คลิก "Scheme"
Costa

เยี่ยมมาก ทำไมจึงเรียกมันว่า Scheme แทนที่จะเป็น Protocol? : /
Aamir Afridi

1

ในการเพิ่มสิ่งนี้ฉันคลิกขวาที่ส่วนหัวของคอลัมน์ในมุมมองแท็บเครือข่ายและโปรโตคอลที่เลือก

หากคุณคลิกที่หัวข้อโปรโตคอลเนื้อหาของรายงานจะถูกจัดกลุ่มตาม HTTPS เป็นต้น


ใน Chrome v69 ฉันคิดว่ามันเป็นคอลัมน์ "Scheme" ที่น่าจะมีประโยชน์มากกว่าในกรณีนี้
Tasos

0

Chrome มีเครื่องมือสำหรับนักพัฒนาของตัวเอง

คุณสามารถคลิกขวาที่หน้าตรวจสอบ .. แล้วคลิกแท็บ "เครือข่าย" และโหลดหน้านี้ซ้ำ คุณจะเห็นขั้นตอนการทำงาน


0

ฉันไม่รู้ว่าจะมีใครกำลังตรวจสอบคำตอบนี้อยู่หรือคุณอาจพบวิธีแก้ปัญหาแล้ว แต่อย่างไรก็ตามคำตอบของฉันอาจช่วยคนอื่นที่ทุกข์ทรมานจากปัญหาที่คล้ายกัน

http://www.whynopadlock.com/

นี่คือลิงค์ที่ฉันใช้ตรวจสอบเนื้อหา / ไฟล์ที่ไม่ปลอดภัยซึ่งกำลังโหลดไปยังเพจของฉัน

หวังว่าจะช่วยได้ :)


0

ฉันเพิ่งค้นพบพฤติกรรมเดียวกันใน chrome (firefox แสดงการล็อกสีเขียว) แม้ว่าทรัพยากรทั้งหมดจะโหลดผ่าน https

เหตุผลในกรณีของฉันคือเซิร์ฟเวอร์รองรับ SSLv3 (google poodle) ที่เสีย

การตั้งค่า ssl_protocols เพื่อยกเว้น SSLv2 ใน nginx.conf เช่นนั้น

ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref: POODLE

แก้ไขปัญหาให้ฉัน

ฉันคิดว่ามันน่าเสียดายที่ chrome ไม่ทำให้เหตุผลนี้โปร่งใสมากขึ้น "หน้านี้โหลดทรัพยากรอย่างไม่ปลอดภัย" ทำให้เข้าใจผิดได้มากหากไม่ผิด


0

หากคุณต้องการรวบรวมข้อมูลไซต์ของคุณเองจากเดสก์ท็อปของคุณเองเพื่อดูรายการแหล่งที่มาทั้งหมดที่โหลด (ไม่ได้โหลดโดยจาวาสคริปต์ซึ่งควรคำนึงถึง) หากใช้ windows คุณสามารถใช้ตัวเชื่อมโยงของ Xenuได้ ส่งออกไฟล์ TSV จากนั้นคลิกขวาและเปิดด้วย excel จากนั้นจัดเรียงตาม URL จากนั้นคุณจะพบทรัพยากร http ที่น่ารำคาญสำหรับทุกหน้าในไซต์!

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.