Bisakah saya mendapatkan virus dengan menggunakan "sudo apt-get install"?

74

Saya ingin memastikan aman untuk mengunduh perangkat lunak menggunakan sudo apt-get install. Apakah paket dipindai di suatu tempat? Apakah semua paket diunduh menggunakan virus perintah ini gratis?

Jika tidak ada jaminan bahwa mereka tidak bebas virus, setelah menginstal paket yang berisi virus, apakah penyerang dapat sepenuhnya mengendalikan mesin saya? Apakah saya bisa memeriksa semua paket yang diinstal pada komputer saya? (bukan oleh sistem secara otomatis. Saya ingin memfilternya untuk melihat semua paket yang diinstal oleh saya secara manual, bukan oleh sistem.)

Tomas
sumber
8
Pertanyaannya valid, tetapi mengandung kesalahpahaman tentang virus. Daftar hitam sebagai satu-satunya cara untuk menghindari infeksi adalah metode yang sangat buruk , meskipun ada di mana-mana berkat model keamanan Windows yang terbalik. "Memindai" paket perangkat lunak adalah cara yang mengerikan untuk mencegah tindakan jahat.
Wildcard
2
Tomas, komentar Anda dihapus oleh moderator. Mohon JANGAN mempostingnya berulang kali.
jokerdino

Jawaban:

108

aptpada sistem Ubuntu default akan sangat tidak mungkin untuk mendapatkan virus. Namun, itu tidak berarti itu tidak mungkin:

  • PPA Berbahaya
    Salah satu fitur APT adalah kemampuan admin untuk menambahkan Arsip Paket Pribadi (PPA) atau sumber perangkat lunak lain ke cache APT. Sumber-sumber APT pihak ketiga ini belum tentu dipercaya, dan dapat membawa virus. Namun, itu akan mengambil tindakan yang disengaja dari admin mesin untuk menambahkan salah satu sumber yang terinfeksi ini, membuatnya agak sulit bagi seseorang untuk menambahkan sendiri.
  • Repositori Diretas
    Secara teori, repositori perangkat lunak dapat diretas oleh pihak jahat, menyebabkan .debfile yang diunduh berpotensi membawa muatan berbahaya. Namun, repositori perangkat lunak resmi diawasi dengan sangat hati-hati dan keamanan untuk repositori ini cukup ketat. Seorang peretas akan kesulitan untuk mengambil salah satu sumber perangkat lunak resmi Ubuntu, tetapi sumber perangkat lunak pihak ketiga (lihat di atas) mungkin lebih mudah dikompromikan.
  • Serangan MITM / Jaringan Aktif
    Jika jaringan dikompromikan lebih tinggi (oleh, katakanlah, ISP Anda), dimungkinkan untuk mendapatkan virus dari sumber perangkat lunak resmi. Namun, serangan kaliber ini akan membutuhkan upaya dan kemampuan ekstrem untuk banyak situs Man-In-The-Middle, termasuk server distribusi utama GPG dan repo resmi.
  • Tulisan Buruk / Kode Berbahaya
    Kerentanan memang ada dalam kode sumber terbuka, ditinjau sejawat, dan dikelola. Walaupun hal-hal ini secara teknis tidak dianggap sebagai "virus", definisi tertentu yang disembunyikan atau tidak pernah diungkapkan dalam kode dapat memungkinkan penyerang jahat untuk menempatkan virus pada atau membajak sistem Anda. Salah satu contoh dari masalah ini adalah Heartbleed dari OpenSSL, atau Dirty CoW yang lebih baru. Perhatikan bahwa program dari universeatau multiverserepo merupakan potensi ancaman sekaliber ini, seperti yang dijelaskan di sini .

apt(Karena pentingnya pada sistem Linux) cukup dijaga ketat terhadap hampir semua jenis serangan di kedua sisi klien dan server. Meskipun memungkinkan, admin yang tahu apa yang mereka lakukan dan tahu cara membaca log kesalahan akan dapat mencegah terjadinya serangan ini.

