Hacking Team RCS กับการดู “ข้อมูลเข้ารหัส” โดยไม่ต้องถอดรหัส

RCS Exploit Portal

(ต่อเนื่องจากโพสต์นี้และโพสต์นี้ในเฟซบุ๊ก)

แม้จะยังไม่แน่ชัดว่าอุปกรณ์ชื่อ “SSLX-GEO” และ “SSLX-T200” ที่ทางกลุ่ม “พลเมืองต่อต้าน Single Gateway” พบในระบบที่อ้างว่าเป็นของกองทัพบกนั้นคืออะไร และทางกองทัพบกก็ได้ปฏิเสธข้อมูลดังกล่าวแล้ว

แต่เมื่อปีที่แล้ว มีเอกสารอีกชุดใน Wikileaks เป็นอีเมลและเอกสารส่งสินค้าของบริษัท Hacking Team ที่ระบุว่ามีการส่งสินค้า ติดตั้ง และทดสอบระบบส่งโปรแกรมฝังตัวเพื่อเข้าควบคุมเครื่องปลายทางที่ชื่อ Remote Control System (RCS) Galileo ในประเทศไทย เมื่อเดือนพฤษภาคม 2558

—-

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

พูดอีกอย่าง แม้ RCS จะไม่ได้ถอดรหัส แต่มันทำให้การเข้ารหัสหมดความหมาย

เมื่อ RCS เข้าควบคุมเครื่องได้แล้ว ก็แน่นอนว่าจะสามารถดูข้อมูลอื่นๆ ในเครื่องได้ด้วย ไม่เฉพาะข้อมูลการสื่อสาร

Citizen Lab พบหลักฐานว่าระบบนี้ถูกใช้ในหลายประเทศ เช่น อาเซอร์ไบจาน อียิปต์ เอธิโอเปีย ฮังการี อิตาลี คาซัคสถาน เกาหลี มาเลเซีย เม็กซิโก โอมาน ปานามา ซาอุดิอาระเบีย ซูดานอาหรับเอมิเรสต์ ตุรกี และประเทศไทย

—-

ข้อมูลคอมพิวเตอร์ในระบบเครือข่ายนั้น จำแนกได้เป็น 2 ประเภทใหญ่คือ

1) ข้อมูลที่อยู่นิ่งๆ ในเครื่อง หรือ ข้อมูล ณ จุดพัก (data at rest)

2) ข้อมูลที่วิ่งไปมาระหว่างเครื่อง 2 เครื่อง หรือ ข้อมูลระหว่างเดินทาง (data in transit)

—-

การเข้ารหัสการสื่อสารด้วย SSL (Secure Sockets Layer) หรือ TLS (Transport Layer Security) นั้นเป็นการเข้ารหัสข้อมูลประเภทที่ 2 (ข้อมูลระหว่างเดินทาง) เพื่อให้ข้อมูลที่ส่งจากปลายทางหนึ่งไปยังอีกปลายทางหนึ่งมีความปลอดภัย ไม่สามารถถูกดูได้โดยเครื่องที่ต้องผ่านระหว่างทาง (ระบบอินเทอร์เน็ตทำงานคล้ายระบบไปรษณีย์ในแง่ที่ว่ากว่าข้อมูลจะถึงจุดหมาย ต้องฝากส่งกันหลายต่อหลายทอด)

การถอดรหัสข้อมูลที่ส่งด้วย SSL/TLS นั้นเป็นเรื่องยากหากไม่มีกุญแจที่ใช้ส่งข้อมูลแต่ละครั้ง (และระบบทำงานปกติไม่มีรูรั่ว)

เมื่อการดักและถอดรหัสข้อมูลประเภทที่ 2 (ข้อมูลระหว่างเดินทาง) ทำได้ยาก อีกวิธีที่จะดูข้อมูลได้ก็คือ พุ่งเป้าไปยังข้อมูลประเภทที่ 1 (ข้อมูล ณ จุดพำนัก) แทน

—-

หาก “จุดพำนัก” ดังกล่าวสามารถระบุที่ตั้งได้ชัดเจน เป็นเครื่องในความครอบครองของบุคคลหรือหน่วยงานที่ติดต่อได้ การ “ขอ” ข้อมูลตรงๆ จากบุคคลหรือหน่วยงานดังกล่าว ก็เป็นเรื่องที่ทำได้ (ไม่ว่าจะถูกต้องตามกฎหมายหรือไม่ก็ตาม)

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

—-

อ่านความสามารถส่วนหนึ่งของ RCS และรายละเอียดเกี่ยวกับอีเมลสอบถามและการติดตั้งทดสอบในประเทศไทยเมื่อพฤษภาคม 2558 — ระบบนี้อาจจะเกี่ยวหรือไม่เกี่ยวกับคำสั่งกระทรวงไอซีทีที่ 163/2557 ตั้งคณะทำงานทดสอบระบบเฝ้าติดตามออนไลน์ เมื่อ 15 ธ.ค. 2557

—-

ในแง่นี้ แม้ระบบ Remote Control System จะไม่ใช่ระบบที่ถอดรหัสข้อมูลการสื่อสาร แต่ก็เป็นระบบที่ทำให้การเข้ารหัสข้อมูลการสื่อสารระหว่างเครื่องไม่มีความหมายอีกต่อไป

และในกรณีข้อมูลการสื่อสารที่เป็นการสื่อสาร 2 ฝั่งนั้น แม้ปลายทางอีกฝั่งจะไม่ติดเชื้อ RCS แต่เนื่องจากข้อมูลการสื่อสาร (เช่นการแชต) นั้นมีการแลกเปลี่ยนรู้เท่ากันทั้ง 2 ฝั่ง ก็แปลว่าตัว RCS ก็จะรู้ข้อมูลการสื่อสารของอีกฝั่งได้ด้วย (เฉพาะที่มีการแลกเปลี่ยนกับเครื่องที่ติดเชื้อ)

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

—-

สิ่งที่พอจะสบายใจได้บ้าง (หรืออาจจะไม่ก็ได้นะ) ก็คือ

1) RCS นั้นจะต้องทำอย่างเจาะจงเป้าหมาย (ส่วนเป้าหมายจะมีได้กี่เป้าหมายนั้น ก็แล้วแต่ทรัพยากร)

2) RCS ฝังตัวที่เครื่องเป้าหมายโดยอาศัยรูรั่วของแอปและระบบปฏิบัติการ (exploits) ถ้าเราหมั่นอัปเดตระบบปฏิบัติการและแอปเสียหน่อย (ใครใช้ระบบรุ่นเก่าๆ ที่โดนผู้ผลิตลอยแพแล้วก็เสียใจด้วย) ไม่ติดตั้งแอปน่าสงสัย และใช้เน็ตอย่างระมัดระวัง ไม่คลิกลิงก์มั่ว ไม่เปิดไฟล์แนบแปลกๆ (RCS Agent สามารถติดมากับไฟล์เช่น PDF, PowerPoint, Word) ก็พอจะปลอดภัยระดับหนึ่ง

ภาพหน้าจอจากเอกสาร RCS Certificates Case Study (หน้า 1-5) ของ Hacking Team

RCS Exploit Portal
RCS Exploit Portal

คำถาม-ข้อกังวลที่ต้องตอบ

คำถามเร็วๆ ตอนนี้คือ 

1) ใครเป็นคนควบคุมระบบนี้? ใช้อำนาจตามกฎหมายใด?

2) กลไกอะไรจะตรวจสอบการใช้อำนาจจากระบบนี้ เป็นกลไกที่ทำงานได้จริงไหม?

3) ความสามารถของ RCS นี่มีมากกว่าดักข้อมูล มันควบคุมเครื่องเป้าหมายได้ เปิดปิดกล้องได้ จะดาวน์โหลดข้อมูลอะไรมาใส่เครื่องเป้าหมายก็ได้ ถ้ามีการขอหมายหรือคำสั่งศาล คำสั่งจะอนุญาตให้ทำอะไรได้บ้าง?

4) ในซอร์สโค้ดที่หลุดออกมา มีการตั้งชื่อไฟล์ปลอมๆ ที่บ่งถึงรูปโป๊เด็ก เช่น “childporn.avi” และ “pedoporno.mpg” ซึ่งแม้อาจจะเป็นเรื่องตลกในกลุ่มโปรแกรมเมอร์ของ Hacking Team แต่ก็ทำให้เราเห็นถึงความเป็นไปได้ในการ “สร้างพยานหลักฐาน” – เรื่องนี้น่าห่วงมากๆ

วิดีโอโฆษณาของ Hacking Team

วิดีโอสาธิต RCS Galileo บน Windows


Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.