18 คะแนน โดย GN⁺ 2026-03-10 | 5 ความคิดเห็น | แชร์ทาง WhatsApp
  • รวมข้อมูลเรียลไทม์หลากหลายประเภท เช่น เครื่องบิน, เรือ, ดาวเทียม, แผ่นดินไหว, ความขัดแย้ง, CCTV, การรบกวน GPS ไว้ใน อินเทอร์เฟซบนระบบสารสนเทศภูมิศาสตร์ เดียว
  • สร้างด้วย Next.js, MapLibre GL, FastAPI, Python ทำให้นักวิเคราะห์และนักวิจัยสามารถ มองเห็นกิจกรรมทั่วโลกบนหน้าจอเดียว
  • มีความสามารถติดตามเชิงลึกใน 6 หมวดหลัก ได้แก่ การบิน·ทางทะเล·อวกาศ·ภูมิรัฐศาสตร์·การเฝ้าระวัง·ข่าวกรองสัญญาณ และควบคุมแต่ละเลเยอร์ได้แยกกัน
  • ปรับใช้ได้ง่ายด้วย Docker/Podman และตั้งค่าสภาพแวดล้อม self-hosted หรือสำหรับพัฒนาได้สะดวกด้วย การทำงานอัตโนมัติในการเชื่อมต่อ API
  • ระบุชัดเจนว่าข้อมูลทั้งหมดรวบรวมจาก แหล่ง OSINT สาธารณะ และสามารถใช้ได้เพื่อ การศึกษาและการวิจัยเท่านั้น

ภาพรวม

  • ShadowBroker เป็นแดชบอร์ด ข่าวกรองโอเพนซอร์สแบบเรียลไทม์หลายโดเมน (Real-Time OSINT) ที่รวมฟีดข้อมูลสาธารณะหลายสิบแหล่งมาแสดงบน อินเทอร์เฟซแผนที่ธีมมืดแบบเดียว
    • ติดตามแบบเรียลไทม์ได้ทั้งเครื่องบิน เรือ ดาวเทียม แผ่นดินไหว พื้นที่ความขัดแย้ง เครือข่าย CCTV การรบกวน GPS และเหตุการณ์ภูมิรัฐศาสตร์
  • พัฒนาด้วย Next.js, MapLibre GL, FastAPI, Python และออกแบบมาเป็นเครื่องมือด้านการแสดงผลข้อมูลสำหรับนักวิเคราะห์ นักวิจัย และผู้สนใจ OSINT

กรณีการใช้งานหลัก

  • ติดตาม เครื่องบินเจ็ตส่วนตัวของมหาเศรษฐี
  • เฝ้าดู การผ่านวงโคจรของดาวเทียม
  • เฝ้าระวัง การจราจรทางทะเลทั่วโลก
  • ตรวจจับ พื้นที่ที่มีการรบกวน GPS
  • สังเกตการณ์ แผ่นดินไหวและภัยพิบัติ แบบเรียลไทม์

สรุปความสามารถ

🛩️ การติดตามการบิน (Aviation Tracking)

  • แสดงตำแหน่งเรียลไทม์ของเครื่องบินพาณิชย์กว่า 5,000 ลำผ่าน OpenSky Network
  • แยกประเภท อากาศยานส่วนบุคคล·ทางทหาร และติดตาม เครื่องบินเจ็ตธุรกิจที่มีข้อมูลเจ้าของ
  • รองรับความสามารถเชิงลึก เช่น สะสมเส้นทางการบิน, ตรวจจับการบินวน, แสดงสถานะภาคพื้นดิน
  • มี ไอคอน SVG ที่แม่นยำตามประเภทอากาศยาน

🚢 การติดตามทางทะเล (Maritime Tracking)

  • ข้อมูลเรือแบบเรียลไทม์ของเรือกว่า 25,000 ลำผ่าน aisstream.io WebSocket
  • แยกสีตามประเภทเรือ (เรือบรรทุกสินค้า เรือบรรทุกน้ำมัน เรือโดยสาร เรือรบ ฯลฯ)
  • ประเมินตำแหน่งของ เรือบรรทุกเครื่องบินกองทัพเรือสหรัฐ 11 ลำ ด้วย OSINT และทำ GDELT news scraping แบบอัตโนมัติ
  • รองรับ เลเยอร์เฉพาะสำหรับเรือครูซ·เรือโดยสาร และ การแสดงคลัสเตอร์ตามระดับการซูม

🛰️ อวกาศ·ดาวเทียม (Space & Satellites)

  • แสดงวงโคจรแบบเรียลไทม์ของดาวเทียมมากกว่า 2,000 ดวงบนพื้นฐาน CelesTrak TLE + SGP4
  • แยกสีตามประเภทภารกิจ: ลาดตระเวนทางทหาร (แดง), SAR (ฟ้าน้ำทะเล), SIGINT (ขาว), นำร่อง (น้ำเงิน), เตือนภัยล่วงหน้า (ม่วงแดง), ภาพถ่ายเชิงพาณิชย์ (เขียว), สถานีอวกาศ (ทอง)

