ทีมวิจัยจาก Pen Test Partners รายงานถึงการโจมตีโปรโตคอล Z-Wave ที่มักใช้งานในอุปกรณ์ IoT หลากหลายยี่ห้อ ช่องโหว่ทำให้แฮกเกอร์สามารถเข้าควบคุมอุปกรณ์ IoT ในบ้าน ไม่ว่าจะเป็น หลอดไฟ, ล็อกประตู, หรือแม้แต่สัญญาณกันขโมย
การโจมตีครั้งนี้อาศัยการลดการเข้ารหัสจากกระบวนการแบบ S2 ที่ความปลอดภัยสูงไปสู่การเข้ารหัสแบบเก่ากว่าคือ S0 ที่เคยมีรายงานการโจมตีตั้งแต่ปี 2013 สาเหตุจากแพ็กเก็ตส่งข้อมูลว่าตัวควบคุมอุปกรณ์รองรับการเข้ารหัสแบบใดบ้างนั้น ไม่มีการเข้ารหัสหรือการยืนยันความถูกต้องของแพ็กเก็ตแต่อย่างใด เมื่อแฮกเกอร์สามารถดักแพ็กเก็ตจากตัวควบคุมที่ส่งไปยังอุปกรณ์ปลายทางแล้วส่งแพ็กเก็ตปลอมไปแทนที่ ก็สามารถบังคับให้อุปกรณ์เชื่อมต่อกับตัวควบคุมในรูปแบบการเข้ารหัส S0 ที่แฮกได้ง่ายได้
การสาธิตการโจมตี ผู้โจมตีต้องอยู่ในระยะใกล้บางกรณีอาจจะต้องเปลี่ยนแบตเตอรี่ของอุปกรณ์ด้วย
อย่างไรก็ดี Pen Test Partners แสดงความไม่พอใจต่อ Silabs ผู้ออกมาตรฐาน Z-Wave และรับรองอุปกรณ์ ที่ออกมาตอบว่าช่องโหว่นี้เป็นช่องโหว่ที่รู้อยู่ก่อนแล้ว และจะไม่มีการแก้ไขเพราะมาตรฐานระบุว่าหากคอนโทรลเลอร์เชื่อมต่อกับอุปกรณ์ด้วยการเข้ารหัส S0 ให้แจ้งเตือนผู้ใช้ และ Z-Wave Alliance เคยประกาศว่าอุปกรณ์ที่จะได้รับรองหลังเดือนเมษายน 2017 ต้องรองรับการเข้ารหัส S2 แต่หนึ่งปีที่ผ่านมา อุปกรณ์ที่ได้รับรองหลังเส้นตาย 180 รายการกลับรองรับ S2 เพียง 48 รายการเท่านั้น
อุปกรณ์ IoT กำลังถูกโจมตีแบบเดียวกับคอมพิวเตอร์ตามบ้าน, เซิร์ฟเวอร์, และโทรศัพท์มือถือที่เชื่อมต่ออินเทอร์เน็ต แต่อุปกรณ์เหล่านี้กลับไม่ได้รับการอัพเดต การรักษาตความปลอดภัยอุปกรณ์ในยุคต่อไปคงเป็นเรื่องท้าทายทีเดียว
ที่มา - Pen Test Partners, ThreatPost, Silicon Labs
Comments
นี่คือเหตุผลหลักที่ผมเลือกทำ IoT ด้วย Windows 10 IoT เลยนะ คือมันกินเครื่องพอควร (รันบน RPi Zero ไม่ได้) แต่ผมไม่มีกำลังมากพอที่จะดูแลการอัปเดตให้ทุกเครื่องอย่างทั่วถึงได้นี่แหละ
Windows 10 IoT ใช้บน RPi เป็นยังไงบ้างครับ พัฒนาด้วยภาษาอะไรได้บ้างครับ พอดีกำลังสนใจทำอุปกรณ์ IoT ที่สั่งงานด้วยเสียงได้ ตัวประมวลผลเสียงอยู่บน Cloud แค่ Upload ไฟล์เสียงไป Cloud ครับ
ภาษา C# ธรรมดาครับ มี Cortana API ให้ใช้
https://docs.microsoft.com/en-us/windows/iot-core/extend-your-app/cortanaoniotcore
(แถม)การพัฒนามีสองแบบให้เลือกคือ
จากประสบการณ์ที่ใช้กับ Rpi 2
(จริงๆ ผมควรจะตอบที่เมนต์บนแฮะ - -" ลั่นไปแล้วครับ ตรงนี้แล้วกัน)
เขียนได้หลายภาษาครับ node.js ก็เขียนได้นะ แต่ผมใช้ C# ครับ กินเครื่องที่ว่านี่ CPU ก็นิ่งๆ อยู่ จะเป็นกิน RAM มากกว่า ข้อจำกัดขั้นต่ำมันจำกัด RAM ที่มากกว่า RPi Zero มีให้
ผมเขียน UWP background headless app ครับ เขียนด้วย C# ตัวอุปกรณ์ IoT ไม่มีหน้าจอ ไม่มีการสั่งงานอะไรทั้งนั้น เอาไปเสียบไฟแล้ววางไว้เฉยๆ
นอกจากนั้นมีข้อดีอีกตามนี้ครับ
ซึ่งผมว่าสำคัญนะ เพราะ RPi นี่แค่ถอด micro SD ไป clone ก็ได้อุปกรณ์ออกมาใช้งานเพิ่มอีกตัวนิ่มๆ เลยครับ
ขอบคุณครับ สงสัยต้องใช้ Node.js แล้ว เพราะผมจะใช้ Dialogflow กับ firebase อยู่ ถ้าเขียน API ฟังก์ชั่น บน Platform เลยมันให้ใช้ Node.js เป็น Default ถ้าใช้ Node.js บน Client ด้วยจะได้ไม่เปลืองแรง
รู้อย่างเดียวคือมันแพงพอๆกับ Xbee (รึว่าแพงกว่า?)คนก็ไม่อยากใช้
ไปๆมาๆ ซื้อ NRF24L01 มาเข้ารหัสเองยังถูกกว่าเยอะ
การรักษาตความ --> การรักษาความ