Pertanyaan Perbedaan keamanan apa yang ada di antara paket klik dan .deb?


Memasang acak (jahat?) .deb bisa berbahaya karena ini akan memberikan semua hak istimewa ke aplikasi dan daemon diinstal karena .deb memiliki beberapa konfigurasi yang diminta untuk diterapkan jika pengguna memvalidasi kata sandinya pada proses instalasi.

Paket klik tidak perlu kata sandi (sejauh yang telah saya uji).

Apakah paket klik akan lebih aman untuk sistem / userdata atau apakah akan sama? Mengapa?

Beberapa aspek yang akan sangat bagus untuk dijawab:

  • klik dan deb berdasarkan sistem yang sama (dpkg)?
  • dapatkah apparmor menyediakan akses root ke aplikasi tanpa kata sandi atau sesuatu?
  • akan pengguna diminta untuk menerima hak akses dari aplikasi saat menginstal (contoh seperti android: aplikasi ini akan dapat memindai jaringan / rumah dan akses Anda) atau berlari untuk kebutuhan hak (Contoh seperti browser meminta hak untuk menggunakan bubungan)?
  • dekat dengan pertanyaan ini: apakah .apk dan klik akan kata yang sama (tentang kebijakan dan cerita pengguna)?
  • terutama: dapatkah aplikasi mengirim semua data pribadi saya di jaringan dengan klik tanpa memberi tahu saya secara eksplisit atau setidaknya memiliki hak yang divalidasi oleh pengguna untuk melakukannya atau akan diblokir di kotak pasir?
  • Memang benar untuk mengatakan: paket klik kurang kuat (membatasi lebih banyak hal), tetapi lebih aman?

31
2018-06-19 08:33


asal


Saya ingin menambahkan tag "klik" tetapi tidak memiliki reputasi yang cukup untuk melakukannya. Kalimat terakhir dianggap miring. - cm-t
menandai click-packages sudah tersedia. - Pandya
NB: paket klik sedang dalam pengembangan, saya ingin memiliki jawaban untuk target paket klik stabil berikutnya. - cm-t


Jawaban:


Catatan: Saya bekerja di tim keamanan Ubuntu dan membantu merancang cerita pengekangan aplikasi untuk Ubuntu. Saya menulis ulang pertanyaan untuk kejelasan.

Q: "Apakah paket klik akan lebih aman berkaitan dengan sistem dan data pengguna atau apakah itu akan sama?"

SEBUAH: Secara umum, paket klik lebih aman daripada debet terkait dengan sistem dan data pengguna.

Paket klik tidak menyertakan skrip maintainer yang dijalankan sebagai root pada instalasi seperti paket deb. Paket klik hanya dibongkar dan kemudian kait yang disediakan oleh sistem digunakan jika dinyatakan oleh klik. Misalnya, klik mungkin menyatakan menggunakan hook desktop untuk menghasilkan file desktop atau hook AppArmor untuk menghasilkan profil AppArmor untuk aplikasi. Karena kemasan deb memiliki konsep skrip maintainer yang dirancang untuk memungkinkan penyesuaian ekstensif perangkat lunak atau sistem, paket deb hanya boleh dipasang dari sumber tepercaya, misalnya arsip yang ditandatangani dari distribusi seperti Ubuntu. Paket klik dapat diinstal secara langsung dan Anda dapat yakin pemasangan paket tidak akan merusak sistem Anda. Namun, itu hanya sebagian dari cerita-- jika Anda menginstal paket klik dari sumber yang tidak tepercaya, tidak ada jaminan bahwa ia akan menyatakan dalam manifesnya bahwa itu dibatasi dengan benar, jadi ketika menginstalnya ok, menjalankannya mungkin tidak menjadi (yaitu, perangkat lunak dapat berjalan tanpa batasan dan karena itu dapat mencuri data Anda atau menjalankan program sebagai pengguna Anda).