Selain itu, aptjuga memberlakukan verifikasi tanda tangan untuk memastikan bahwa file yang diunduh sah (dan diunduh dengan benar ), membuatnya semakin sulit untuk menyelinap melalui malware apt, karena tanda tangan digital ini tidak dapat dipalsukan.


Adapun untuk menanggapi insiden infeksi malware, jalur termudah mutlak adalah membakar sistem ke tanah dan mulai lagi dari cadangan baru-baru ini (dan dikenal-bersih). Karena sifat Linux, sangat mudah bagi malware untuk memanifestasikan dirinya begitu dalam di dalam sistem sehingga tidak pernah dapat ditemukan atau diekstraksi. Namun, paket suka clamavdan rkhunterdapat digunakan untuk memindai sistem untuk infeksi.

Kaz Wolfe
sumber
6
"bakar sistem ke tanah" - untuk virus yang ditulis dengan sangat baik, ini hampir secara harfiah benar. Penghancuran fisik perangkat keras akan aman; sesuatu yang kurang akan menjadi kerja keras (misalnya, jika firmware hard disk telah di-root).
Martin Bonner
2
Perlu dicatat bahwa ketiga contoh itu tidak saling eksklusif. Anda dapat menambahkan PPA pihak ketiga yang telah diretas melalui MITM.
el.pescado
11
Bagaimana (3) mungkin? Paket ditandatangani, dan kunci publik untuk repo resmi Ubuntu berasal dari media instalasi Ubuntu. Saya tidak berpikir Anda bisa terinfeksi kecuali Anda mulai dari media instalasi palsu.
Federico Poloni
6
Anda harus menambahkan opsi nomor 4: Kode curang dalam paket resmi. Bugs seperti heartbleed menunjukkan, bahwa bug parah dapat ada selama bertahun-tahun bahkan secara terbuka di perangkat lunak open source yang dikelola dengan indah. Jadi selalu ada kemungkinan bagi penyerang untuk menyuntikkan kode berbahaya ke dalam repositori dengan cara yang dapat bertahan dari peer-review. Dalam hal ini Anda hanya perlu mengunduh backdoor sebagai paket yang ditandatangani sepenuhnya dari server asli.
Falco
22
Perhatikan bahwa situasinya tentu tidak lebih baik dari ini pada sistem non-Linux. Justru sebaliknya, sungguh. Cara standar untuk mendapatkan perangkat lunak pada Windows secara harfiah mengunduhnya dari beberapa situs acak dan berharap tidak ada hal buruk yang terjadi. Apa yang Anda gambarkan adalah tentang yang terbaik yang dapat Anda lakukan dalam hal menginstal perangkat lunak dengan aman. (Saya pikir ini layak secara eksplisit disebutkan dalam jawaban, karena seseorang yang mengajukan pertanyaan ini berada pada level pemula dan mungkin tidak menyadari hal itu.)
jpmc26
16

apt-gethanya akan menginstal dari repositori resmi Ubuntu yang dicentang atau dari repositori yang telah Anda tambahkan ke sumber Anda. Jika Anda menambahkan setiap repositori yang Anda temui, Anda mungkin berakhir menginstal sesuatu yang jahat. Jangan lakukan itu.