🌍 ภูมิรัฐศาสตร์·ความขัดแย้ง (Geopolitics & Conflict)

  • รวบรวมเหตุการณ์ความขัดแย้งราว 1,000 รายการในช่วง 8 ชั่วโมงล่าสุดบนพื้นฐาน GDELT
  • ข้อมูลแนวหน้าสงครามยูเครนแบบเรียลไทม์จาก DeepState Map
  • มี ฟีดข่าว SIGINT/RISINT และ แผงข้อมูลภูมิภาค
    • รวมข้อมูล เช่น ประชากร เมืองหลวง ภาษา สกุลเงิน พื้นที่ รูปแบบการปกครอง และข้อมูลผู้นำประเทศ (Wikidata) พร้อมสรุปจาก Wikipedia

📷 การเฝ้าระวัง (Surveillance)

  • รวมสตรีมสดจาก กล้อง CCTV จราจรกว่า 2,000 จุด
    • เช่น ลอนดอน (TfL), ออสติน (TxDOT), นิวยอร์ก (NYC DOT), สิงคโปร์ (LTA)
  • รองรับ การตรวจจับและเรนเดอร์ฟีดอัตโนมัติ และ การแสดงคลัสเตอร์ตามการซูม

📡 ข่าวกรองสัญญาณ (Signal Intelligence)

  • ตรวจจับการรบกวน GPS: แสดงภาพพื้นที่ถูกรบกวนจากการวิเคราะห์ค่า NAC-P ของอากาศยาน
  • แผงดักรับวิทยุ: มี UI ในลักษณะการดักฟังวิทยุสื่อสาร

🌐 เลเยอร์เพิ่มเติม

  • มี ข้อมูลแผ่นดินไหว USGS (24 ชั่วโมง), เส้นแบ่งกลางวัน·กลางคืน, ดัชนีตลาดการเงินแบบเรียลไทม์, เครื่องมือวัดระยะทาง·ทิศทาง

โครงสร้างระบบ

  • Frontend (Next.js): แผนที่ 2D WebGL บนพื้นฐาน MapLibre GL, ฟีดข่าว SIGINT, แผงควบคุม, โมดูลตลาด·วิทยุ
  • Backend (FastAPI): ดึงข้อมูลตามรอบเวลาจากหลายแหล่ง (OpenSky, adsb.lol, CelesTrak, USGS, GDELT, CCTV ฯลฯ)
  • ส่งข้อมูลไปยังฟรอนต์เอนด์ผ่าน REST API ทุก 60~120 วินาที

แหล่งข้อมูลและ API

แหล่งที่มา ข้อมูล รอบการอัปเดต API key
OpenSky Network เครื่องบินพาณิชย์·ส่วนบุคคล ประมาณ 60 วินาที เลือกได้
adsb.lol อากาศยานทางทหาร ประมาณ 60 วินาที ไม่จำเป็น
aisstream.io ตำแหน่งเรือ เรียลไทม์ จำเป็น
CelesTrak วงโคจรดาวเทียม ประมาณ 60 วินาที ไม่จำเป็น
USGS แผ่นดินไหว ประมาณ 60 วินาที ไม่จำเป็น
GDELT เหตุการณ์ความขัดแย้ง ประมาณ 6 ชั่วโมง ไม่จำเป็น
DeepState Map แนวรบยูเครน ประมาณ 30 นาที ไม่จำเป็น
TfL, TxDOT, NYC DOT, LTA CCTV จราจร ประมาณ 5 นาที บางส่วนจำเป็น
RestCountries, Wikidata, Wikipedia ข้อมูลประเทศ·แผนที่ ตามคำขอ ไม่จำเป็น

การติดตั้งและการรัน

บนพื้นฐาน Docker/Podman

  • หลัง git clone สามารถรันอัตโนมัติได้ด้วยคำสั่ง ./compose.sh up -d
  • พอร์ตเริ่มต้น: ฟรอนต์เอนด์ 3000, แบ็กเอนด์ 8000
  • สามารถเปลี่ยนพอร์ตได้ด้วยตัวแปรสภาพแวดล้อม NEXT_PUBLIC_API_URL

สภาพแวดล้อมพัฒนาสำหรับแก้ไขโค้ด

  • ต้องใช้ Node.js 18+, Python 3.10~3.12
  • ต้องมี API key ของ aisstream.io และสามารถเลือกใช้คีย์ของ OpenSky, LTA ได้
  • รันฟรอนต์เอนด์และแบ็กเอนด์พร้อมกันด้วย npm run dev

