Image Alt

Global Technology Integrated

ใช้ SRAN วิเคราะห์การติดต่อสื่อสารผ่านโปรแกรม Pokemon Go

เราสามารถใช้ SRAN วิเคราะห์การติดต่อสื่อสารผ่านโปรแกรม Pokemon Go ได้อย่างไร เรามีคำอธิบายมาให้คุณ

 

โลกเราวันนี้ มีอย่างหนึ่งที่เหมือนกันคือ การทำอะไรตามๆกัน จนเป็นกระแสสังคม หรือโปเกมอนฟีเวอร์ ให้ทายไม่เกินเดือนก็เริ่มหมดอายุความฟีเวอร์ ต้องเดินตามรุุ่นพี่ที่เคยเกิดก่อน

เช่น ตุ๊กตาลูกเทพ เฟอร์บี้ และอื่นๆ ที่ผ่านมา เมื่อเห็นคนทำก็อยากทำตามบ้างครับ แต่ทำครั้งนี้ สำหรับผมแล้ว จะลองมาแกะให้เห็นเบื้องหลังการติดต่อสื่อสาร

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

 

 

การสื่อสารผ่าน Pokemon Go

 

 

ขั้นตอนเราจำลองระบบเครือข่ายขึ้นมา 1 วง  โดยใช้ Switch และอุปกรณ์ AP (Access Point) เพื่อกระจายสัญญาณ Wi-Fi ให้กับอุปกรณ์

โดยตั้งวงเป็นชุดไอพีเดียวกันหมดขึ้น LAN 192.168.150.x Wifi 192.168.1.x   ใช้ช่องทางออกอินเทอร์เน็ตผ่าน 3BB

และเรามีอุปกรณ์จัดเก็บบันทึกข้อมูลจราจรคอมพิวเตอร์  โดยใช้ Network Log ที่ได้รับจากการสำเนาข้อมูลจากอุปกรณ์มาวิเคราะห์ ในที่นี้เราใช้ SRAN รุ่น LT50 Hybrid

เกมส์ Pokemon Go พัฒนาโดยบริษัท Niantic ทำบนระบบปฏิบัติการ iOS และ Android โดยเกมส์จะเน้นไปทางการใช้การค้นหาพิกัดทางภูมิศาสตร์เพื่อค้นหาตัวการ์ตูนโปเกมอน

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

 

 

Pokemon Go

 

เมื่อเริ่มต้นทำการดาวโหลดโปรแกรมโปเกมอน จะเห็นว่ามีการทำ SSO (Single Sign On) ผ่าน E-mail ของ Gmail  หากใครมี Gmail ก็สามารถใช้งานโปรแกรมนี้ได้โดยไม่ต้องสมัครทางอื่น

(ลองอ่านบทความเก่า หนึ่งในนั้น คนไม่มีตัวตนไม่มีสิทธิ )

 

 

การสื่อสารกับ Pokemon Go

 

เมื่อทำการสมัครเล่นเกมส์มีการติดต่อไปที่  seattleclouds.com  การเชื่อมต่อในจุดนี้มีความเสี่ยงหากพื้นที่นั้นมีคนทำ MITM หรือ ดักรับข้อมูลอยู่

เนื่องจากข้อมูลที่ส่งไปเป็น Paint text

เช่น เห็น data leak จากข้อมูลพื้นฐานเครื่องของคนอื่นได้ เมื่ออยู่ LAN วงเดียวกัน หรืออยู่บนระบบเครือข่ายเดียวกันและมีอุปกรณ์ดังกล่าวอยู่ด้วย ก็มีโอกาสรั่วจากจุดนี้ได้

 

 

ผ่าน xml เป็นข้อมูลรั่วออกมา

ส่วนการเชื่อมต่อไปยัง โดเมนอย่างน้อยดังนี้

 

 

ภาพการเรียกข้อมูลผ่านค่า DNS ของเกมส์ Pokemon เมื่อทำการเริ่มใช้งานตอนแรก จะบอกโดเมนที่ติดต่อและค่าไอพีของ Server DNS เหล่านี้

ซึ่งตรงนี้เป็นฝั่ง Web Services หลังบ้าน Pokemon Go

 

 

 

ทำการสำรวจระบบเครือข่ายเพื่อตรวจดูอุปกรณ์ทั้งหมดที่มี

 

 

 