Kekuatan klik sebenarnya adalah ketika digunakan dalam kombinasi dengan repositori perangkat lunak dengan kebijakan yang kuat. Sebagai contoh, keamanan paket klik yang diinstal dari App Store Ubuntu biasanya lebih tinggi daripada deb yang diinstal dari arsip tepercaya. Ini karena di App Store Ubuntu, model kepercayaan adalah aplikasi yang dianggap tidak tepercaya * dan kebijakan dan pemeriksaan diterapkan untuk memastikan bahwa paket klik di toko memiliki manifestasi keamanan yang tepat dan oleh karena itu berjalan di bawah kurungan yang sangat ketat. Bandingkan dengan paket deb di arsip Ubuntu - model kepercayaan adalah bahwa perangkat lunak dan kemasan deb dianggap tepercaya dan secara umum perangkat lunak tidak berjalan di bawah pengurungan (meskipun ada banyak pengecualian di mana profil AppArmor dikirimkan dengan perangkat lunak untuk berjaga-jaga terhadap bug keamanan).

  • Paket tepercaya juga dapat dikirimkan melalui App Store Ubuntu. Meskipun tidak umum, mereka biasanya dikembangkan oleh Canonical dan mungkin atau mungkin tidak berjalan dalam kurungan. 

Untuk menjawab pertanyaan spesifik Anda:

T: Apakah klik berdasarkan pada sistem yang sama dengan deb?

SEBUAH: Format paket tingkat rendah untuk klik adalah deb. Namun, pengemasan klik jauh lebih sederhana karena menggunakan manifes deklaratif dan pengait daripada file pengemasan tradisional dan skrip pengelola.

T: Dapatkah AppArmor memberikan akses istimewa ke aplikasi tanpa interaksi pengguna?

SEBUAH: AppArmor adalah root yang kuat dan dapat mengizinkan atau menolak akses ke sumber daya sistem (file, DBus, jaringan, dll) berdasarkan kebijakan keamanan yang ditetapkan. Paket klik sendiri tidak diperlukan untuk mengirimkan manifestasi keamanan AppArmor atau untuk mengirim manifest keamanan AppArmor yang 'aman'. Apa yang membuat sistem aman adalah kombinasi klik dan kebijakan dari toko yang memberikan paket klik. Paket klik yang dikirim melalui App Store Ubuntu akan menggunakan kebijakan AppArmor yang sangat ketat dan tidak mengizinkan tindakan istimewa di belakang layar (misalnya, aplikasi yang berjalan di bawah kebijakan ini tidak dapat menjalankan program pada sistem di belakang layar, mengakses akun facebook Anda , curi kunci gpg atau ssh Anda, manipulasi jaringan, dll.)

T: Akankah pengguna diminta pada waktu pemasangan untuk memberikan hak akses ke aplikasi seperti di Android? (misalnya, "aplikasi ini dapat memindai jaringan / rumah dan akses Anda")

SEBUAH: Tidak. Paket klik itu sendiri dapat diinstal tanpa diminta menggunakan alat tingkat rendah. Pada Ubuntu, paket klik harus diinstal melalui App Store Ubuntu (lihat di atas) dan karena kebijakan toko aplikasi Ubuntu yang dikombinasikan dengan kemampuan klik dan sistem Ubuntu, tidak perlu klik-melalui, petunjuk instalasi tanpa konteks. Ubuntu dapat melakukan ini karena aplikasi yang diinstal dari toko aplikasi Ubuntu berjalan di bawah pengurungan terbatas (yaitu mereka tidak dapat melakukan hal-hal buruk di belakang layar) dan ketika aplikasi membutuhkan akses tambahan itu melakukannya dengan menggunakan API terkontrol yang mungkin termasuk mendorong.

