17 คะแนน โดย xguru 2020-11-09 | 3 ความคิดเห็น | แชร์ทาง WhatsApp

สรุปผลจากการทดลองจริงกับ GitHub และ GitLab เรียงตามลำดับเวลา

  1. คอมมิต AWS key ขึ้น GitHub

  2. ผ่านไป 7 นาที ได้รับการแจ้งเตือนการรั่วไหลจาก GitGuardian

  3. ผ่านไป 11 นาที โทเคนถูกทำให้เสียหาย (compromised, รั่วไหลจนไม่ปลอดภัยให้ใช้งานต่อ)

  4. ภายใน 2 ชั่วโมง มีการแจ้งเตือนการเข้าถึง 5 ครั้งจากเยอรมนี/เนเธอร์แลนด์/สหราชอาณาจักร/ยูเครน เป็นต้น

  5. GitHub ส่งอีเมลแจ้งเตือน Vulnerable Dependencies มาให้

  6. คอมมิตขึ้น GitLab

  7. ผ่านไป 62 นาที โทเคนถูกใช้งานครั้งแรกและครั้งสุดท้ายจากฝรั่งเศส

  8. บน GitLab ไม่ได้รับการแจ้งเตือนด้านความปลอดภัยใด ๆ เลย (มีการแจ้งเตือนด้านความปลอดภัยให้เฉพาะผู้ใช้ Gold/Ultimate เท่านั้น)

บทเรียนที่ได้

  1. มีคนสแกน GitHub มากกว่า GitLab

  2. ถ้าใช้งาน GitHub อยู่ ควรลองดูบริการ GitGuardian

  3. ถ้าใช้งาน GitLab อยู่ ควรพิจารณาอัปเกรดเป็น Gold/Ultimate

  4. ถ้าต้องการป้องกันการรั่วไหลล่วงหน้า ให้ใช้ Talisman (Pre-Commit Hook)

  5. หากต้องการตรวจสอบย้อนหลังว่าเคยรั่วไหลหรือไม่ ให้พิจารณานำ GitLeaks มาใช้

3 ความคิดเห็น

 
galadbran 2020-11-09

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

 
xguru 2020-11-09

เรื่องแบบนั้น ใครๆ ก็ต้องเคยเจอกันสักครั้งไม่ใช่เหรอครับ... 555

 
xguru 2020-11-09

ถ้าอัปโหลด Secret Key ขึ้นไปยัง repo แบบสาธารณะ จะเกิดอะไรขึ้น

GitGuardian : https://www.gitguardian.com/

Talisman : https://github.com/thoughtworks/talisman/

GitLeaks : https://github.com/zricethezav/gitleaks