เมื่อช่วงปลายเดือน ก.ค. ทาง Dragos ได้ออกรายงานเกี่ยวกับมัลแวร์ชื่อ FrostyGoop ที่คาดว่าถูกใช้ในการโจมตีบริษัทด้านพลังงานในเมือง Lviv ประเทศยูเครน

สรุปเนื้อหาในรายงานคร่าวๆ คือ FrostyGoop เป็นมัลแวร์ที่เขียนด้วยภาษา Go สามารถคุยกับอุปกรณ์ ICS/OT ด้วยโปรโตคอล Modbus/TCP (port 502) และจากข้อมูลใน configuration file ของ FrostyGoop พบว่าอุปกรณ์ที่โดนโจมตีคือ ENCO control devices โดยผลกระทบจากการโจมตีทำให้ระบบทำความร้อนของอพาร์ตเมนต์กว่า 600 แห่งในเมือง Lviv หยุดทำงานเป็นเวลาเกือบ 48 ชั่วโมง 🥶

ในรายงานแนะนำแนวทางในการรับมือกับ FrostyGoop โดยให้ทำตาม SANS Five ICS Cybersecurity Critical Controls ที่ประกอบด้วย

  1. ICS-Specific Incident Response Plan
  2. Defensible Architecture
  3. ICS Network Visibility and Monitoring
  4. Secure Remote Access
  5. Risk-Based Vulnerability Management Program

พอรายงานนี้ออกมา ก็ได้รับความคิดเห็นและ feedback จากกลุ่ม OT/ICS security researchers เยอะพอสมควร ตั้งแต่เรื่องความสมเหตุสมผลของข้อมูลในรายงาน ทั้งรูปแบบการโจมตี จำนวนผู้ได้รับผลกระทบ เวลาที่ใช้ในการแก้ไขให้กลับมาเป็นปกติ ฯลฯ

ประเด็นที่ผมคิดว่าน่าสนใจและอยากจดไว้มีประมาณนี้

The Dragos Report is another example of why we haven’t seen progress. What they have for remediation is not wrong, although unsurprisingly detection is emphasized, it’s incomplete. It’s missing the remediation that addresses the core problem: the ICS control protocol is unauthenticated.

There’s a solution: Modbus/TCP Security. Where is the recommendation to upgrade to Modbus/TCP Secure or another secure control protocol?

– Dale Peterson

มุมมองของ Dale คือ การทำ SANS 5 ICS Critical Controls เป็นคำแนะนำที่ดี แต่ไม่ได้เป็นการแก้ปัญหาที่สาเหตุจริงๆ เพราะตาม Critical Controls จะเน้นให้ monitor traffic Modbus ที่ผิดปกติ ซึ่งเป็นคำแนะนำที่มีมาตั้งแต่ปี 2004… วิธีแก้ปัญหาให้ตรงจุดคือควรเปลี่ยนไปใช้โปรโตคอลที่มี authentication/built-in security แทน 😤

The discovered sample is a generic modbus client capable of reading and writing analog outputs (basically 0-100% values). Full stop. It is not programmed to interact with the digital inputs/outputs (anything that is ON/OFF, etc.).

– Marina Krotofil

Marina บอกว่าตัวอย่างมัลแวร์จริงๆ แล้วก็คือ Modbus client ธรรมดา และทำได้แค่อ่าน-เขียนค่า analog output… พอฟังแล้วก็ทำให้ “เอ๊ะ” เหมือนกัน ว่าเออแล้วเราจะแบ่งแยกระหว่างมัลแวร์กับ client ที่ตรงไหน แต่ คหสต. ผมก็คงยังนับว่ามันเป็นมัลแวร์ เพราะเป็นซอฟต์แวร์แปลกปลอมที่เข้ามาอยู่ในระบบของเรา 👾

นอกจากนี้ Marina ยังวิเคราะห์เจาะลึกไปถึงเอกสารประกวดราคาของ LvivTeploEnergo ที่จัดซื้อ ENCO devices ว่าอุปกรณ์ดังกล่าวน่าจะเป็นแค่ sensor หรือ data logger ที่ไม่สามารถยุ่งกับ physical process ได้ ซึ่งก็ทำให้สงสัยต่อไปอีกว่า แล้วการโจมตีที่เกิดขึ้นจริงๆ มันเป็นยังไงกันแน่ อุปกรณ์ส่วนไหนโดนโจมตี เลยทำให้ระบบทำความร้อนหยุดทำงานไป ตามข้อมูลจากรายงาน 🤔

Summary

สรุปว่า FrostyGoop เป็นหัวข้อที่น่าสนใจติดตามเพิ่มเติม ว่าจริงๆ แล้วเกิดอะไรขึ้น และทำให้รู้ว่าการอ่าน report ด้านไซเบอร์ ต้องอ่านแบบมีสติ คิด วิเคราะห์ แยกแยะ และหาข้อมูลเพิ่มเติม จะเชื่อหมดเลยทันทีไม่ได้ 😔

References