และเครื่องที่จะใช้ทดสอบเกมส์ Pokemon Go คือ Private IP : 192.168.1.143  เราใช้ชื่อว่า “มือถือของนก” เป็นมือถือยี่ห้อซัมซุง

ระบบปฏิบัติการ Android (ขอล็อคเป้าที่เครื่องนี้)

 

SRAN NetApprove

 

 

และทำการเพิ่มข้อมูลในระบบ Inventory ที่มีในเครื่อง SRAN จากนั้นเราก็มาดู Log file ที่เกิดขึ้นทาง ระบบเครือข่ายคอมพิวเตอร์ (Network Log)

โดยเข้าหน้าค้นหา  Deep Search  ว่า “Pokemon”    สิ่งที่ได้คือ   User agent ของอปุกรณ์ จะขึ้นมาทันทีว่า ใช้โปรแกรม Pokemon go อยู่ โดย User agent จะแสดงค่าดังนี้

pokemongo/0 CFNetwork/758.5.3 Darwin/15.6.0

 

 

 

ภาพการติดต่อสื่อสาร จากไอพีต้นทาง ไปยังไอพีปลายทางระบบแม่ข่ายที่ให้บริการเกมส์ Pokemon Go รวมถึงรายละเอียดการติดต่อสื่อสาร ผ่าน Protocol HTTP (ตรวจในส่วนที่ไม่มีการเข้ารหัสข้อมูล)

เมื่อทำลงรายละเอียดของข้อมูลชุดไอพีในการติดต่อสื่อสาร

 

 

 

Host Name : lh3.ggpht.com  ,  lh4.ggpht.com  , lh6.ggpht.com

ส่วนค่าไอพีได้รับ มีค่าเดียวคือ IP 216.58.196.33  (Cloud Service จาก Google)

PING photos-ugc.l.googleusercontent.com (216.58.221.33) 56(84) bytes of data.

64 bytes from hkg08s13-in-f33.1e100.net (216.58.221.33): icmp_seq=1 ttl=54 time=25.4 ms

64 bytes from hkg08s13-in-f33.1e100.net (216.58.221.33): icmp_seq=2 ttl=54 time=25.5 ms

64 bytes from hkg08s13-in-f33.1e100.net (216.58.221.33): icmp_seq=3 ttl=54 time=25.4 ms

เดาได้ว่าเป็น IP  (216.58.221.x) ช่วงดังกล่าวน่าจะเป็น Load Balancer   แต่นี้ทำบนผู้ให้บริการ 3BB ซึ่งในแต่ละผู้ให้บริการอาจจะมีความแตกต่างกันไปก็ได้

 

 

AS15169 ของ Google Inc

ใช้เครื่องมือ Shodan ตรวจให้

 

 

 

เปิด 80 , 443  Server จาก Google ส่วนใหญ่จะมีการ Harden เปลืองแรงเปล่าหากจะค้นหาต่อ

ลองมาส่อง DNS Log สำหรับ Pokemon Go บ้างหน้าตาเป็นไง

 

 

แล้ว SSL Log ล่ะ

 

 

ทั้ง DNS และ SSL  จะพบ IP 216.58.196.33 เป็นเรื่องอื่นที่ไม่ใช่ Pokemon Go จึงแสดงให้เห็นว่าไอพี นี้ไม่ได้ใช้เฉพาะเกมส์ Pokemon เท่านั้น

DNS Log ที่เกี่ยวกับ Pokemon หน้าตาเป็นอย่างงี้

 

 

ปรากฎว่า Pokemon ซ่อนตัวที่ HTTP Log  ชอบเลยครับ

URI ที่พบบน HTTP Log พบว่าจุดแสดงภาพ ไม่มีการเข้ารหัสของรูปภาพ

 

Pokemon Go

 

ยกตัวอย่าง

http://lh3.ggpht.com/owWi6EWWDy1iPCHW1xfbSMwoZF5ZRqK2o-KClJS_Opy24OdDNfMx5UUV_TSLetDF4mIhrpEEE54EOydW5CQRGQ

 

ศาลเจ้าพ่อสมบูรณ์ จับโปเกมอนที่ศาลเจ้าพ่อสมบูรณ์

 

ภาพที่มาจาก URL ที่บอกนี้จะพบตัว Pokemon ซ่อนอยู่   ส่วนมากจะอยู่ใกล้ๆศาล… อันนี้คงเกิดจากการเขียนโปรแกรมแบบสุ่ม (Random)

