Για την ασφάλεια των Flatpak/Snap

Βασικά όχι. Μια Canonical αν το κάνει έχει μεγάλες επιπτώσεις. αν όμως το κάνω εγώ, ή ο Χοσέ από την Βραζιλία δεν έχουμε καμιά προσωπική επίπτωση (εκτός αν μας βρεις και μας κάνεις μήνυση). Θα μπορούσες να κατεβάσεις κάτι από εμένα να μου έχεις εμπιστοσύνη, αλλά να έχει χακάρει κάποιος τον υπολογιστή μου και να έχει κάνει κάτι σαν αυτό [*].

Τέλος (μόλις είδα το παρέθεσε και ο @cerebrux) ξεχνάς το θέμα της απομόνωσης που παρέχουν κάποια από τα νέα φορματς. Και μάλιστα τα snaps, μάλλον έχουν καλύτερα χαρακτηριστικά ασφαλείας κατά τον Pottering Πηγή.

[*] Αυτό το σενάριο αντιμετωπίζετε μόνο με reproducible builds.

Διαβάστε το paper του Ken Thomson εδώ :

Οι επιπτώσεις σε εσένα, σαν χρήστη του λογισμικού, είναι το ίδιο, από όποια αρχή και αν γίνουν. Δεν ξεχνάω τίποτα, ξεχνάς το crypto mining από παιχνίδι στο official ubuntu snap store.

Προφανώς είναι το ίδιο, οι πιθανότητες όμως να συμβεί δεν είναι ίδιες. Μπορείς να πεθάνεις από πτώση τούβλου καθημερινά, αλλά οι πιθανότητες είναι μεγαλύτερες αν περνάς κάτω από μια σκαλωσιά, και ακόμα μεγαλύτερες αν στην οικοδομή δεν εφαρμόζουν τα μέτρα ασφάλειας. Αλλά το ότι μπορεί να σου πέσει ένα τούβλο στο κεφάλι δεν σημαίνει πως τα μέτρα αυτά είναι άχρηστα,

Βασικά όχι δεν το ξεχνάω, για τον απλούστατο λόγο ότι δεν το έμαθα ποτέ :grinning:. Δεν το αμφισβητώ, αλλά έχεις κάποια πηγή να δω τι έγινε; Όπως είπα δεν κατέχω τα του snap.

Τώρα μεμονωμένα περιστατικά πάντα μπορεί να υπάρξουν σε κάθε μαγαζί. Μπορώ να σου πω αντίστοιχα περιστατικά σε άλλα μαγαζιά (ακόμα και σε Debian) . To θέμα είναι πόσο σύντομα υπάρχει δράση μετά την ανακάλυψη, πόσο γρήγορα εντοπίζονται, καθώς και το πλήθος τους.

Επίσης τεχνικά το minning δεν είναι ζήτημα ασφαλείας. Αν μου είναι γνωστή η ύπαρξη του και διαφημισμένη, θα μπορούσα ίσως να χρησιμοποιήσω δωρεάν κάποιο λογισμικό που βγάζει τα έξοδα από το minning σε κάποιες περιπτώσεις.

https://www.bleepingcomputer.com/news/linux/malicious-package-found-on-the-ubuntu-snap-store/

Ανέφερες ένα μεμονωμένο περιστατικό που έγινε πριν τέσσερα (4) χρόνια. Εντοπίστηκε, αναφέρθηκε και

All Snaps of that author were removed from the store.

Τι συμπέρασμα μπορούμε να βγάλουμε από αυτό;

ΥΓ: Το να μην σου αρέσει ένα φορμάτ είναι δικαιολογημένο. Αλλά να είμαστε σωστοί στην κριτική μας. Όπως είπα και εγώ είμαι ενάντια στα σναπς και δεν τα συνιστώ. Ακριβώς γιατί δεν μου αρέσει ο ένας και μοναδικός κεντρικός έλεγχος. Αλλά αναγνωρίζω τα πλεονεκτήματα και τα μειονεκτήματα κάθε τεχνικής λύσης. Αν δεν το κάνεις αυτό, αν δεν αναλύσεις αυτό που δεν σου αρέσει να δεις τι κάνει καλά, δεν θα έχεις ποτέ μια άλλη καλύτερη λύση. Και πρέπει να καταλάβεις τους συμβιβασμούς που κάνεις κάθε φορά που επιλέγεις μια λύση έναντι άλλης.

Προσωπικά επιλέγω την Ελευθερία έναντι της ασφάλειας, σχεδόν σε κάθε περίπτωση.

2 «Μου αρέσει»