การควบคุมเลเยอร์ข้อมูล

  • สามารถ เปิด/ปิดทุกเลเยอร์แยกกันได้ เช่น เครื่องบิน ดาวเทียม เรือ แผ่นดินไหว CCTV ความขัดแย้ง การรบกวน GPS
  • เปิดใช้งานเริ่มต้น: เครื่องบินพาณิชย์·ทางทหาร, ดาวเทียม, เรือบรรทุกเครื่องบิน, แผ่นดินไหว, ความขัดแย้ง, การรบกวน GPS, เส้นแบ่งกลางวัน·กลางคืน

การปรับแต่งประสิทธิภาพ

  • เพิ่มประสิทธิภาพการประมวลผลข้อมูลเรียลไทม์ขนาดใหญ่ด้วย การบีบอัด Gzip (92%), ETag caching, viewport culling, cluster rendering, การลดความละเอียดพิกัด (ทศนิยม 5 ตำแหน่ง)
  • ลดภาระการเรนเดอร์ด้วย React.memo และ debounce (300ms)

ตัวแปรสภาพแวดล้อม

  • จำเป็น: AIS_API_KEY
  • เลือกได้: OPENSKY_CLIENT_ID, OPENSKY_CLIENT_SECRET, LTA_ACCOUNT_KEY

ข้อจำกัดความรับผิดชอบและไลเซนส์

  • ข้อมูลทั้งหมดอ้างอิงจาก แหล่ง OSINT สาธารณะ และ ไม่มีการใช้ข้อมูลส่วนตัวหรือข้อมูลลับ
  • ห้ามใช้เพื่อวัตถุประสงค์ทางทหาร·ข่าวกรอง, จำกัดเฉพาะเพื่อการศึกษา·การวิจัย
  • ต้อง ปฏิบัติตามข้อกำหนดการใช้งาน ของผู้ให้บริการ API แต่ละราย

โครงสร้างโปรเจกต์

  • backend/: แอป FastAPI, ตัวตั้งเวลารวบรวมข้อมูล, การประมวลผลข้อมูล CCTV·เรือบรรทุกเครื่องบิน·ความขัดแย้ง
  • frontend/: องค์ประกอบแผนที่·แผงควบคุม·ตัวกรอง·ข่าว·ตลาด·วิทยุ บนพื้นฐาน Next.js
  • มีสคริปต์สำหรับปรับใช้อัตโนมัติ เช่น docker-compose.yml, compose.sh

สรุป

  • ShadowBroker คือ แพลตฟอร์มโอเพนซอร์สสำหรับรวมและแสดงผลข้อมูล OSINT แบบเรียลไทม์จากทั่วโลก
  • วิเคราะห์หลายโดเมนได้ในแผนที่เดียว ทั้ง การบิน·ทางทะเล·อวกาศ·ภูมิรัฐศาสตร์·การเฝ้าระวัง·สัญญาณ
  • มี การปรับใช้ด้วย Docker ที่ง่าย, การเรนเดอร์ประสิทธิภาพสูง, ใช้เฉพาะข้อมูลสาธารณะ
  • เป็นเครื่องมือข่าวกรองแบบเรียลไทม์ที่มีประโยชน์สำหรับ นักวิจัยด้านความมั่นคง·การวิเคราะห์ข้อมูลข่าวกรอง และวิศวกรข้อมูลในสตาร์ตอัป

5 ความคิดเห็น

 
ryudaewan 2026-03-10

Shadow Broker! ไม่ได้ยินชื่อนี้มานานแล้ว ทำให้นึกถึง Mass Effect 2 ขึ้นมาเลย https://masseffect.fandom.com/wiki/Shadow_Broker_(enemy)

 
xguru 2026-03-10

อ่านคอมเมนต์ใน Hacker News แล้วหลุดขำเลย

"ในคอมมิตแรกมีการรั่วไหลของ ./frontend/.env.local และ ./backend/.env อยู่ในไฟล์ zip"

"เพราะงั้นมันถึงชื่อว่า OSINT (Open Source Intelligence) ไง ทุกอย่างเปิดเผยหมดเลย"

 
girr311 2026-03-10

ลองดาวน์โหลดดูแล้ว มีอยู่จริงครับ

 
zihado 2026-03-10

