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

เมื่อวันที่ 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



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

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

8:59 PM  /  Tun  /  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 &&...

ทดสอบ Code Highlight

ทดสอบ Code Highlight

11:16 PM  /  Tun  /  0 Comments

ทดสอบ import time for i in range(10): print('Hello World') time.sleep(1) ...

Ubuntu 16.04 Mate Desktop Disable F12 drop-down terminal

Ubuntu 16.04 Mate Desktop Disable F12 drop-down terminal

7:06 AM  /  Tun  /  0 Comments

Ubuntu 16.04 Mate Desktop Disable F12 drop-down terminal killall tilda - Remove tilda via apt sudo apt-get remove tilda F12 drop-downterminal ...

รีวิว KingSpec SSD 256GB mSATA Half size 256GB

รีวิว KingSpec SSD 256GB mSATA Half size 256GB

9:25 AM  /  Tun  /  2 Comments

ห่างหายจากการเขียน Blog ไปนาน วันนี้ผมจะมารีวิว SSD ยี่ห้อ KingSpec ขนาด 256GB แบบ Half size mSATA เนื่องจาก Harddisk SSD (24GB) ใน Notebook  ที่ผมใช้งานมันกำลังจะเต็มจึงอยากจะเปลี่ยนให้มีขนาดที่ใหญ่ขึ้น ตอนแรกคิดว่า Notebook ใช้แบบ M2 แต่เพื่อความชัวจึงได้แกะเครื่อง (แกะยากมากต้องเอาการ์ดคอยกรีดคอยแงะ) ออกมาเผื่อดูว่าเป็นแบบไหน สรุปแล้วคือใช้แบบ mSATA Half size ซึ่งพอไปหาดูราคา SSD ชนิดนี้ก็ค่อนข้างสูง จึงได้ลองไปค้นใน Aliexpress แล้วก็เจอยี่ห้อ KingSpec ซึ่งราคานั้นถูกมากเมื่อเทียบกับยี่ห้ออื่นจึงได้ลองจัดซื้อมาลองดู สำหรับเจ้าตัว 256GB แบบ mSATA Half size นั้นผมได้มาในราคา 50 USD หรือประมาณ 1,650 บาทเท่านั้น ทำการเปลี่ยนจากของเดิม 24GB เป็น 256GB ความเร็วในการเขียนข้อมูล โดยผมลองสั่งให้เขียนไฟล์ขนาดประมาณ 10GB  ความเร็วในการเขียนไฟล์จะอยู่ที่...

Python matplotlib Invalid DISPLAY variable

Python matplotlib Invalid DISPLAY variable

11:36 PM  /  Tun  /  0 Comments

Fixed by matplotlib.pyplot as pltplt.switch_backend('agg')  Ref: https://github.com/matplotlib/matplotlib/issues/3466/#issuecomment-195899517...

[Google Colab] ติดตั้ง Python Package เพิ่มแบบแฮกหน่อยๆ

[Google Colab] ติดตั้ง Python Package เพิ่มแบบแฮกหน่อยๆ

10:42 PM  /  Tun  /  0 Comments

หลังจากที่ได้ทดลองใช้งาน Google Colab (Jupyter Notebook ฟรีจาก Google) ตั้งแต่วันที่ 27 ตุลาคม เป็นต้นมา ก็ได้พบวิธีที่จะติดตั้ง Python Package เพิ่มแบบแฮกหน่อยๆ หลักการ 1. Reverse Shell 2. pip install PACKAGE สิ่งที่ต้องการ 1. Public Server ของเราเองเอาไว้ reverse shell วิธีการ 1. Remote ไปยัง Public Server ของเรา 2. รันคำสั่ง netcat nc -lv 13337 3. สร้าง Google Colab ใหม่มา 1 อัน นำคำสั่ง reverse shell ไปรัน (อย่าลืมแก้ IP Address กับ Port ให้ตรงกับ...