dapatkah localhost dipalsukan?

9

Apakah mungkin bagi mesin jarak jauh untuk mengakses data localhost mesin lain dengan menipu ip loopback?

Katakan jika saya ingin pengaturan di mana jika saya terhubung dari suatu tempat di luar jaringan saya sendiri, saya harus memberikan kredensial login dan kata sandi saya akan diperlukan untuk semua operasi yang sensitif. Namun, jika saya terhubung dari komputer saya, kredensial ini tidak diperlukan karena saya harus masuk ke OS saya untuk mengakses jaringan pada perangkat itu. Bisakah saya mengandalkan alamat loopback sebagai langkah pengamanan dengan cara ini? Atau mungkinkah seorang penyerang membuatnya tampak seolah-olah mereka terhubung secara lokal?

bee.catt
sumber
Saya tidak percaya begitu.
SpacemanSpiff
1
Apakah maksud Anda membuat mesin menerima paket palsu yang tampaknya berasal dari 127.0.0.1? Atau maksud Anda membuat mesin menerima paket palsu yang ditujukan ke 127.0.0.1?
David Schwartz
Maksud saya, pada dasarnya, bisakah seseorang membobol data localhost saya dan melakukan apa saja dengan berpura-pura menjadi localhost.
bee.catt
Tidak jelas apa artinya "membobol data host lokal saya". Apakah itu berarti membuat mesin Anda menerima paket yang tampaknya berasal dari 127.0.0.1?
David Schwartz

Jawaban:

12

Tidak.

Dimungkinkan untuk mengirim data sebagai 127.0.0.1 palsu, tetapi jawabannya akan "keluar" (tetap di dalam sebenarnya) antarmuka loopback, dan 'hilang'.

Jika ada router di jalan, itu akan mengirim paket melalui antarmuka loopback itu sendiri, dan itu akan hilang di sana.

mulaz
sumber
ok, jadi jika saya memahami semua ini dengan benar, penyerang berpotensi mengirim sesuatu ke dalam, tetapi mereka tidak akan bisa mendapatkan kembali, karena sifat dari loopback adalah bahwa ia hanya berbicara sendiri. Jika ini benar, maka dapatkah penyerang mengirimkan kode berbahaya yang memungkinkan untuk terhubung dari jarak jauh, atau bahkan hanya beberapa kode yang umumnya merusak sesuatu?
bee.catt
Anda memiliki tabel routing di komputer Anda, yang mengatakan paket mana yang keluar. (rute -n pada * nix). Anda memiliki entri di sana untuk 127.0.0.0/8 untuk keluar melalui antarmuka loopback (sebenarnya tidak keluar, karena itu adalah loopback). Jadi, jika penyerang dari komputer Anda mengirim paket ke komputer Anda, PC Anda dapat menerimanya, tetapi paket yang dikembalikan akan hilang, karena ia akan tetap berada di dalam komputer Anda (dikirim 'keluar' dari loopback)
mulaz
1
Ide yang menarik. Namun antarmuka loopback tidak memiliki alamat MAC. Jadi Anda harus memiliki komputer target (target teknis NIC) MAC dalam kombinasi dengan IP yang bukan milik MAC itu dan berharap bahwa tumpukan jaringan penerima menerimanya. Dan kemudian paket tersebut harus diterima oleh sesuatu yang mengharapkan data dan mungkin juga mendengarkan pada IP asli. Tetap saja, pemikiran yang bagus.
Hennes
Anda dapat menggunakan mac dari kartu ethernet (saat Anda mengirim paket ke, misalkan googles 8.8.8.8, Anda mengirimnya ke router MAC dengan 8.8.8.8 sebagai dst. IP. Mesin tersebut harus mengaktifkan ip forwarding yang mengaktifkan ofcourse.
mulaz
bagaimana dengan serangan di control plane? Dengan alamat sumber yang dibuat sebagai 127.0.0.1 dimungkinkan untuk memotong beberapa ACL?
sdaffa23fdsf
6

Iya. Anehnya, dimungkinkan untuk menipu alamat sumber loopback. Jelas Anda tidak akan mendapatkan balasan, jadi paket palsu Anda juga perlu menyertakan exploit. Juga akan dihentikan di router, jadi Anda harus berada di jaringan lokal yang sama dengan korban. Lubang jauh CVE-2014-9295 dieksploitasi dengan cara ini.

Ternyata OS X dan Kernel Linux berperilaku sama dalam kasus ini. Paket IP apa pun yang tiba pada antarmuka eksternal dan dengan sumber IP 127.0.0.1 akan segera dihapus. Tetapi jika kita menggunakan IPv6 sebagai gantinya, kita dapat benar-benar spoof :: 1 dan mengirim paket mode kontrol ke daemon (beberapa distribusi Linux memiliki aturan firewall yang melindungi hal ini, misalnya Red Hat). Jadi, jika kita berada di jaringan lokal yang sama, kita dapat mengirim paket palsu ke alamat link-local target dan memotong pembatasan IP.

http://googleprojectzero.blogspot.de/2015/01/finding-and-exploiting-ntpd.html

sourcejedi
sumber
Ini adalah jawaban yang sebenarnya ...
DeepS1X
3

Data loopback biasanya tidak pernah sampai ke jaringan. Itu dicegat dan, well, dilingkarkan ke belakang, sebelum itu terjadi. Karena tidak pernah menyentuh jaringan yang sebenarnya, tidak ada yang dapat mencegat jaringan itu.

Hennes
sumber
1

Tidak. Loopback di-hardcode /etc/hosts- ini adalah tempat pertama resolver akan mencari loopback ke terjemahan ip. Kecuali Anda dapat mengedit / etc / hosts Anda tidak dapat melakukannya.

Jika Anda dapat mengedit / etc / hosts maka Anda adalah seorang administrator sehingga Anda dapat melakukan apa saja ..

mnmnc
sumber