Linux anti-malware

Ξεκίνησε από διδάσκων αει διδασκόμενος, 25 Μαΐου 2017, 08:26:25 ΜΜ

« προηγούμενο - επόμενο »

διδάσκων αει διδασκόμενος

Όσοι χρησιμοποιούμε linux αισθανόμαστε ασφαλείς από malware. Αυτή η αίσθηση ασφάλειας έχει βάση αλλά δεν είναι απολύτως σωστή. Μπορώ να σκεφτώ τουλάχιστον 3 περιπτώσεις που δεν δικαιολογείται. Α) Άγνωστα repositories. Εφαρμογές που δεν μπορούμε να εμπιστευτούμε επειδή εγκαθίστανται με δικαιώματα διαχειριστή μπορούν να καταστρέψουν το σύστημά μας και να εγκαταστήσουν π.χ.spyware. Η ζημιά σε αυτήν την περίπτωση μπορεί να είναι χειρότερη από ότι θα παθαίναμε με windows, Β) Σκριπτάκια στον browser. Αυτά δεν ξεχωρίζουν λειτουργικό σύστημα και μπορούν να αναδρομολογούν τον browser, να εγκαθιστούν adware και φυσικά spyware (εξαρτάται βέβαια από τι είδους πρόσθετα έχει κανένας), και Γ)malware για windows που μας επηρεάζει όταν δουλεύουμε με wine.

Σχετικά με το Α ένας απλός κανόνας είναι να προσέχουμε σε τι repositories γραφόμαστε. Έχω δει ενδιαφέρουσες εφαρμογές σε linux και δεν τις έχω εγκαταστήσει στον υπολογιστή μου γιατί φοβάμαι το repository, σπανίως εγκαθιστώ *.deb κλπ. Για τα Β και Γ όμως θα χρειαστούμε κάποιο ειδικό λογισμικό. Στο κέντρο λογισμικού του ubuntu υπάρχει ένα αντιβιοτικό που λέγεται ClamAV. Έχει παραθυρικό περιβάλλον. Δεν ξέρω όμως πόσο αποτελεσματικό είναι (ώς ποσοστό επιτυχούς εντοπισμού). Θεωρητικά, το ίδιο πρόγραμμα τρέχει από γραμμή εντολών (πάντα προτιμώ τη γραμμή εντολών) ως clamscan <παράμετρος> <φάκελος ή αρχείο που σκανάρουμε>. Όμως στον δικό μου υπολογιστή η εντολή δεν βρήκε καθόλου infected αρχεία ενώ η παραθυρική εκδοχή βρήκε (δεν εξετάζω τώρα πόσα alarms ήταν fake). Το anti-malware πρόγραμμα καλύτερα να είναι over-Suspicious. Έχει κανείς εμπειρία από anti-malware στο linux για να με συμβουλέψει; Πάντως το ανέμελο σερφάρισμα απλά επειδή έχουμε linux είναι λάθος δυστυχώς. Ένα άλλο μεγάλο θέμα είναι ότι αυτού του είδους τα anti-malware τρέχουν μεν σε linux αλλά για να εντοπίσουν κακόβουλο λογισμικό που γράφτηκε για windows. :laugh:

alkisg

Στην πράξη, στα 1000κάτι σχολεία που έχουν Ubuntu, είχα δει μόνο ένα malware, το οποίο εγκαταστάθηκε επειδή κάποιος τους είχε κάνει εγκατάσταση χωρίς να ακολουθήσει τις οδηγίες της Τεχνικής Στήριξης και τους έβαλε password 1234 στον λογαριασμό root (ο οποίος κανονικά δεν έχει password επίτηδες για να μην μπορεί να χρησιμοποιηθεί σε logins). Οπότε το malware απλά δοκίμαζε γνωστούς κωδικούς μέχρι που τον πέτυχε. Δεν ήταν δηλαδή καν ευπάθεια του λειτουργικού.

Παρόλη τη σπανιότητα, κίνδυνοι υπάρχουν και φυσικά πρέπει να προσέχουμε. Οδηγίες για αντιιικά υπάρχουν στη σελίδα https://help.ubuntu.com/community/Antivirus. Τα εμπορικά έχουν και καλύτερα ποσοστά επιτυχίας και φτάνουν πάνω από 90%, ενώ το ClamAV αν θυμάμαι καλά είναι γύρω στο 60.

