ตรวจสอบแอพ "หมอชนะ" เบื้องต้น

Saturday, April 11, 2020 6:38 PM 1 Comments ,

เมื่อวันที่ 10 เมษายน 2563 ได้มีการเปิดตัวแอพ หมอชนะ เพื่อเก็บประวัติการเดินทางของประชาชน และประเมินว่าบริเวณนั้นมีผู้ป่วย COVID-19 หรือไม่ ผมจึงทำการตรวจสอบว่ามีการส่งข้อมูลอะไรบ้างไปยัง Server

รูปจาก https://www.prachachat.net/ict/news-447255


วิธีการตรวจสอบเบื้องต้นคือการทำ Man In The Middle (MITM)

โดยมีการเรียก API ต่างๆดังนี้

1. /registerDevice

โดยมีการส่งข้อมูลเป็น JSON ดังนี้

Request:

{"deviceId":"XXXXXXXXXX"}

โดยค่าใน deviceId น่าจะเป็นค่า hash จากอะไรบางอย่าง

Response:

{"userId":"XXXXXXXXXX","anonymousId":"XXXXXXXXXX"}

2. /userdata

มีการเรียกใช้เมื่อทำแบบทดสอบ

Request:

{"data":{"questionaire":{"one_uri_symp":["none"],"travel_risk_country":false,"covid19_contact":["none"],"int_contact":false}}}

3. /qr

เรียกเพื่อโหลด QRCode ของเรา โดยมีการส่ง anonymousId แนบไปกับ header ด้วย


4. /location

อันนี้จะส่งข้อมูลพิกัดที่เราอยู่ไปยัง Server

Request:

{"locations":[{"is_moving":false,"uuid":"XXXX","timestamp":"2020-04-11T10:50:50.482Z","odometer":0,"coords":{"latitude":13,"longitude":100,"accuracy":25.9,"speed":-1,"heading":-1,"altitude":-23.5},"activity":{"type":"still","confidence":100},"battery":{"is_charging":true,"level":0.38},"extras":{"triggerType":"appState"}}]}


5. /scan

หากพบ device อื่นๆผ่าน Bluetooth  หรือการ scan QRCode ก็จะส่ง API อันนี้

{"meetId":"XXXX","timestamp":"2020-04-11T11:06:53.777Z","meetWithIds":["XXXX"],"location":{"latitude":13,"longitude":100,"accuracy":24.2},"type":"bluetooth"}

6. https://raw.githubusercontent.com/codeforpublic/morchana-core/master/available

เป็น API Kill-Switch เอาไว้เมื่อเลิกเก็บข้อมูลผู้ใช้แล้ว ก็จะใช้งานแอพไมไ่ด้ ชอบตรงที่เก็บไว้บน Github



สรุป
- ไม่พบว่ามีการส่งรูปที่เราถ่ายขึ้นไปยังบน Server
- ไม่พบว่ามีการส่งข้อมูลอื่นๆนอกเหนือจากที่ประกาศไว้
- งั้นเรามาใช้แอพ หมอชนะ กันเถอะ
Appstore: https://apps.apple.com/th/app/allthaialert/id1505185420
Play Store: https://play.google.com/store/apps/details?id=com.thaialert.app



1 comments:

เปลี่ยนมือถือ Android ให้เป็น Webcam

Friday, April 3, 2020 8:59 PM 0 Comments

เราสามารถเปลี่ยนมือถือ Android ของเราให้เป็น Webcam ง่ายๆได้ด้วยโปรแกรมที่ชื่อว่า DroidCam โดยในตัวอย่างการติดตั้งผมจะทำบนเครื่อง PC ที่ติดตั้งระบบปฏิบัติการ Ubuntu 18.04 สำหรับบน Windows ก็น่าจะติดตั้งคล้ายๆกัน

สิ่งที่ต้องการ
- โทรศัพท์มือ Android
- เครื่องคอมพิวเตอร์
- ระบบ Network


1. ติดตั้ง App บนมือถือ 

สามารถ Download ผ่าน Playstore ได้ที่

https://play.google.com/store/apps/details?id=com.dev47apps.droidcam&hl=th


2. ติดตั้งโปรแกรมที่เครื่องคอม

สามารถ Download โปรแกรมได้ที่

https://www.dev47apps.com/

มีทั้ง Windows และ Linux

เปิด terminal รันคำสั่งดังนี้

sudo apt install linux-headers-`uname -r`
cd tmp
wget https://www.dev47apps.com/files/linux/droidcam_latest.zip
unzip droidcam_latest.zip -d droidcam && cd droidcam
sudo ./install

ดูว่าติดตั้งสำเร็จไหมด้วยคำสั่ง
lsmod | grep v4l2loopback_dc

3. เชื่อมต่อ Droidcam PC กับ มือถือ

PC กับ มือถือ ต้องอยู่ใน Wifi network เดียวกัน

เปิดโปรแกรมบน terminal ด้วยคำสั่ง

droidcam


- เปิดโปรแกรม Droidcam บน Android เพื่อดู IP Address



- นำ Wifi IP: มาใส่ในโปรแกรม Droidcam บนเครื่องคอม แล้วกด Connect



เสร็จสิ้นเรียบร้อย

0 comments: