1
Ringkasan Proyek
GhostTrack adalah tool OSINT berbasis CLI yang seluruhnya berada di dalam satu berkas Python, GhostTR.py. README menyebutnya sebagai tool untuk melacak lokasi atau nomor mobile, sehingga tool ini sering disebut osint atau information gathering (README.md:1-21); versi yang tercatat di sana adalah Version 2.2 (README.md:6-72).
Berkas GhostTR.py berisi 315 baris dan ditutup guard if __name__ == '__main__' yang hanya memanggil main() (GhostTR.py:309-3153). Kebutuhan pihak ketiga dibatasi dua paket, yaitu requests dan phonenumbers (requirements.txt:1-24). Keduanya diimpor bersama json, time, os, dan stderr dari modul sys, tepat setelah blok komentar di kepala berkas (GhostTR.py:9-155).
Empat menu lookup, satu menu keluar
Menu disusun sebagai list options; setiap elemennya adalah dict dengan kunci num, text, dan func (GhostTR.py:180-2076). Tiga menu menembak target eksternal, satu menu hanya menampilkan IP mesin yang menjalankan tool, dan menu 0 memanggil exit. README mendokumentasikan ketiga menu pelacakan itu beserta tangkapan layarnya (README.md:29-487).
num | text | func | Sumber data |
|---|---|---|---|
| 1 | IP Tracker | IP_Track | http://ipwho.is/{ip} (GhostTR.py:40-478) |
| 2 | Show Your IP | showIP | https://api.ipify.org/ (GhostTR.py:169-1769) |
| 3 | Phone Number Tracker | phoneGW | library phonenumbers, default_region = "ID" (GhostTR.py:80-9010) |
| 4 | Username Tracker | TrackLu | 24 URL social media, dicek lewat response.status_code == 200 (GhostTR.py:121-15811) |
| 0 | Exit | exit | tidak ada sumber data (GhostTR.py:180-2076) |
Peta menu ke sumber data
Setiap menu lookup hanya punya satu sumber data utama. Diagram berikut memetakan keempat fungsi ke sumbernya, semuanya bercabang dari list options yang sama.
graph TD
main["main()"] --> options["options: num, text, func"]
options --> ip["[1] IP_Track"]
options --> myip["[2] showIP"]
options --> phone["[3] phoneGW"]
options --> user["[4] TrackLu"]
options --> out["[0] exit"]
ip --> ipwho["ipwho.is - public IP data"]
myip --> ipify["api.ipify.org - own IP"]
phone --> phlib["phonenumbers - number metadata"]
user --> social["24 social media URLs - status_code check"]
style main fill:#f59e0b,color:#000
style options fill:#f59e0b,color:#000
style ip fill:#2d7d46,color:#fff
style myip fill:#2d7d46,color:#fff
style phone fill:#2d7d46,color:#fff
style user fill:#2d7d46,color:#fff
style ipwho fill:#336791,color:#fff
style ipify fill:#336791,color:#fff
style phlib fill:#336791,color:#fff
style social fill:#336791,color:#fff
style out fill:#dc2626,color:#fff
%% fig: Peta menu ke sumber data
%% desc: List options meneruskan satu pilihan ke satu fungsi, dan tiap fungsi hanya memanggil satu sumber data eksternal.Tool ini tidak menyimpan apa pun secara lokal. IP_Track, showIP, phoneGW, dan TrackLu langsung mencetak hasil ke stdout; TrackLu hanya menampung hasil sementara di dict lokal results sebelum mencetaknya (GhostTR.py:121-15811).
Dari input ke request
main() membersihkan layar, mencetak banner lewat option(), lalu membaca satu integer dari prompt Select Option dan meneruskannya ke execute_option (GhostTR.py:296-30612). Urutan dispatch setelah titik itu dibahas di Loop Menu dan Dispatch Opsi.
Batas yang terbaca dari kode
phoneGWmenguncidefault_region = "ID"(GhostTR.py:80-9010). Nomor dari luar Indonesia harus dikirim lengkap dengan kode negaranya.TrackLumemutuskan sebuah akun ada hanya dariresponse.status_code == 200(GhostTR.py:121-15811).- Daftar
social_mediadiTrackLuberisi 24 entri, tetapiSnapchattercatat dua kali di dalamnya, sehingga platform uniknya 23 (GhostTR.py:121-15811). IP_Trackmemanggilhttp://ipwho.is/{ip}lewat HTTP polos, bukan HTTPS (GhostTR.py:40-478).
⚠️ Semua lookup mengirim request ke layanan pihak ketiga dengan identitas target sebagai parameter. Pakai hanya pada target yang kamu punya izinnya; pembahasannya ada di Batasan dan Etika Penggunaan.
Rincian tiap menu ada di Fitur Pelacakan, sedangkan langkah menjalankan tool ada di Instalasi dan Menjalankan Tool.