Τον Οκτώβριο του 2026, εντοπίστηκε μια κρίσιμη ευπάθεια, η CVE-2026-98432 , στον πυρήνα του Linux, με βαθμολογία 9.8 στα 10 στην κλίμακα CVSS. Επηρεάζει τον τρόπο χειρισμού των εισερχόμενων συνδέσεων IPv4 TCP και, υπό ορισμένες συνθήκες, επιτρέπει σε έναν εισβολέα να αποκτήσει πρόσβαση root σε έναν διακομιστή από απόσταση — χωρίς κωδικό πρόσβασης και χωρίς να απαιτείται καμία ενέργεια από τον διαχειριστή.
Παρακάτω θα βρείτε ποιος επηρεάζεται, πώς να ελέγξετε τον διακομιστή σας και πώς να τον προστατεύσετε. Όλες οι εντολές εκτελούνται ως root ή με sudo.
Η ευαλωτότητα εν συντομία
- Αυτό που είναι: Ένα σφάλμα use-after-free στον κώδικα που δημιουργεί συνδέσεις IPv4 TCP, το οποίο προκαλείται από μια συνθήκη κούρσας. Ο εισβολέας στέλνει ειδικά κατασκευασμένα πακέτα σε οποιαδήποτε ανοιχτή θύρα TCP.
- Πυρήνες που επηρεάζονται: κάθε έκδοση από την έκδοση Linux 4.4 και μετά, που σημαίνει σχεδόν κάθε τρέχουσα διανομή.
- IPv6 δεν επηρεάζεται από το κύριο σφάλμα.
- Πόσο πραγματική είναι η απειλή: Οι ερευνητές της Anthropic παρουσίασαν μια λειτουργική αλυσίδα εκμετάλλευσης που απέκτησε πρόσβαση root σε έναν διακομιστή με ενεργοποιημένο το Multipath TCP (MPTCP) σε περίπου 53 λεπτά. Ο κώδικας εκμετάλλευσης δεν έχει δημοσιευτεί.
- Επιθέσεις στην άγρια φύση: Από την 1η Νοεμβρίου 2026, δεν έχει αναφερθεί καμία εκμετάλλευση. Αυτός είναι ένας λόγος για να γίνει η ενημέρωση με ψυχραιμία, όχι ένας λόγος για να αναβληθεί.
Οι υπηρεσίες Go ενέχουν ξεχωριστό κίνδυνο. Από την έκδοση Go 1.24, τα προγράμματα διακομιστή σε Linux ακούν σε θύρες μέσω MPTCP από προεπιλογή όποτε το επιτρέπει ο πυρήνας. Ένας διαχειριστής μπορεί να μην γνωρίζει καν ότι ο διακομιστής του δέχεται τέτοιες συνδέσεις. Μεταξύ των δημοφιλών προγραμμάτων, το Xray λειτουργεί με αυτόν τον τρόπο — οι προγραμματιστές του έχουν ήδη κυκλοφορήσει μια έκδοση έκτακτης ανάγκης, v26.10.31, η οποία απενεργοποιεί το MPTCP από προεπιλογή.
Κάθε VPS εκτελεί τον δικό του πυρήνα, επομένως πρέπει να ενημερώσετε τον πυρήνα μέσα στον διακομιστή σας μόνοι σας. Ενημερώνουμε τους κόμβους εικονικοποίησης μόνοι μας.
Υπάρχει κάποια λύση για το σύστημά σας;
Κατάσταση από 1η Νοεμβρίου 2026. Οι διορθώσεις εμφανίζονται σχεδόν καθημερινά — ελέγξτε τους συνδέσμους στο τέλος αυτού του άρθρου για την τρέχουσα κατάσταση.
| σύστημα | Κατάσταση | Διορθώθηκε ο πυρήνας |
|---|---|---|
| Debian 13 | Σταθερό | linux 6.12.113-1 |
| Debian 12 | Σταθερό | linux 6.1.190-1 |
| Ubuntu 22.04, 24.04, 26.04 | Διόρθωση σε εξέλιξη | Όχι ακόμα — χρησιμοποιήστε την προσωρινή προστασία |
| AlmaLinux 8, 9, 10 | Διόρθωση στο αποθετήριο δοκιμών | 8: 4.18.0-553.180.2.el8_10 9: 5.14.0-687.61.2.el9_8 10: 6.12.0-211.69.2.el10_2 |
| Rocky Linux, RHEL 8, 9, 10 | Δεν υπάρχει ακόμη διόρθωση | Χρησιμοποιήστε την προσωρινή προστασία |
| Oracle Linux 7–10 (UEK) | Σταθερό | Μέσω μιας τυπικής ενημέρωσης |
| SUSE / openSUSE Leap 16 | Σταθερό | Μέσω μιας τυπικής ενημέρωσης |
Βήμα 1. Ελέγξτε ποιον πυρήνα εκτελείτε
Βρείτε την έκδοση του πυρήνα που εκτελείται:
uname -r
Ο αριθμός έκδοσης από μόνος του δεν σας λέει τίποτα: οι διανομές μεταφέρουν διορθώσεις στους δικούς τους πυρήνες χωρίς να αλλάξουν την βασική έκδοση. Είναι πιο αξιόπιστο να ελέγξετε το αρχείο καταγραφής αλλαγών του πακέτου πυρήνα — αν αναφέρει τον αριθμό CVE, η διόρθωση είναι ήδη εγκατεστημένη.
Debian και Ubuntu:
apt changelog linux-image-$(uname -r) 2>/dev/null | grep CVE-2026-98432
Στο Debian, το uname -v Η εντολή εμφανίζει επίσης την πλήρη έκδοση του πακέτου του πυρήνα που εκτελείται: συγκρίνετέ την με τον παραπάνω πίνακα.
AlmaLinux, Rocky Linux, RHEL, Oracle Linux:
rpm -q --changelog kernel-core-$(uname -r) | grep CVE-2026-98432
Εάν η εντολή δεν εκτυπώσει τίποτα, ο πυρήνας που εκτελείται είναι ευάλωτος.
Στη συνέχεια, ελέγξτε ποιες υπηρεσίες δέχονται συνδέσεις μέσω MPTCP. Διακομιστές όπως αυτοί ήταν ο στόχος στην αποδεδειγμένη επίθεση:
ss -lnMp
Η κενή έξοδος σημαίνει ότι δεν υπάρχουν ακροατές MPTCP.
Βήμα 2. Εγκαταστήστε τον διορθωμένο πυρήνα
Δημιουργήστε ένα αντίγραφο ασφαλείας ή ένα στιγμιότυπο οθόνης του διακομιστή σας πριν ενημερώσετε τον πυρήνα.
Debian 12 και 13
Οι διορθωμένοι πυρήνες βρίσκονται στο αποθετήριο ασφαλείας. Βεβαιωθείτε ότι είναι ενεργοποιημένος:
grep -r security.debian.org /etc/apt/sources.list /etc/apt/sources.list.d/
Αν δεν βρεθεί τίποτα, προσθέστε το security.debian.org αποθετήριο για την έκδοσή σας. Στη συνέχεια, ενημερώστε το σύστημα:
apt update
apt full-upgrade
reboot
Ubuntu
Δεν έχουν κυκλοφορήσει ακόμη διορθωμένοι πυρήνες. Ελέγξτε για ενημερώσεις:
apt update
apt list --upgradable | grep linux-image
Εάν ο διακομιστής σας είναι συνδεδεμένος στο Ubuntu Pro, μπορείτε να ελέγξετε το σχέδιο επιδιόρθωσης:
pro fix CVE-2026-98432 --dry-run
Μόλις κυκλοφορήσει η επιδιόρθωση, εγκαταστήστε την και επανεκκινήστε:
apt update
apt full-upgrade
reboot
Μέχρι τότε, φροντίστε να εφαρμόσετε την προσωρινή προστασία από το Βήμα 3.
AlmaLinux 8, 9, 10
Οι διορθωμένοι πυρήνες είναι προς το παρόν διαθέσιμοι μόνο στο αποθετήριο δοκιμών. Εγκαταστήστε τους εάν αισθάνεστε άνετα να το κάνετε σε έναν διακομιστή παραγωγής και φροντίστε να τραβήξετε ένα στιγμιότυπο πριν από την ενημέρωση:
dnf install -y almalinux-release-testing
dnf update 'kernel*' --enablerepo=almalinux-testing
dnf config-manager --disable almalinux-testing
reboot
Μετά την επανεκκίνηση, συγκρίνετε uname -r με τις εκδόσεις στον παραπάνω πίνακα. Εάν προτιμάτε να μην εγκαταστήσετε πακέτα δοκιμών, εφαρμόστε την προσωρινή προστασία και περιμένετε να φτάσει η επιδιόρθωση στο κύριο αποθετήριο.
Rocky Linux και άλλα συστήματα που βασίζονται σε RHEL
Δεν υπάρχει ακόμη κάποια λύση. Μπορείτε να την αναζητήσετε με:
dnf --refresh updateinfo info --all --cves CVE-2026-98432
Μόλις κυκλοφορήσει η επιδιόρθωση:
dnf update kernel
reboot
Μετά την ενημέρωση: απαιτείται επανεκκίνηση
Ο νέος πυρήνας τίθεται σε ισχύ μόνο μετά από επανεκκίνηση. Για να ελέγξετε αν χρειάζεται:
# Debian and Ubuntu
[ -f /var/run/reboot-required ] && echo "Reboot required"
# AlmaLinux, Rocky, RHEL
needs-restarting -r
Μετά την επανεκκίνηση, επαναλάβετε τον έλεγχο από το Βήμα 1.
Βήμα 3. Προσωρινή προστασία μέχρι να είναι διαθέσιμος ένας σταθερός πυρήνας
Αυτά τα μέτρα μειώνουν τον κίνδυνο αλλά δεν αντικαθιστούν μια ενημέρωση πυρήνα.
Αποκλεισμός των πακέτων ενεργοποίησης
Η επίθεση χρησιμοποιεί πακέτα TCP με επιλογές IP στην κεφαλίδα IPv4. Δεν εμφανίζονται σχεδόν ποτέ στην κανονική κίνηση και το RFC 7126 συνιστά ήδη την απόρριψή τους. Ο κανόνας nftables παρακάτω απορρίπτει όλα τα εισερχόμενα πακέτα TCP IPv4 με επιλογές και δεν επηρεάζει τα IPv6, UDP ή ICMP. Λειτουργεί παράλληλα με το ufw και το firewalld.
Εγκαταστήστε το nftables αν δεν είναι ήδη εγκατεστημένο:
# Debian and Ubuntu
apt install -y nftables
# AlmaLinux, Rocky, RHEL
dnf install -y nftables
Δημιουργήστε το αρχείο κανόνων:
cat > /etc/cve-2026-98432.nft <<'EOF'
table ip cve_2026_98432 {
chain pre {
type filter hook prerouting priority -300; policy accept;
meta l4proto tcp ip hdrlength gt 5 counter drop
}
}
EOF
Για να επαναφέρετε τον κανόνα μετά από κάθε επανεκκίνηση, δημιουργήστε μια υπηρεσία systemd:
cat > /etc/systemd/system/cve-2026-98432.service <<'EOF'
[Unit]
Description=Mitigation for CVE-2026-98432
After=network-pre.target nftables.service firewalld.service ufw.service
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStartPre=-/usr/sbin/nft delete table ip cve_2026_98432
ExecStart=/usr/sbin/nft -f /etc/cve-2026-98432.nft
ExecStop=/usr/sbin/nft delete table ip cve_2026_98432
[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload
systemctl enable --now cve-2026-98432.service
Ελέγξτε ότι ο κανόνας έχει φορτωθεί:
nft list table ip cve_2026_98432
Εάν επανεκκινήσετε την υπηρεσία nftables με ένα καθολικό flush ruleset κυβερνώ, τρέχω systemctl restart cve-2026-98432 έπειτα.
Σημαντικό: μην εφαρμόζετε αυτόν τον κανόνα σε δίκτυα που χρησιμοποιούν ετικέτες CIPSO (SELinux ή Smack NetLabel) — οι επιλογές IP χρησιμοποιούνται κανονικά εκεί. Εάν ο διακομιστής σας δρομολογεί κίνηση για άλλα μηχανήματα, ο κανόνας θα απορρίψει επίσης τα πακέτα TCP τους με επιλογές IP.
Απενεργοποιήστε το MPTCP εάν δεν το χρειάζεστε
sysctl -w net.mptcp.enabled=0
echo "net.mptcp.enabled = 0" > /etc/sysctl.d/99-disable-mptcp.conf
Αυτή η ρύθμιση αποτρέπει μόνο νέος MPTCP sockets από τη δημιουργία. Οι υπηρεσίες που εκτελούνται ήδη θα συνεχίσουν να ακούν μέσω MPTCP, επομένως επανεκκινήστε κάθε υπηρεσία που αναφέρεται από ss -lnMp και βεβαιωθείτε ότι η έξοδός του είναι τώρα κενή.
Στο AlmaLinux, το MPTCP είναι απενεργοποιημένο από προεπιλογή, εκτός αν το έχετε ενεργοποιήσει οι ίδιοι.
Απενεργοποίηση MPTCP σε προγράμματα Go
Για υπηρεσίες που έχουν δημιουργηθεί με Go 1.24 ή νεότερη έκδοση, μπορείτε να απενεργοποιήσετε το MPTCP με μια μεταβλητή περιβάλλοντος. Για παράδειγμα, για μια υπηρεσία που ονομάζεται myservice:
systemctl edit myservice
Προσθέστε τα ακόλουθα στο αρχείο που ανοίγει:
[Service]
Environment=GODEBUG=multipathtcp=0
Στη συνέχεια, επανεκκινήστε την υπηρεσία:
systemctl restart myservice
Ενημέρωση ακτινογραφίας
Εάν ο διακομιστής σας εκτελεί Xray, ενημερώστε τον στην έκδοση v26.10.31 ή νεότερη. Η προηγούμενη έκδοση, v26.10.29, έχει αποσυρθεί από τους προγραμματιστές της. Αυτή η ενημέρωση απενεργοποιεί το MPTCP αλλά δεν διορθώνει τον πυρήνα, επομένως απαιτείται ενημέρωση πυρήνα.
Ελέγξτε μία ακόμη ρύθμιση
Μια δεύτερη, πιο στενή διαδρομή εκμετάλλευσης απαιτεί την ενεργοποίηση της μετεγκατάστασης αιτημάτων. Είναι απενεργοποιημένη από προεπιλογή — βεβαιωθείτε ότι είναι ενεργοποιημένη:
sysctl net.ipv4.tcp_migrate_req
Η εντολή θα πρέπει να εκτυπώσει 0.
Περιορίστε την πρόσβαση στις υπηρεσίες σας
Κλείστε κάθε θύρα τείχους προστασίας που δεν χρειάζεται να είναι προσβάσιμη από το διαδίκτυο. Όπου είναι δυνατόν, ανοίξτε τις υπηρεσίες διαχείρισης — SSH, πίνακες ελέγχου, βάσεις δεδομένων — μόνο σε αξιόπιστες διευθύνσεις IP.
Βήμα 4. Μετά την εγκατάσταση του διορθωμένου πυρήνα
- Επανεκκινήστε τον διακομιστή και χρησιμοποιήστε τις εντολές από το Βήμα 1 για να επιβεβαιώσετε ότι εκτελείται ο διορθωμένος πυρήνας.
- Μπορείτε να καταργήσετε τον προσωρινό κανόνα:
systemctl disable --now cve-2026-98432.service
rm /etc/systemd/system/cve-2026-98432.service /etc/cve-2026-98432.nft
systemctl daemon-reload - Εάν χρειάζεστε MPTCP, επαναφέρετε τη ρύθμιση: διαγραφή
/etc/sysctl.d/99-disable-mptcp.confκαι τρέχειsysctl -w net.mptcp.enabled=1.
Αν κάτι πάει στραβά
Εάν ο διακομιστής σας δεν εκκινείται μετά την ενημέρωση του πυρήνα, συνδεθείτε μέσω της κονσόλας VNC στον πίνακα ελέγχου και επιλέξτε τον προηγούμενο πυρήνα στο μενού εκκίνησης. Εάν δεν είστε σίγουροι ότι μπορείτε να το κάνετε αυτό μόνοι σας ή χρειάζεστε βοήθεια με την ενημέρωση, επικοινωνήστε με την ομάδα υποστήριξής μας.