Marc
sumber
1
Ada beberapa contoh ketika Anda perlu menginstal * .deb dari situs web lain tetapi mereka juga memiliki jumlah cek / jumlah hash yang saya percaya. Ada kalanya Anda perlu menambahkan ppa untuk diunduh dari repositori lain tetapi perintah apt-get masih digunakan. Akan lebih baik untuk memeriksa ppa terhadap daftar "situs web buruk" yang dikenal jika itu mungkin ...
WinEunuuchs2Unix
8
Sebuah checksum melindungi dari korupsi yang tidak disengaja, tetapi tidak dengan sengaja merusak - itu adalah tanda tangan OpenPGP yang melindungi dari gangguan.
Charles Duffy
1
Dengan asumsi Anda mempercayai orang yang menandatangani paket dan Anda dapat memeriksa kunci dengan cara yang dapat dipercaya. Jujur saja, setiap orang terkadang mengunduh perangkat lunak dari web. Repositori besar tetapi tidak terbatas. Keamanan dan kepercayaan yang sempurna adalah sedikit impian.
Andrea Lazzarotto
Tetapi bisakah Anda tidak menambahkan repositori tambahan?
Jeremy
"Jika kamu menambahkan setiap repositori yang kamu temui, kamu mungkin akan menginstal sesuatu yang jahat. Jangan lakukan itu."
Marc
5

File yang diunduh oleh sudo apt-getdibandingkan dengan jumlah cek / jumlah hash untuk file itu untuk memastikan belum dirusak dan bebas virus.

Memang masalah yang dihadapi orang ketika Anda google "sudo apt get hash sum" terlalu banyak keamanan terhadap virus.

Linux tidak sepenuhnya bebas virus dengan cara apa pun namun insiden mungkin 1000 kali lebih sedikit daripada windows.

Kemudian lagi dilihat dari nama layar saya, saya mungkin bias :)

Komentar pada 28 November 2017 menyebutkan bagaimana Windows memiliki 1.000 lebih banyak workstation daripada Linux jadi mengapa repot-repot meretas Linux. Ini memunculkan fakta bahwa Linux menjalankan 500 Komputer Super yang lebih cepat sekarang dan sebagian besar Webservers menjalankan Linux yang menjadikannya cara terbaik untuk meretas semua workstation Windows yang terhubung ke internet.

Google Chrome, Android dan Windows 10 memberi pengguna banyak kesempatan untuk memberikan privasi mereka dan mungkin beberapa keamanan pada saat yang sama.

WinEunuuchs2Unix
sumber
4
Eh? Masalah Checksum tidak begitu banyak tentang menghindari modifikasi yang disengaja sebagai korupsi tidak disengaja - kecuali ada tanda tangan di atasnya (dan ya, paket Debian juga memiliki tanda tangan OpenPGP), sebuah checksum dapat dimodifikasi seperti halnya data mentah itu sendiri dapat . Jika sebuah checksum pada sebuah paket tidak cocok dengan apa yang ada pada waktu build, tidak ada harapan yang masuk akal bahwa paket tersebut dapat diekstraksi untuk mendapatkan konten asli yang diinginkan.
Charles Duffy
@ Jeremy Yet Linux menjalankan 500 komputer super teratas dan sebagian besar server web yang merupakan cara terbaik untuk meretas semua klien Windows yang terpasang.
WinEunuuchs2Unix
3

Meskipun apt-get hanya akan menginstal dari repositori resmi Ubuntu, itu tidak menjamin 100% paket yang Anda dapatkan bersih.

Jika repositori diretas, peretas dapat menyuntikkan kode kerusakan ke dalam paket. Server Linux Mint sebagai contoh diretas, dan hacker menyuntikkan malware ke dalam file ISO mereka. http://www.theregister.co.uk/2016/02/21/linux_mint_hacked_malwareinfected_isos_linked_from_official_site/

