โครงการความปลอดภัยของอินเทอร์เน็ตสาธารณะ

ทำให้อินเทอร์เน็ตปลอดภัย

NullSquare ค้นหาการตั้งค่าความปลอดภัยที่ผิดพลาดอย่างชัดเจนและมองเห็นได้จากภายนอก แล้วแจ้งองค์กรที่รับผิดชอบเป็นการส่วนตัว โครงการเดียวกันนี้ยังศึกษาโค้ดโอเพนซอร์สสาธารณะ เพื่อหาปัญหาที่เราทำซ้ำได้ แก้ได้ และพิสูจน์ได้

จากงานทั้งหมดของ NullSquare
11,179
ความเสี่ยงที่พบ
6,742
ผ่านการตรวจสอบ
449
วิกฤตและสูง
152
CVE ที่ไม่ซ้ำ

ทำไมคุณจึงได้รับข้อความ

เอเจนต์ของเราพบบางอย่างที่เปิดสู่อินเทอร์เน็ตสาธารณะบนโดเมนขององค์กรคุณ เราจึงเขียนถึงคุณเป็นการส่วนตัว เพื่อให้ทีมของคุณตรวจสอบและปิดมันได้ เราไม่ได้บอกใครอื่น และไม่ได้เผยแพร่

โครงการนี้ตรวจอะไรบ้าง

โครงการนี้ดูเฉพาะสิ่งที่มองเห็นได้จากอินเทอร์เน็ตสาธารณะอยู่แล้ว:

  • บริการที่เข้าถึงได้จากอินเทอร์เน็ตทั้งที่ไม่ควรเป็นเช่นนั้น
  • หน้าจอผู้ดูแลที่เปิดให้ใครก็ตามที่หาเจอ
  • เครื่องมือสำหรับพัฒนาหรือดีบักที่ถูกปล่อยให้รันอยู่แบบสาธารณะ
  • รายการไดเรกทอรีที่เสิร์ฟไฟล์ซึ่งไม่ควรถูกเสิร์ฟเลย
  • หน้าเริ่มต้นของการดีพลอยที่ยังค้างอยู่บนโฮสต์ที่ใช้งานจริง
  • การตั้งค่าผิดพลาดในลักษณะเดียวกันที่ใครก็หาเจอได้ด้วยวิธีเดียวกับที่เราหาเจอ

เอเจนต์เก็บเพียงเท่าที่พอจะระบุโดเมนหรือบริการที่ได้รับผลกระทบ และบอกว่าเป็นปัญหาประเภทใด ไม่ได้เข้าไปลึกกว่านั้น

การวิจัยโอเพนซอร์ส

การแจ้งเตือนช่วยลดพื้นที่โจมตีที่เปิดอยู่ แต่ไม่ได้แก้โค้ดที่อยู่ข้างใต้ โครงการนี้จึงทำงานที่ต้นทางด้วย เราเลือกรีโพซิทอรีโอเพนซอร์สสาธารณะทีละหนึ่งแห่ง แล้วศึกษามันในแซนด์บ็อกซ์ที่ใช้แล้วทิ้ง เพื่อหาปัญหาความปลอดภัยที่เราพิสูจน์ได้

การที่เอเจนต์ยืนยันว่าบางอย่างมีช่องโหว่ ยังไม่ใช่ความเสี่ยงที่ยืนยันแล้ว ผลจากสแกนเนอร์ก็เช่นกัน ไม่มีอะไรนับได้จนกว่าจะทำซ้ำได้ การแก้ยืนระยะได้ และทั้งสองอย่างถูกบันทึกไว้ดีพอที่คนอื่นจะรันซ้ำได้

  1. 01ตรึงรีโพซิทอรีถูกโคลนที่คอมมิตเจาะจงลงในแซนด์บ็อกซ์ใช้แล้วทิ้งซึ่งไม่มีข้อมูลรับรองของระบบจริง
  2. 02ตั้งฐานบิลด์และเทสต์ของโครงการเองจะถูกรันก่อนเริ่มวิจัย เพื่อให้รู้ว่าอะไรผ่านอยู่แล้ว
  3. 03วิจัยเอเจนต์อ่านและทดลองรันโค้ดภายในแซนด์บ็อกซ์ บนรีวิชันที่ตรึงไว้เพียงอันเดียวนั้น
  4. 04ทำซ้ำสิ่งที่พบจะนับได้ก็ต่อเมื่อทำซ้ำได้จากเช็คเอาต์ที่สะอาด โดยไม่มีสถานะตกค้างจากการสำรวจ
  5. 05แก้ไขการแก้ที่เล็กที่สุดเท่าที่สมเหตุสมผล พร้อมเทสต์ป้องกันการถดถอยเมื่อโครงสร้างโครงการเอื้อให้ทำได้
  6. 06ตรวจยืนยันขั้นตอนการทำซ้ำถูกรันใหม่ทั้งก่อนและหลังการแก้ไข และการตรวจสอบของโครงการเองก็ถูกรันอีกครั้ง
  7. 07ทบทวนมนุษย์เป็นผู้ตัดสินว่าจะรับหรือปฏิเสธผลลัพธ์ ไม่มีอะไรออกจากแล็บโดยอัตโนมัติ