Ότι έγινε.
Talo, βεβαίως και υπάρχουν πλεονεκτήματα στα νέα packaging formats αλλά υπάρχουν και αντίστοιχοι λόγοι που κάποιος θέλει να παραμένει παραδοσιακός, και αυτή η ποικιλομορφία αποτελεί στοιχείο ελεύθερης κοινωνίας. Τα “δεν μπορώ να καταλάβω…”, δεν μπορώ εγώ προσωπικά…

Καλό :)
Το έθεσα καθαρά στο τεχνικό του ζήτημα και όταν πάρω μια απάντηση τεχνικής φύσης από κάποιον που λέει «δεν Μαρεσει το snap/flatpak κλπ» θα παραμείνω με την απορία.

Παντως καθε φορμα που αυξανει την ευκολια χρησης διατηρωντας την ασφαλεια καλο ειναι να υπαρχει. Τα λογισμικα παντα ηθελαν να εχουν εναν μπαμπουλα με μια σφραγιδα απο πανω οπως και οι χρηστες στο μεγαλυτερο κομματι τους θελαν αυτη τη σφραγιδα. Απο το πιστοποιημενο λογισμικο σε dos κτλ σε παιχνιδιμηχανες μεχρι τα store και τα snap flatpak κτλ.

Το linux παντως σαν ασφαλεια τα τοσα χρονια που το χρησιμοποιω , αποκεντρωμενο δεν το λες. Αποθετηρια πιστοποιημενα κτλ. Και για να τρεξουν ανεξαρτητες εφαρμογες πολυ δουλεια.

Το αντιθετο απο τα windows που κατεβαζες οτι ηθελες ετρεχες το exe και οτι γινοταν.

Αν εξαιρεσουμε την ασφαλεια γιατι οσο μεγαλυτερο γινεται ενα φορμα τοσο δυσκολοτερο ειναι να βρεθει το κακοβουλο , η ευκολια χρησης σε μια περιοδο που οι νεοι χρηστες μαθαινουν για τα παντα με ενα κλικ ειναι απαραιτητη. Στο κατω κατω υπαρχει και το gentoo για τους σκληροπυρινικους (χαχαχ παντα το λεω αυτο με το gentoo γιατι ειναι το μονο που αν μου πεις βαλε λιγο να το δουμε θελω καμια βδομαδα)

3 «Μου αρέσει»

Αν δεν κάνω λάθος οι snap εγκαταστάσεις έχουν πιο πρόσφατες εκδόσεις των εφαρμογών, σε σχέση με την εγκατάσταση με τον διαχειριστή πακέτων της κάθε διανομής.
Βέβαια βλέπω ότι πολλά software centers προκρίνουν τη χρήση των flatpak.
Είναι τα flatpak πιο ασφαλή ή πιο λειτουργικά από τα appimages;
Γιατί έχουν μεγαλύτερο χρόνο εγκατάστασης;

Τα snaps θα τα βρελις μόνο σε Ubuntu και σε διανομές βασισμένες σε αυτό. Αλλά όχι σε όλες στο Mint για παράδειγμα είναι απενεργοποιημένα.

Για το θέμα της ασφάλειας δεν μπορώ να απαντήσω με σιγουριά, αλλά για την ευκολία; Απλά και στο ένα και στο άλλο είναι ένα κλικ στο App Center της κάθε διανομής.

Δεν έχουν μεγαλύτερο χρόνο εγκατάστασης, απλά μπορείς να έχεις διαφορετικά runtimes. Αυτά είναι που παίρνουν τον χώρο και την χρόνο. Αν τα πάντα χρησιμοποιούν το ίδιο runtime ο χρόνος πρέπει να είναι ο ίδιος. Και τα flatpak ξεκινάνε πολύ πιο γρήγορα κάτι που βρίσκω περισσότερο σημαντικό.

ΥΓ: Απο πλευράς ασφάλειας τα χειρότερα είναι τα native (είτε deb είτε rpm είτε οτιδήποτε άλλο) και τα AppImages γιατί δεν χρησιμοποιούν τεχνολογίες sandboxing. Τώρα η διανομή μου είναι ακόμα κολλημένη στο X11 οπότε δεν έχει τόσο μεγάλη σημασία.

1 «Μου αρέσει»

Μεγαλύτερη κατανάλωση πόρων είναι το σημαντικότερο μειονέκτημα τους. Επίσης στο θέμα ασφάλεια αν εμφανιστεί ένα vuln σε κάποια βιβλιοθήκη θα πρέπει να κάνεις (αφότου πρώτα οι devs των πακέτων ανεβάσουν και εάν) update/remove όλα τα πακέτα που έχουν αυτή τη βιβλιοθήκη (αν βρεις ποια είναι βέβαια), κάτι που γίνεται άμεσα σε ένα κλασσικό packaging system.

1 «Μου αρέσει»

