เตือนภัย
Security
มีคนกำลังล่า "ชาว Rust" ตัวเป็นๆ ผ่านสายวิดีโอคอล
ไม่ใช่แฮกโค้ด แต่แฮกคน — แล้วใช้สิทธิ์ publish ของเหยื่อเป็นทางเข้าสู่ supply chain
ทีมข่าว เอไอไทย.com
⏱ อ่าน 4 นาที
โค้ดโอเพนซอร์สจะปลอดภัยแค่ไหน ถ้าคนที่ถือกุญแจ publish มันถูกหลอกให้ติดมัลแวร์เองตั้งแต่ต้นน้ำ
ถ้าคุณเป็นคนหนึ่งที่ดูแล crate ยอดนิยมใน Rust หรือเป็นสมาชิกของ rust-lang อยู่ ข่าวนี้คือสัญญาณให้ระวังตัวให้ดี เพราะมีแคมเปญที่ตั้งใจล่าคนกลุ่มนี้โดยตรง ไม่ใช่ยิงสแปมมั่วไปทั่ว แต่เลือกเป้าหมายเป็นรายคน
Adam Harvey กับทีม security ของ crates ออกมาเตือนว่า ตอนนี้มีแคมเปญที่มุ่งเป้าไปที่สมาชิก rust-lang และเจ้าของ crate ที่มีคนใช้เยอะ โดยมีเป้าหมายคือยึดเครื่องหรือบัญชีของเหยื่อให้ได้ แล้วใช้สิทธิ์นั้น publish มัลแวร์ขึ้นไปบน ecosystem
รูปแบบที่ทีม security อธิบายไว้คือ "นัดวิดีโอคอลกันในเรื่องที่ดี" ไม่ว่าจะอ้างว่าเป็นโอกาสงาน เป็นโปรเจกต์ใหม่ หรือเป็นสัญญาจ้าง พอเหยื่อเข้ามาในคอลแล้ว ปลายสายก็จะใช้จังหวะนั้นเป็นช่องทางให้เหยื่อติดตั้งอะไรบางอย่างลงเครื่องตัวเอง เช่นอ้างว่า "audio codec หายไป ต้องโหลดเพิ่ม" หรือไม่ก็หลอกให้รันคำสั่งบางอย่าง เช่นการเอาคำสั่งไปวางไว้ใน clipboard แล้วให้เหยื่อเผลอ paste รัน
ฟังดูเชยใช่ไหม แต่มันได้ผล เพราะมันไม่ได้เจาะระบบ แต่มันเจาะคน ซึ่งเป็นจุดอ่อนที่สุดของทุกซัพพลายเชนอยู่แล้ว
ไม่ใช่แค่ทฤษฎีหรือคำเตือนลอยๆ เมื่อเดือนที่แล้ว กลวิธีนี้ถูกใช้โจมตี supply chain สำเร็จมาแล้ว โดยพุ่งเป้าไปที่ crate ชื่อ arrayref และตัวอื่นๆ อีก นั่นแปลว่าคนร้ายไม่ได้แค่วนทดลอง แต่กำลังเก็บเกี่ยวผลได้จริง
ประเด็นที่ Simon Willison หยิบมาขยายต่อน่าสนใจมาก เขาบอกว่าซอฟต์แวร์แทบทุกตัวในโลกทุกวันนี้พึ่งพาโอเพนซอร์ส และข้างหลังทุกแพ็กเกจใน dependency network คือเครือข่ายของ "คนจริงๆ" ที่มีสิทธิ์ publish ทุกคนในเครือข่ายนั้นคือ attack vector ที่เป็นไปได้ทั้งหมด
พูดง่ายๆ คือถ้าคุณใช้ไลบรารี A ที่ดึง B ที่ดึง C ที่ดึง D ต่ออีกที คุณไม่ได้แค่เชื่อใจโค้ดของ D คุณกำลังเชื่อใจ "คนที่ถือกุญแจ publish ของ D" ด้วย และถ้าคนคนนั้นถูกหลอกให้ติดมัลแวร์ คุณก็โดนลูกหลงไปด้วยโดยไม่รู้ตัว
Willison ยอมรับตรงๆ ว่าแนวป้องกันที่ดีที่สุดที่เขาพอจะนึกออกตอนนี้คือ dependency cooldown คือปล่อยให้แพ็กเกจใหม่ที่เพิ่งปล่อยออกมามีเวลา "พัก" สัก 2-3 วันก่อนจะอัปเกรดไปใช้ หวังว่าถ้ามี supply chain attack แบบนี้เกิดขึ้น จะมีคนอื่นเจอและแจ้งเตือนก่อนที่เราจะโดน
ฟังดูเป็นวิธีที่รับได้ แต่ก็บอกอะไรบางอย่างเหมือนกัน นั่นคือเรามาถึงจุดที่การอัปเดตให้เร็วที่สุดไม่ใช่คำตอบอีกต่อไปแล้ว บางครั้งการ "ช้าๆ หน่อย รอให้คนอื่นลองก่อน" อาจเป็นวิธีเอาตัวรอดที่สมเหตุสมผลกว่า
ระวังวิดีโอคอลที่ดูดีเกินเหตุ
ถ้ามีคนนัดคอลเรื่องงาน โปรเจกต์ หรือสัญญาจ้าง แล้วพยายามให้คุณติดตั้งอะไรหรือรันคำสั่ง ให้สงสัยไว้ก่อน
อย่าเชื่อ "codec หาย" หรือคำสั่งใน clipboard
ทั้งสองอย่างนี้ถูกใช้เป็นไม้เด็ดในแคมเปญนี้มาแล้ว ไม่ใช่เรื่องบังเอิญ
ใช้ dependency cooldown
รอสัก 2-3 วันก่อนอัปเกรดแพ็กเกจใหม่ ให้คนอื่นเป็นด่านหน้าแทนเรา
เรื่องนี้ตอกย้ำว่าโลกโอเพนซอร์สพึ่งพา "ความไว้ใจระหว่างคน" มากกว่าที่เราอยากยอมรับ และตราบใดที่คนยังเป็นด่านสุดท้ายของการ publish มัลแวร์จะไม่หายไปไหน ต่อให้โค้ดจะเปิดให้ตรวจแค่ไหนก็ตาม
ที่มา: Simon Willison's Weblog — อ่านต้นฉบับ
ความคิดเห็น 6
กำลังโหลดความคิดเห็น...