PT Huynh
sumber
3
Bahkan pertukaran NSA, DNC, dan bitcoin telah diretas baru-baru ini. Saya pikir aman untuk mengatakan repositori Ubuntu adalah 99,99999% bebas virus yang merupakan semangat dari pertanyaan dan jawaban kami. Memang tidak ada yang benar-benar tampil dengan virus Ubuntu di T&J ini. Ada virus / malware Linux yang telah lama diperbaiki oleh KASLR yang kebanyakan orang bahkan tidak tahu dan saya hanya membaca tentang situs web non-MSM yang berbasis non-Linux dan hanya berdasarkan berita global. Saya ingin mengatakan bahwa Linux memiliki jauh lebih sedikit virus daripada Windows dan Pembaruan Ubuntu aman. Namun seperti selalu berhati-hati terhadap situs web.
WinEunuuchs2Unix
2
Ada perbedaan besar antara menyuntikkan kode berbahaya ke ISO dan ke server apt. ISO tidak sepenuhnya ditandatangani - ada alat modern yang tersedia yang dapat digunakan untuk penandatanganan seperti itu (penandatanganan EFI untuk melindungi bootloader, validasi GRUB OpenPGP untuk melindungi kernel dan initrd, dm-verity untuk melindungi sistem file root), tetapi dm -verity belum banyak digunakan di luar ChromeOS. Konten server apt, di sisi lain, semua memiliki tanda tangan OpenPGP - Anda harus masuk ke workstation salah satu pengembang tepercaya untuk memalsunya.
Charles Duffy
1
Menyuntikkan ISO dan melayani paket apt yang terinfeksi sama sekali berbeda. Server dapat diretas dan iso yang terinfeksi dapat dilayani, tetapi apt tidak dapat didistribusikan dengan cara ini. ada tanda tangan yang akan mencegahnya
Anwar
-4

tergantung pada apa izin sudo Anda. akses root? semua taruhan dibatalkan - Anda ipso facto menempatkan kepercayaan Anda pada ekosistem apt-get yang mungkin atau mungkin tidak aman. Saya pikir itu ide yang buruk tapi saya selalu melakukannya karena itu satu-satunya pilihan. Jika Anda menjalankan instalasi sensitif yang keamanannya sangat mahal maka menjalankan sudo di anthing yang tidak Anda kendalikan sepenuhnya mungkin gila. jika Anda hanya schmoe biasa maka Anda mungkin baik-baik saja.

mobileink
sumber
Pertanyaannya di sini adalah apakah dan sejauh mana ekosistem apt-get sebenarnya aman, yang saya tidak yakin jawaban ini ditujukan langsung. Adapun "ide mengerikan" - di luar mendistribusikan kunci OpenPGP yang dimiliki oleh pengembang tepercaya dengan sistem operasi (seperti yang sudah dilakukan), dan membutuhkan tindakan pengguna eksplisit untuk mengaktifkan kunci tambahan (seperti saat menambahkan PPA), tindakan tambahan apa yang akan atau bisa Anda menambahkan jika Anda sedang membangun sistem distribusi perangkat lunak Anda sendiri?
Charles Duffy
tidak, pertanyaannya sangat eksplisit. baca saja op. "Bisakah saya mendapatkan virus?" ya, dengan tegas. membangun sistem distribusi perangkat lunak Anda sendiri adalah pertanyaan yang sama sekali berbeda.
mobileink
ps. Saya berkata "Saya pikir" itu adalah ide yang mengerikan, yang tidak dapat ditentang. Sebenarnya saya lakukan itu adalah ide yang mengerikan untuk sistem distribusi perangkat lunak untuk memerlukan sudo.
mobileink
6
Saya berpendapat bahwa ini adalah ide yang bahkan lebih mengerikan untuk memungkinkan pengguna yang tidak memiliki hak istimewa untuk menginstal perangkat lunak di lokasi di mana ia berada di PATH default untuk pengguna yang tidak berhak lainnya. Homebrew adalah pelaku berat di sini - segera setelah dilakukan pengaturannya, setiap proses yang dikompromikan yang berjalan di bawah uid yang relevan dapat menginstal perangkat lunak di bawah /usr/local/bintanpa mengharuskan pengguna untuk menegaskan bahwa mereka bermaksud untuk mengizinkan kegiatan administrasi.
Charles Duffy
3
Secara teoritis mungkin, tetapi jauh lebih kecil kemungkinannya. Dan ini bukan Keamanan SE di mana kita berada dalam bisnis teoretis - melainkan Tanya Ubuntu, fokus pada pengguna akhir dengan pertanyaan yang didasarkan pada praktik.
Charles Duffy