Αν εμφανιστεί κάποιο vulnerability αυτό δεν θα ξεφύγει από το confinement που έχει.

Sandbox ακούω, sandbox escape και privilege escalation σκέφτομαι.
Για ρίξε μια ματιά εδώ :
https://security.archlinux.org/package/flatpak
επίσης είχε γίνει το 2019 :
http://www.hackersnotes.com/blog/pentest/linux-privilege-escalation-via-snapd-using-dirty_sock-exploit-and-demonstration-of-cve-2019-7304/
βρέθηκε και τώρα :

1 «Μου αρέσει»

Τελευταία φορά που κοίταξα στατιστικά ~6/10 πακέτα στο flathub έχουν πρόσβαση σε όλο το home.

Η ασφάλεια σε επίπεδο sandboxing είναι κάτι εντελώς διαφορετικό σαν έννοια απο την ασφάλεια που παρέχει οποιοδήποτε κλασσικό πακετάρισμα. Βέβαια όσο δεν έχουμε μεταβεί σε Wayland αυτό θα είναι λειψό, αλλά πάλι καλύτερο από προηγουμένως.

Η μεγάλη διαφορά των Flatpaks είναι το ότι οι εφαρμογές μιλάνε με το runtime και βγαίνουν έξω ελεγχόμενα με την βοήθεια των portals. Και πολλές εφαρμογές θέλουν πρόσβαση στο $HOME αλλιώς μας είναι άχρηστες. Αλλά πάλι δεν έχουν πρόσβαση σε όλο το σύστημα όπως μια παραδοσιακή εφαρμογή.

Τώρα για το θέμα με τις παλιές βιβλιοθήκες αυτό είναι πρόβλημα των AppImages. Επίσης μια παραδοσιακή εφαρμογή άνετα μπορεί να πακεταριστεί μαζί με τις παλιές βιβλιοθήκες που θέλει. Στα Flatpak υπάρχει αυτοματοποιημένος μηχανισμός ελέγχου για παλιές βιβλιοθήκες. Απλά αντι να ενημερώνεις κάθε βιβλιοθήκη χωριστά ενημερώνεις όλο το runtime.

Τώρα στο Linux βλέπουμε και χρησιμοποιούμε τις τεχνολογίες όσο αναπτύσσονται. Σήμερα είναι πολύ πιο άνετη η χρήση πχ των Flatpak αό όσο ήταν πριν 2 χρόνια. Τόσο εμείς όσο και οι προγραμματιστές έχουν μάθει την χρήση τους. Και στην διαδικασία αυτή θα βρεθούν privillegde escallation και άλλα προβλήματα και θα διορθωθούν. Έτσι συμβαίνει σε κάθε νέα τεχνολογία.

Αλλά σήμερα το να έχεις ένα privillegde escallation είναι πρόβλημα. Πριν δεν ήταν γιατί απλά δεν είχες από κάτι να ξεφύγεις. Παραμένει ακόμα και έτσι, ακόμα και με X11 ένα πολύ ασφαλέστερο μοντέλο.

Νομίζουμε πως τα Flatpacks εχουν έρθει να λύσουν το πρόβλημα την μεταφερσιμότητας των εφαρμογών. Αλλά ο λόγος που οι καινούργιες διανομές επιλέγουν τα Flatpak και ο λόγος που δημιουργήθηκαν είναι η αυαξημένη ασφάλεια.

3 «Μου αρέσει»

Αλλά πάλι δεν έχουν πρόσβαση σε όλο το σύστημα όπως μια παραδοσιακή εφαρμογή.

Βέβαια λόγο αδειών ούτε παραδοσιακές εφαρμογές έχουν πρόσβαση σε όλο το σύστημα.

Τώρα για το θέμα με τις παλιές βιβλιοθήκες αυτό είναι πρόβλημα των AppImages.

Και των flatpak/snap τα οποία εμπεριέχουν όλες τις βιβλιοθήκες που χρειάζεται ένα πρόγραμμα.

μια παραδοσιακή εφαρμογή άνετα μπορεί να πακεταριστεί μαζί με τις παλιές βιβλιοθήκες που θέλει

Σε καμιά όμως διανομή δεν γίνεται έτσι.

Απλά αντι να ενημερώνεις κάθε βιβλιοθήκη χωριστά ενημερώνεις όλο το runtime.

Ή την ίδια εφαρμογή γιατί το runtime δεν εμπεριέχει τα πάντα. Υπάρχει για να κάνει δυνατό το τρέξιμο εφαρμογών σε όλα τα συστήματα αλλά αποτελεί απλά μια βάση.

και ο λόγος που δημιουργήθηκαν είναι η αυαξημένη ασφάλεια