διδάσκων αει διδασκόμενος

Αγαπητέ μου Άλκη, σε ευχαριστώ για την (όπως πάντα) γρήγορη απάντηση και να είσαι γερός και δυνατός.

Η αφορμή για το post μου δεν δόθηκε στο σχολείο (που έχει και την ομπρέλλα του ΠΣΔ) αλλά σε σπιτίσιο μηχάνημα ubuntu 14.04. Για να είμαι ακριβής με φοβίζει πιο πολύ το spyware στο linux (botάκια κλπ) παρά οι ιοί. Μελέτησα το θέμα για λίγο και έτρεξα την εντολή rkhunter. Μου έδωσε κάποια warnings και θέλω την έμπειρη γνώμη σου σε κάτι που από το διαδίκτυο δεν μπόρεσα να καταλάβω. Για παράδειγμα το αρχείο /etc/rkhunter.conf έχει δηλωμένο ALLOW_SSH_ROOT_USER=no ενώ το /etc/ssh/sshd_config έχει δηλωμένο PermitRootLogin yes. Προφανώς έτσι εξηγείται το warning. Το ερώτημα είναι να γυρίσω το PermitRootLogin σε no για ασφάλεια ή έτσι θα καταστρέψω την πρόσβαση που θα χρειαστώ για root εργασίες;

ευχαριστώ εκ των προτέρων

Υ.Γ. Το θέμα είναι σχετικό και με την παρατήρηση που έκανες για την εγκατάσταση με enabled password για τον root. Μου κάνει εντύπωση γιατί το ubuntu έχει disabled τον root by default οπότε αυτός που το έκανε πήρε το ρίσκο εν γνώσει του.

διδάσκων αει διδασκόμενος

Συγγνώμη από τη βιασύνη ξέχασα να γράψω το warning: "Checking if SSH root access is allowed"

alkisg

Παράθεση από: http://manpages.ubuntu.com/sshd_config
PermitRootLogin
Specifies whether root can log in using ssh(1).  The argument must be "yes", "prohibit-password", "without-password", "forced-commands-only", or "no".  The default is "prohibit-password".
If this option is set to "prohibit-password" or "without-password", password and keyboard-interactive authentication are disabled for root.
If this option is set to "forced-commands-only", root login with public key authentication will be allowed, but only if the command option has been specified (which may be useful for taking remote backups even if root login is normally not allowed).  All other authentication methods are disabled for root.
If this option is set to "no", root is not allowed to log in.

Η προεπιλεγμένη τιμή είναι "prohibit-password", η οποία θεωρείται ασφαλής. Δεν επιτρέπει ούτε τοπικά ούτε απομακρυσμένα login με root/password. Επιτρέπει ssh login με root/ssh-key. Αυτό σημαίνει ότι ο χρήστης έχει φτιάξει ένα RSA key και το έχει δηλώσει στο SSH ώστε να επιτρέπεται. Έτσι δεν μπορεί να γίνει brute force login, αφού το SSH key είναι 4096 bits, πολύ περισσότερα από έναν κωδικό πρόσβασης, και φυσικά αποτρέπεται και το dictionary attack αφού κατασκευάζεται εξαρχής ως τυχαίος συνδυασμός, και οι keyloggers, αφού το ssh key δεν πληκτρολογείται.
Υπάρχουν πολλοί λόγοι που χρειάζεται το απομακρυσμένο ssh root login με κλειδιά, π.χ. για συντήρηση συστημάτων με Ansible ή ClusterSSH.

Εν ολίγοις, είτε αγνοείς το μήνυμα του rkhunter, είτε τους αναφέρεις σε bug report ότι δεν πρέπει να εμφανίζουν το μήνυμα αν PermitRootLogin=prohibit-password.

Πάντως για γενικές ερωτήσεις Ubuntu, rkhunter κλπ που δεν έχουν σχέση με τις σχολικές εγκαταστάσεις, καλύτερα να χρησιμοποιούνται τα φόρουμ της κοινότητας, όπως αναφέρω και στο https://alkisg.mysch.gr/steki/index.php?topic=4704.0.