Dalam kasus API istimewa, kami memiliki konsep pembantu tepercaya sehingga pengguna akan memiliki perintah kontekstual untuk mengizinkan atau menolak akses (dengan (opsional) caching yang dapat dirubah sehingga pengguna tidak ditanya setiap kali). Misalnya, jika aplikasi perlu mengakses layanan lokasi (pembantu tepercaya), pengguna akan diminta untuk mengizinkan akses pada saat aplikasi mencoba menggunakan layanan lokasi, yang memberikan konteks sehingga pengguna dapat membuat keputusan berdasarkan informasi. Hal yang sama akan terjadi untuk perekaman video dan audio. Seringkali, kita tidak perlu memiliki prompt keamanan sama sekali dan kita dapat mengizinkan akses berdasarkan interaksi yang digerakkan oleh pengguna dengan aplikasi. Misalnya, jika aplikasi ingin mengunggah gambar, akan ada dialog untuk memilih gambar. Di belakang layar, karena aplikasi tidak diizinkan untuk mengakses direktori ~ / Pictures, itu akan menggunakan API hub konten yang akan meluncurkan pemilih file galeri untuk pengguna untuk memilih gambar untuk diunggah. Pusat konten kemudian mengambil gambar dari galeri dan memberikannya ke aplikasi. Dengan cara ini, tidak ada dialog keamanan, hanya ada interaksi alami untuk pengguna, tetapi di belakang layar, ada keputusan kepercayaan tersirat.

T: Terkait dengan pertanyaan ini: akan .apk dan klik memiliki bahasa yang mirip berkaitan dengan kebijakan dan pengalaman pengguna?

SEBUAH: Tidak, tidak ada petunjuk instalasi karena alasan yang disebutkan di atas. Izin Android dan izin keamanan untuk paket klik sebagaimana didefinisikan untuk Ubuntu memiliki beberapa kesamaan, tetapi berbeda dan diimplementasikan secara berbeda.

T: Secara khusus, dengan klik, dapatkah aplikasi mengirim semua data pribadi saya melalui jaringan tanpa sepengetahuan saya atau akan dibatasi dalam beberapa cara untuk mencegah hal ini?

SEBUAH: Jika Anda memasang klik dari sumber yang tidak tepercaya, ya, itu bisa melakukan apa saja. Jika Anda menginstal klik dari App Store Ubuntu, tidak, aplikasi tidak dapat mengirim semua data Anda melalui jaringan karena tidak memiliki akses ke sana. Tentu saja, aplikasi dapat muncul untuk melakukan satu hal dan melakukan hal yang lain sehingga jika pengguna memberikan akses ke layanan lokasi atau memberikan akses aplikasi ke gambar, maka aplikasi tersebut dapat menjadi jahat dengan data itu - tetapi disitulah peringkat / ulasan dan kebijakan keamanan App Store mulai berlaku. Jika aplikasi seperti ini dilaporkan, maka akan diselidiki. Jika sesuai, aplikasi akan dihapus dari toko, aplikasi akan dihapus dari semua perangkat yang dipasang dan akses App Store milik pengembang akan dicabut.

T: Dapatkah dikatakan bahwa paket klik lebih aman daripada debs, tetapi kurang kuat karena mereka lebih dibatasi?

SEBUAH: Seperti dapat dilihat dari atas, jawabannya tidak sesederhana itu. Satu klik dengan sendirinya dapat mengirimkan perangkat lunak yang dapat melakukan apa saja. Format pengemasan klik sengaja ditujukan untuk tujuan umum dan dapat digunakan dalam berbagai cara dan tidak sepenuhnya spesifik untuk Ubuntu. Untuk Ubuntu, kombinasi dari klik, Ubuntu API, AppArmor dan App Store kebijakan menyediakan lingkungan yang sangat kuat bagi para pengembang untuk memberikan aplikasi kepada pengguna dengan cara yang aman dan mudah bagi orang untuk digunakan. Utilitas dari aplikasi itu sendiri tergantung pada API yang ditawarkan ke aplikasi oleh sistem yang mendasarinya. Set awal API yang akan ditawarkan pada ponsel pengiriman pertama Ubuntu akan memungkinkan pengembang untuk membuat semua jenis aplikasi yang menyenangkan dan berguna menggunakan API dan SDK yang kaya. API ini akan memperluas jangkauan dan utilitasnya saat kami bergerak maju untuk mendukung pengembang dan pengguna dengan lebih baik.


35
2018-06-19 15:07