Δεν θα το έλεγα. Μάλιστα πουθενά δεν αναφέρεται η ασφάλεια στην αρχική σελίδα τόσο του snap όσο και του flatpak αλλά αντίθετα και τα δύο διαφημίζουν τη μεταφερσιμότητα τους. Το appimage δεν έχει καν sandboxing οπότε δεν κοιτάω.

1 «Μου αρέσει»

Η προσωπική μου αντιπάθεια (αν και δεν είμαι hardcore χρήστης) προκύπτει από 2 κυρίως λόγους:

  1. με τα Snap είχα πρόβλημα (επειδή είναι sandboxed) να έχω πρόσβαση σε φακέλους για αποθήκευση αρχείων. Για παράδειγμα, στο Gimp έφτιαξα μια εικόνα και δεν μπορούσα να την αποθηκεύσω πουθενά εκτός από το Pictures του /home. Είναι πολύ άβολο να πρέπει να ρυθμίσεις κάτι τέτοιο κάθε φορά που βάζεις ένα Snap. Το ίδιο συνέβη και με ένα Flatpak που εγκατέστησα, αλλά το συγκεκριμένο δεν χρειάζεται να αποθηκεύσει κάτι οπότε δεν μου δημιουργεί πρόβλημα. Όλως παραδόξως δεν είχα τέτοια θέματα με ένα AppImage.
  2. το μέγεθος των Snap/Flatpak/AppImage είναι πολλαπλάσιο του να εγκαταστήσεις τα προγράμματα από ppa/aur κτλ, με αποτέλεσμα να γεμίζει ο σκληρός. Στους περισσότερους χρήστες αυτό ίσως δεν είναι πρόβλημα, αλλά εγώ έχω καταφέρει να γεμίσω έναν σκληρό 1ΤΒ στο λάπτοπ με αρχεία και είμαι στο Filesystem με 8-10GB το πολύ ελεύθερα.

Καταλαβαίνω ότι ο σκοπός ύπαρξης των Snap/Flatpak/AppImage είναι η ασφάλεια και η ευκολία, αλλά για εμένα προσωπικά τα αρνητικά είναι περισσότερα από τα θετικά.
Επίσης, πού είναι η πλάκα αν δεν χαλάσει κάποιο dependency και να ψάχνεις 2 ώρες να βρεις λύση για να κάνεις ένα πρόγραμμα να τρέξει; :stuck_out_tongue:

3 «Μου αρέσει»

Και εγώ τα αντιπαθώ όλα και πολύ περισσότερο τα snap.
Πρώτον, πολύ μεγάλο μέγεθος, απαράδεκτο.
Δεύτερον, δεν ενσωματώνονται καλά στο σύστημα. Δεν έχουν πλήρη πρόσβαση στο file system, δεν πιάνουν το theming σε κέρσορα και εμφάνιση. Δε χρειάζομαι και δε θέλω sandboxing στο pc μου, δε γουστάρω να μου επιβάλλονται χωρίς τη θέληση μου. Αυτά γίνονται στα Windows, τώρα θέλουν να το φέρουν και στο Linux; Βρε ουστ!
Τρίτον, το snap είναι και κλειστό, δηλαδή ακόμη χειρότερα.

Ήδη διαγράφω μαζικά όλα τα Ubuntu based συστήματα μου και μεταβαίνω σε καθαρά Debian based και Arch based, ενώ κρατάω φυσικά και το αγαπημένο Mint.

1 «Μου αρέσει»

Ένα ενδιαφέρον σχόλιο από το blog του Linux mint.

3 «Μου αρέσει»

Το snap πράγματι αποτελεί βασικό στοιχείο στο εμπορικό κομμάτι της Canonical αλλά το υπόλοιπο σχόλιο μου φαίνεται περισσότερο δυσπιστία σε αυτή. Η σημαντική διαφορά, που βασικά γίνεται άμεσα αντιληπτή από τα δύο λινκς που έδωσα παραπάνω, των δύο είναι πως το flatpak απευθύνεται καθαρά σε desktop χρήστες ενώ το snap καλύπτει μεγαλύτερο φάσμα (desktop σε IoT). Βασικά το snap μπορεί να είναι ο μοναδικός package manager σε ένα σύστημα αφού μπορεί να εγκαταστήσει από εφαρμογές μέχρι kernels. Το ότι τα Mir (όπως ήταν αρχικά) και Unity (ολικά) εγκαταλείφθηκαν σχετίζεται με τη προηγούμενη διαφορά. Η Canonical έχει αλλάξει το ενδιαφέρον της από desktop/mobile σε servers/IoT. Αντίθετα η Red Hat διατηρεί ενδιαφέρον και σε workstations.

2 «Μου αρέσει»