เราไม่เคยลบ ข้าม หรือลดความเข้มของเทสต์เพื่ออ้างว่าผ่าน เมื่องานไม่ถึงเกณฑ์ คำตอบคือ ไม่มีความเสี่ยงที่ยืนยันได้ พร้อมบันทึกว่าได้ลองอะไรไปบ้างและอะไรที่ตรวจไม่ได้ ไม่ว่าทางไหน การรันก็ให้ชุดเอกสารเดียวกัน:

ชุดหลักฐาน

ใช้ภายใน ผ่านการตรวจโดยมนุษย์ และแล็บไม่เคยเผยแพร่เอง

summary.md
ได้ลองอะไรไป พบอะไร และอะไรที่ตรวจไม่ได้
risk.md
สาเหตุราก เส้นทางโค้ดที่ได้รับผลกระทบ และการประเมินความเชื่อมั่นอย่างตรงไปตรงมา
reproduction/
คำสั่งและหลักฐานที่สังเกตได้จากรีวิชันที่ยังไม่ได้แก้
patch.diff
การแก้ขั้นต่ำ ผูกกับคอมมิตที่ตรึงไว้
tests/
เทสต์ป้องกันการถดถอยที่ล้มเหลวก่อนแก้ และผ่านหลังแก้
verification.md
ผลลัพธ์ก่อนและหลัง พร้อมเอาต์พุตของบิลด์ เทสต์ และลินต์
run-metadata.json
รีโพซิทอรี คอมมิตที่แน่ชัด โมเดล ระยะเวลา และต้นทุน

สิ่งที่โครงการนี้ไม่ทำ

  • ไม่เดารหัสผ่าน ไม่ทดสอบข้อมูลรับรอง ไม่ข้ามการยืนยันตัวตน
  • ไม่โจมตีจริง ไม่ทดสอบแบบทำลาย ไม่ยกระดับสิทธิ์ ไม่ร้อยช่องโหว่ต่อกัน
  • ไม่เก็บไฟล์ส่วนตัว ระเบียนลูกค้า ซอร์สโค้ด หรือเนื้อหาที่ต้องล็อกอิน
  • ไม่เผยแพร่ ไม่ขาย และไม่ทำดัชนีสาธารณะของปัญหาที่พบ
  • ไม่ทดสอบสภาพแวดล้อมที่ใช้งานจริงหรือที่โฮสต์อยู่ระหว่างการวิจัย ทำงานกับโคลนในเครื่องเท่านั้น
  • ไม่ฟอร์ก ไม่สร้างแบรนช์ ไม่คอมมิต ไม่พุช ไม่เปิดพูลริเควสต์ และไม่เปิดอิสชู แล็บไม่มีสิทธิ์เขียนลงรีโพซิทอรี
  • แล็บไม่ติดต่อผู้ดูแลโครงการ ไม่ออกประกาศเตือน ไม่ขอ CVE และไม่ส่งขอรางวัลด้วยตนเอง
  • ไม่สแกนแหล่งเก็บโค้ดสาธารณะแบบเหมารวม รีโพซิทอรีถูกเลือกทีละแห่งอย่างตั้งใจ

ความเป็นส่วนตัวและการจัดการข้อมูล

การแจ้งเตือนถูกส่งตรงไปยังผู้ติดต่อสาธารณะที่เหมาะสมของโดเมนนั้น เซสชันการตรวจพบจะถูกทิ้งหลังส่งข้อความแล้ว และ NullSquare ไม่ได้เก็บฐานข้อมูลความเสี่ยงจากโครงการนี้ที่ค้นหาได้

การรันวิจัยทำงานกับซอร์สโค้ดสาธารณะเท่านั้น แซนด์บ็อกซ์ถูกทำลายหลังรันเสร็จ และชุดหลักฐานยังคงอยู่ภายใน หากมีผลลัพธ์ใดถูกนำไปหาผู้ดูแลโครงการ นั่นคือการตัดสินใจแยกต่างหากและโดยเจตนาของมนุษย์

บันทึกขั้นต่ำเกี่ยวกับการส่งอีเมล การป้องกันการใช้ในทางมิชอบ และการขอไม่รับข้อมูล อาจถูกเก็บแยกไว้ บันทึกเหล่านี้ไม่มีข้อมูลเป้าหมายที่คัดลอกมาหรือผลลัพธ์จากการโจมตี

ตรวจสอบหรือตอบกลับการแจ้งเตือน

ข้อความ «Secure the internet» ที่แท้จริงจะไม่ขอข้อมูลรับรอง การชำระเงิน คีย์ API หรือสิทธิ์เข้าถึงระบบของคุณเลย คุณสามารถตอบกลับข้อความ ขอไม่รับข้อมูล แก้ไขผู้ติดต่อ หรือยืนยันแหล่งที่มาโดยตรงกับ NullSquare

null@nullsquare.net
NullSquareแจ้งเป็นการส่วนตัว ไม่เปิดเผยต่อสาธารณะ