"aplikasi akan dihapus dari semua perangkat yang dipasang" - itu sepertinya memprihatinkan. Apakah ini berarti Canonical akan dapat mencopot pemasangan aplikasi dari perangkat pengguna tanpa izin dari jarak jauh?
Toko Aplikasi Ubuntu akan memiliki kemampuan ini. Melatih kemampuan ini kemungkinan hanya akan dilakukan bila ada kode berbahaya aktif yang terlibat. Saya tidak ingin mendikte kebijakan di sini karena ada sejumlah pertimbangan yang masih harus dilihat, tetapi intinya adalah ini seharusnya tidak menjadi sesuatu yang terjadi tanpa alasan yang sangat bagus. - jdstrand
Saya memahami ini untuk keamanan pengguna (toko aplikasi lain juga melakukan hal ini), tetapi beberapa pengguna tidak menyukai jenis "sakelar mematikan" ini, karena ini berarti bahwa perusahaan dapat mencopot pemasangan aplikasi dari jarak jauh (atau lebih), meskipun itu untuk alasan keamanan. Saya pikir para pengembang harus mempertimbangkan dengan hati-hati bagaimana menerapkan ini, untuk menghindari kontroversi. Mungkin menonaktifkan aplikasi daripada menghapusnya, memungkinkan pengguna untuk menghapus atau mengaktifkannya kembali sendiri, dan menunjukkan peringatan yang sangat mencolok ... sebagai saran.
Jika paket Klik dependensi sendiri, bagaimana dengan pembaruan keamanan dari ketergantungan? Jika bash deb diperbarui, semua paket lain yang menggunakan bash secara alami menggunakan versi baru. Namun jika bash aplikasi Klik aplikasi bash kemudian kecuali pengembang aplikasi berhati-hati untuk memasukkan bash yang diperbarui bug masih ada, dan bahwa dengan asumsi pengembang aplikasi sering memperbarui paket. Perhatikan ini dalam skenario ini bayangkan bahwa bash bukanlah paket dasar. - Hendy Irawan
Kedengarannya sangat keren! Bahkan lebih baik dari sistem android! Izin Android telah menjadi sesuatu seperti EULA, cukup klik "ya" tanpa membaca ... - Galgalesh


Saya akan mencoba menjawab beberapa pertanyaan paling penting mengenai keamanan dan paket klik.

  • Bisakah aplikasi mengirim semua data pribadi saya di jaringan dengan satu klik tanpa memberi tahu saya secara eksplisit?

    • Klik aplikasi akan berjalan dalam kurungan. Apa artinya ini adalah bahwa aplikasi dicegah dari melakukan hal-hal buruk: itu hanya dapat mengakses direktori pribadi sendiri.
  • Bisakah aplikasi diinstal dan kemudian memiliki hak root? tanpa kata sandi atau permintaan khusus? 

    • ...
  • Apakah pengguna akan diminta untuk menerima hak dari aplikasi? kapan?

    • Aplikasi klik akan mengakses fitur yang memungkinkan pengguna untuk menggunakan aplikasi (NB: segera belum pada rilis Ubuntu Touch saat ini / harian).
  • Apakah ini didasarkan pada sistem yang sama untuk klik dan deb?

    • Kemasan Debian (.deb) benar-benar berbeda. Namun, jika aplikasi Anda dibuat dengan SDK Ubuntu, Anda tidak perlu menggunakan kemasan Debian dan dapat menggunakan kemasan Klik, yang jauh lebih mudah digunakan dan jauh lebih aman bagi pengguna akhir.
  • Mirip seperti di atas, untuk membandingkan: Apakah .apk (Android) dan klik berfungsi dengan cara yang sama?

    • Paket Android dan paket Klik Ubuntu akan bekerja dengan cara yang sama, di mana setiap aplikasi akan memiliki ruang sendiri untuk menyimpan data dan itu (idealnya) dilarang mengakses data dari aplikasi lain secara langsung. Saat ini, paket Android juga dapat membaca data dari kartu SD atau penyimpanan internal, di mana tidak ada batasan akses. Paket Ubuntu Click juga harus meminta izin untuk fitur-fitur khusus.
  • Memang benar untuk mengatakan: paket klik kurang kuat (membatasi lebih banyak hal), tetapi lebih aman?

    • ...

Untuk alasan-alasan ini, Paket klik sangat aman dan proses peninjauan untuk menerbitkannya jauh lebih sederhana.

Sumber: 


2



Harap lengkapi jawaban ini karena menurut Anda itu yang terbaik - cm-t