ฮ่าๆ อันนี้ค่อนข้างขำเลยนะ ฮ่าๆๆ

 
GN⁺ 2026-03-10
ความคิดเห็นจาก Hacker News
  • สงสัยว่าการ รับรู้มากเกินไป กับข้อมูลที่ในความเป็นจริงเราไม่สามารถลงมือทำอะไรได้เลยนั้นเป็นสิ่งที่พึงประสงค์จริงหรือไม่ หรือมันเป็นเพียงเส้นทางไปสู่ ความเครียดและความรู้สึกว่าตัวเองไร้ประสิทธิภาพ เท่านั้น

  • งานปรับแต่ง geojson บางส่วนให้เป็น ไทล์แบบเรียลไทม์ เป็นโปรเจกต์ที่ทั้งสนุกและชวนจดจ่อมากจริงๆ
    อยากรู้ว่าเคยดูโปรเจกต์พวกนี้หรือยัง → PMTiles, Martin

    • ชอบทั้งสองโปรเจกต์มาก ตอนนี้ ShadowBroker ถูกปรับให้เหมาะกับการติดตามเรดาร์แบบเรียลไทม์ (สตรีม GeoJSON จาก FastAPI backend ไปยัง MapLibre ทุก 60 วินาที)
      เลยทำให้ได้การเคลื่อนไหวบนแผนที่ที่ลื่นไหลแทบจะระดับ แอนิเมชัน 60fps
      ภายหลังถ้าจะเก็บถาวรข้อมูลการบินและ AIS บนพื้นฐานของ PostGIS การย้ายไปใช้ Martin ก็น่าจะเหมาะกว่า แต่ตอนนี้สำหรับเป้าหมายแบบเรียลไทม์มันถือว่ามากเกินไป เพราะจะต้องทำให้ tile cache เป็นโมฆะอยู่ตลอด
    • Protomaps ก็มีประโยชน์มากเวลาต้องการให้บริการแผนที่ระดับประเทศแบบง่ายๆ ด้วย ใน CLI มีฟีเจอร์ที่จำเป็นแทบครบอยู่แล้ว → เอกสาร Protomaps CLI
      เคยตั้งค่านี้ในโปรเจกต์ด้านเกษตรมาก่อนและใช้งานได้ดี
  • โปรเจกต์นี้ดูคล้ายกับ monitor-the-situation.com

  • คำอธิบายที่ว่า “ShadowBroker is a real-time, full-spectrum geospatial intelligence dashboard” ดูจะโอ้อวดไปหน่อย
    รู้สึกว่าคำอย่าง “Air and Space domain awareness” น่าจะแม่นยำกว่า
    ปกติแล้ว Geospatial intelligence มักหมายถึงการรวบรวมข่าวกรองจากภาพถ่ายดาวเทียม และ “spectrum” ก็มักใช้ในความหมายของ สเปกตรัมของแสง

  • ใน commit แรก มีการ รั่วไหล ของ ./frontend/.env.local และ ./backend/.env อยู่ใน ShadowBroker_v0.1.zip

    • เพราะงั้นถึงได้ชื่อว่า OSINT (Open Source Intelligence) ไง ทุกอย่างเปิดเผยหมด
    • ขอเล่นมุกว่า OSINT ของจริงนั้น อยู่ในคอมเมนต์
    • สงสัยว่าทำไมถึงไปตรวจดูสิ่งนั้น
  • โปรเจกต์นี้เจ๋งมาก ทำให้นึกถึงลิงก์นี้

    • ผมก็กำลังทำอะไรคล้ายๆ กันอยู่ → โปรเจกต์ cimple-gis
      ต้องทำให้เสร็จ แต่ยังไม่มีเวลา
    • ดู เสี่ยงที่จะกด แต่ก็โอเค
  • เป็นการ รวมข้อมูล ที่เจ๋งมาก แต่คิดว่าน่าจะเพิ่ม สัญญาณเรื่องความเก่า เข้าไปใน feed pipeline ด้วย
    เพราะบางแหล่งข้อมูล (โดยเฉพาะ threat feeds) ไม่ได้อัปเดตทุกไม่กี่วินาที แต่อาจเป็นทุกหลายชั่วโมง ดังนั้นถ้าแสดง เวลาที่อัปเดตล่าสุด ของแต่ละแหล่ง ก็น่าจะช่วยให้ตัดสินความสดใหม่ของข้อมูลได้ดีขึ้น

  • เจ๋งมาก ขอบคุณที่แชร์
    อยากรู้ว่าถ้ารันวันละหลายชั่วโมงต่อเนื่องประมาณหนึ่งเดือน ค่าใช้จ่าย API จะออกมาประมาณเท่าไร อยากรู้ว่าอยู่ในระดับที่พอรับไหวไหม

    • บอกว่าทั้งหมด ฟรี
  • เป็นโปรเจกต์ที่ดีมาก แต่ทั้งแนวคิด ฟีด และดีไซน์โดยรวมทำให้นึกถึง worldmonitor.app อย่างมาก
    เผื่อไว้เป็นข้อมูล ฝั่งนั้นก็เปิดให้บริการแบบ ไลฟ์เซอร์วิส อยู่แล้ว