Προειδοποίηση Ασφαλείας SlickStack

Αυτή η σελίδα συνοψίζει τις ανησυχίες ασφάλειας σχετικά με το SlickStack και γιατί ο προεπιλεγμένος σχεδιασμός του μπορεί να εκθέσει διακομιστές σε εκτέλεση απομακρυσμένου κώδικα και επιθέσεις τύπου man-in-the-middle. Παρέχει επίσης βήματα μετριασμού και ασφαλέστερες εναλλακτικές.

Περίληψη

  • Συχνές απομακρυσμένες λήψεις προγραμματισμένες ως root μέσω cron
  • Η επαλήθευση SSL παρακάμπτεται χρησιμοποιώντας --no-check-certificate
  • Δεν υπάρχουν checksums/υπογραφές στα ληφθέντα scripts
  • Ιδιοκτησία root και δικαιώματα πρόσβασης εφαρμοσμένα στα ανακτηθέντα σενάρια

Αποδεικτικά στοιχεία: Cron και Δικαιώματα

Λήψεις μέσω cron (κάθε 3 ώρες και 47 λεπτά)

47 */3 * * * /bin/bash -c 'wget --no-check-certificate -q -4 -t 3 -T 30 -O /var/www/crons/08-cron-half-daily https://slick.fyi/crons/08-cron-half-daily.txt' > /dev/null 2>&1
47 */3 * * * /bin/bash -c 'wget --no-check-certificate -q -4 -t 3 -T 30 -O /var/www/crons/09-cron-daily https://slick.fyi/crons/09-cron-daily.txt' > /dev/null 2>&1
47 */3 * * * /bin/bash -c 'wget --no-check-certificate -q -4 -t 3 -T 30 -O /var/www/crons/10-cron-half-weekly https://slick.fyi/crons/10-cron-half-weekly.txt' > /dev/null 2>&1
47 */3 * * * /bin/bash -c 'wget --no-check-certificate -q -4 -t 3 -T 30 -O /var/www/crons/11-cron-weekly https://slick.fyi/crons/11-cron-weekly.txt' > /dev/null 2>&1
47 */3 * * * /bin/bash -c 'wget --no-check-certificate -q -4 -t 3 -T 30 -O /var/www/crons/12-cron-half-monthly https://slick.fyi/crons/12-cron-half-monthly.txt' > /dev/null 2>&1
47 */3 * * * /bin/bash -c 'wget --no-check-certificate -q -4 -t 3 -T 30 -O /var/www/crons/13-cron-monthly https://slick.fyi/crons/13-cron-monthly.txt' > /dev/null 2>&1
47 */3 * * * /bin/bash -c 'wget --no-check-certificate -q -4 -t 3 -T 30 -O /var/www/crons/14-cron-sometimes https://slick.fyi/crons/14-cron-sometimes.txt' > /dev/null 2>&1

Ιδιοκτησία root και περιοριστικά δικαιώματα (εφαρμόστηκαν επανειλημμένα)

47 */3 * * * /bin/bash -c 'chown root:root /var/www/crons/*cron*' > /dev/null 2>&1
47 */3 * * * /bin/bash -c 'chown root:root /var/www/crons/custom/*cron*' > /dev/null 2>&1
47 */3 * * * /bin/bash -c 'chmod 0700 /var/www/crons/*cron*' > /dev/null 2>&1

Αυτό το μοτίβο επιτρέπει αυθαίρετη εκτέλεση κώδικα από απομακρυσμένο domain και αυξάνει τον κίνδυνο MITM παρακάμπτοντας την επαλήθευση πιστοποιητικών.

Δείτε επίσης το commit όπου οι διευθύνσεις URL του cron μεταφέρθηκαν από το GitHub CDN στο slick.fyi: διαφορά commit.

Οδηγίες μετριασμού

  1. Απενεργοποιήστε τις εργασίες cron του SlickStack και αφαιρέστε τα ληφθέντα σενάρια από τους καταλόγους cron.
  2. Έλεγχος για υπολειμματικές αναφορές στο slick.fyi και για απομακρυσμένες λήψεις σεναρίων· αντικατάσταση με αρχεία εκδόσεων που έχουν ελεγχθεί με άθροισμα ελέγχου (checksummed) ή πλήρης αφαίρεση.
  3. Αλλάξτε τα διαπιστευτήρια και τα κλειδιά εάν το SlickStack εκτελούνταν με δικαιώματα root στα συστήματά σας.
  4. Ανακατασκευάστε τους επηρεασμένους διακομιστές όταν είναι εφικτό για να εξασφαλιστεί καθαρή κατάσταση.

Πιο ασφαλείς εναλλακτικές

Σκεφτείτε το WordOps ή άλλα εργαλεία που αποφεύγουν την απομακρυσμένη εκτέλεση με δικαιώματα root και παρέχουν ελεγχόμενες, εκδομένες εκδόσεις με αθροίσματα ελέγχου (checksums) και ψηφιακές υπογραφές.

Παραπομπές