Port TCP Terbuka Tidak Membuktikan Proxy Berfungsi
Pemeriksaan port yang berhasil hanya membentuk koneksi. Periksa juga handshake proxy dan respons tujuan yang diharapkan.
Port TCP terbuka menunjukkan bahwa listener menerima koneksi. Itu bisa berupa proxy, server web biasa, atau layanan lain; port 8080 tidak menentukan protokol.
Untuk endpoint yang didokumentasikan sebagai proxy HTTP, gunakan alamat aslinya dalam permintaan HTTPS dengan batas waktu:
curl --proxy http://203.0.113.10:8080 --noproxy '' --connect-timeout 5 --max-time 15 --verbose https://example.com/
Ganti alamat dokumentasi dengan endpoint HTTP Anda atau kandidat dari daftar proxy HTTP. Untuk SOCKS, gunakan mode klien SOCKS yang sesuai dan selesaikan negosiasinya. Handshake yang keliru dapat gagal segera setelah TCP diterima.
| Tahap yang diamati | Yang dibuktikan |
|---|---|
| TCP diterima | Listener dapat dijangkau. |
| Handshake proxy diterima | Listener menerima operasi proxy ini. |
| TLS tujuan terverifikasi | Klien menyelesaikan koneksi aman yang dimaksud sesuai pengaturan kepercayaannya. |
| Status dan isi yang diharapkan diterima | Permintaan aplikasi menghasilkan hasil yang diharapkan. |
Untuk HTTPS melalui proxy HTTP, CONNECT ke port tujuan harus diizinkan. Bahkan CONNECT 200 hanyalah tahap perantara: tunnel dapat tertutup sebelum TLS atau permintaan akhir berhasil. Keberhasilan HTTP biasa tidak membuktikan kemampuan tunnel ini.
Gunakan tujuan dengan isi yang dapat diprediksi, sebaiknya yang Anda kendalikan, dan periksa catatan permintaannya bila tersedia. Listener HTTP tanpa enkripsi bisa mengembalikan halaman tetap berstatus 200 tanpa menghubungi target. Menerima sembarang status berhasil adalah bukti lebih lemah daripada respons yang sesuai harapan; verifikasi identitas HTTPS memberi perlindungan tambahan.
Catat tahap terakhir yang berhasil. ‘Port terbuka, negosiasi SOCKS ditolak’ memberi titik awal yang berguna untuk penyelidikan selanjutnya.