2 poin oleh GN⁺ 12 hari lalu | Belum ada komentar. | Bagikan ke WhatsApp
  • Alat untuk memvisualisasikan dan mengendalikan koneksi jaringan aplikasi, sehingga Anda dapat melihat program mana yang berkomunikasi dengan server mana
  • Di Connections View, lalu lintas real-time dan historis ditampilkan per aplikasi, dengan dukungan pemblokiran koneksi dan pelacakan penggunaan data hanya dengan satu klik
  • Melalui fitur Blocklists dan Rules, Anda dapat mengendalikan lalu lintas yang tidak diinginkan secara presisi berdasarkan kategori atau kondisi yang rinci
  • Secara internal menggunakan eBPF untuk memantau koneksi pada level kernel, dan menyediakan antarmuka berbentuk PWA melalui web UI
  • Bukan alat keamanan, melainkan alat yang berfokus pada privasi, cocok untuk memblokir komunikasi keluar dari perangkat lunak umum, tetapi terbatas untuk pertahanan terhadap serangan tingkat lanjut

Gambaran umum

  • Little Snitch for Linux adalah alat untuk memvisualisasikan dan mengendalikan koneksi jaringan aplikasi secara real-time
    • Anda dapat melihat aplikasi mana yang berkomunikasi dengan server mana
    • Menyediakan fungsi untuk memblokir koneksi yang tidak diinginkan, mencatat lalu lintas, dan melacak penggunaan data
  • Memerlukan Linux kernel 6.12 atau lebih baru dan dukungan kernel BTF
  • Web UI dapat diakses di http://localhost:3031/ dan dapat dipasang dalam bentuk PWA (Progressive Web App)

Pemantauan koneksi

  • Di Connections View, aktivitas jaringan saat ini dan masa lalu ditampilkan per aplikasi
    • Menampilkan item yang diblokir oleh aturan dan daftar blokir, penggunaan data, serta riwayat lalu lintas
    • Dapat diurutkan dan difilter berdasarkan aktivitas terbaru, jumlah data, dan nama
    • Koneksi dapat diblokir hanya dengan satu klik
  • Diagram lalu lintas di bagian bawah memvisualisasikan jumlah data seiring waktu
    • Jika Anda menyeret untuk memperbesar area tertentu, hanya aktivitas pada periode tersebut yang akan ditampilkan

Pengelolaan daftar blokir

  • Fitur Blocklists memungkinkan pemblokiran massal kategori lalu lintas yang tidak diinginkan
    • Dapat diunduh otomatis dari sumber jarak jauh dan selalu dijaga tetap mutakhir
    • Format yang didukung: satu baris per domain, satu baris per hostname, format /etc/hosts (IP + hostname), dan rentang jaringan CIDR
    • Wildcard, regex, glob, dan format berbasis URL tidak didukung

      • Demi efisiensi, disarankan menggunakan daftar berbasis domain
      • Contoh daftar: Hagezi, Peter Lowe, Steven Black, oisd.nl
      • Format .lsrules untuk macOS tidak kompatibel dengan versi Linux

Aturan kustom

  • Fitur Rules memberikan kontrol yang lebih rinci dibanding blocklist
    • Dapat dikonfigurasi per proses, port, dan protokol tertentu
    • Daftar aturan dapat diurutkan dan difilter
  • Melalui aturan, Anda dapat menyusun kebijakan kontrol jaringan yang detail

Keamanan akses

  • Secara default, antarmuka web dapat diakses oleh semua proses yang berjalan secara lokal
    • Ada kemungkinan aplikasi berbahaya dapat mengubah aturan, memodifikasi daftar blokir, atau menonaktifkan filter
  • Untuk mencegah hal ini, Anda dapat mengaktifkan persyaratan autentikasi
    • Pengaturan rinci dilakukan melalui konfigurasi lanjutan (Advanced configuration)

Struktur internal

  • Menggunakan eBPF untuk melakukan hooking ke Linux network stack
    • Program eBPF memantau koneksi keluar dan meneruskan data ke daemon
    • Daemon bertugas melacak statistik, memproses aturan, dan menyediakan web UI
  • Kode sumber program eBPF dan web UI tersedia secara publik di GitHub

Konfigurasi lanjutan

  • UI bawaan hanya menampilkan pengaturan utama, sedangkan pengaturan lanjutan dikonfigurasi melalui file teks
    • Setelah diubah, daemon littlesnitch perlu di-restart
  • Lokasi konfigurasi default: /var/lib/littlesnitch/config/
    • Jangan edit langsung; salin file yang ingin diubah ke /var/lib/littlesnitch/overrides/config/ lalu edit
    • Konfigurasi di direktori override selalu diprioritaskan
  • File konfigurasi utama
    • web_ui.toml: pengaturan alamat jaringan, port, TLS, dan autentikasi
      • Jika dapat diakses oleh banyak pengguna, autentikasi perlu diaktifkan
      • Jika diekspos di luar loopback, TLS tambahan diperlukan
    • main.toml: mengatur perilaku default untuk koneksi yang tidak cocok dengan aturan
      • Nilai default adalah allow, dan dapat diubah menjadi deny bila diperlukan
      • Salah konfigurasi berisiko membuat sistem tidak dapat diakses
    • executables.toml: aturan pengelompokan executable
      • Menghapus nomor versi agar beberapa versi aplikasi yang sama ditampilkan sebagai satu
      • Mendefinisikan hubungan induk untuk shell dan proses pengelola aplikasi
      • Terus ditingkatkan melalui umpan balik komunitas
  • Program eBPF dan web UI dapat diganti dengan versi build pengguna
    • Versi di direktori override akan diprioritaskan

Keterbatasan

  • Dirancang sebagai alat privasi, bukan alat keamanan
    • Lebih sederhana daripada versi macOS, dan memiliki keterbatasan fungsional karena batasan eBPF
  • eBPF memiliki batas ruang penyimpanan dan kompleksitas program, sehingga
    • Jika lalu lintas tinggi, tabel cache dapat penuh dan pemetaan antara paket, proses, dan nama DNS bisa menjadi tidak lengkap
    • Saat memulihkan hostname asli dari alamat IP, digunakan heuristik (heuristics)
    • Versi macOS melakukan pemetaan yang lebih akurat dengan deep packet inspection (DPI)
  • Cocok untuk memantau dan memblokir komunikasi keluar dari perangkat lunak umum, tetapi tidak cocok untuk pertahanan sistem terhadap penyerang tingkat lanjut

Lisensi

  • Terdiri dari 3 komponen
    • Program kernel eBPF dan web UI dirilis di bawah GNU GPL v2 dan tersedia di GitHub
    • Daemon (littlesnitch --daemon) bersifat proprietary, tetapi gratis digunakan dan dapat didistribusikan ulang

Belum ada komentar.

Belum ada komentar.