เมื่อทำการทดสอบการใช้งานของข้อมูล (Bandwidth)

ทำการค้นหา เวลาที่ใช้เปิดเกมส์ Pokemon Go

 

 

Search

 

 

ทำการค้นหา Deep Search โดยทำการเลือก ค้นหาเวลา 09:01 ของวันที่ 8 สิงหาคม 2559  ผลลัพธ์

 

ทำการค้นหาแบบ Deep Search

 

 

เมื่อได้ผลลัพธ์ทำการคัดกรองเฉพาะค่าไอพี 192.168.1.143 สิ่งที่ได้คือค่าการติดต่อสื่อสาร ของโปรแกรม Pokemon Go

ค่า Duration คือการระยะเวลาทั้งหมดของการสื่อสาร จะพบว่าติดต่อไปที่เครื่อง 220 วินาที  นานที่สุดของการใช้งานบนเครื่องนี้ในช่วงเวลาที่ติดต่อไปที่ IP 216.58.196.33

การรับค่าคือ 70,145 Byte   และอีกครั้งที่ 43,429 Byte   ซึ่งเป็นประมาณไม่มากแต่มีการใช้งานต่อเนื่อง

ตลอดระยะเวลาที่เครื่องมือถือของนกใช้งานโปรแกรม Pogemon Go  คือ 9:00 – 10:00  ใช้ Bandwidth ทั้งหมด

 

 

วิเคราะห์การสื่อสารผ่าน Pokemon Go โดย SRAN

 

14.43 MB ตลอดช่วงเวลา 1 ชั่วโมง

ใช้จำนวน Session ที่เชื่อมต่อทั้งหมด

 

Pokemon Go

 

513 ครั้ง ตลอดช่วงเวลา 1 ชั่วโมง

 

การป้องกัน

สำหรับองค์กรที่ต้องการ Block ไม่ให้พนักงานเล่น อย่าเข้าใจผิดว่าเอา IP ที่ผมให้ไปนั้นใส่ Firewall นะ เพราะมันมีหลาย App วิ่งบน IP  216.58.196.33

หรือห้าม block domain ที่ชื่อ lhตัวเลข.ggpht.com  จะทำให้ใช้งานไม่ได้บาง App บนมือถือ ส่งผลการทำงานที่ไม่ปกติ

การ Block ต้องใช้พวก Next Gen Firewall หรือ NIPS แบบ inline ขวางลำที่ระบบเครือข่าย โดยใช้การ  block พวก User_agent  ที่บ่งบอกว่าเป็น Pokemon เอาครับ

 

สรุป

Pokemon Go เกมส์ยอดฮิต สำหรับความเสี่ยงที่ผมพบ คือ ความเป็นส่วนตัวเรื่อง Location base จะถูกส่งไปชุดไอพีของ Google Cloud

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

ที่ในอดีต google street view ไปไม่ถึง แต่นี้ด้วยความยินยอมและสมัครใจ Big data ฝั่งผู้ให้บริการ ได้ว่าอัพเกรดคลังข้อมูลอีกครั้ง

ซึ่งในอนาคตการค้นหาข้อมูลของเราคงพบอะไรลึกขึ้นอีกก็เป็นได้

 

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

จะทำให้ session ที่เกิดขึ้นบนเครือข่ายนั้นๆ หากมีโจร จะถูกขโมยค่า cookie ได้ไม่ยาก เช่นมีการดักรับข้อมูลกลางอากาศ MITM เป็นต้น

ในกรณีที่มีการเก็บบันทึกข้อมูลจราจรทาง Network Log  ก็จะมองเห็นเช่นกัน ทำให้สามารถมองเห็นภาพสถานที่ได้ จากข้อมูลที่ส่งผ่านทางระบบเครือข่าย

นั่นหมายความว่ากรุณาเล่นอย่างคำนึงความเป็นส่วนตัวด้วยเพราะข้อมูลที่ส่งไปประมวลผล Big data มันลอยไปบนก้อนเมฆแห่งข้อมูล

จึงอย่าได้ไปส่องหา Pokemon ในห้องนอนล่ะกันนะ จบข่าว

 

Link ที่มา http://nontawattalk.sran.org/2016/08/pokemon-go.html