SMB 2.0 New Vulnerability causes Blue Screen of Death

September 13, 2009 Chris Spanougakis

Αυτές τις μέρες και με αφορμή αυτό το περιστατικό, θυμήθηκα ξανά το έτος 1995, όταν κάθε πρωί κοιτούσα με αμηχανία έναν Windows NT Server που έτρωγε το γνωστό Ping Of Death από κάποιον έξυπνο και έβγαζε μπλε οθόνη…. Φαίνεται λοιπόν ότι ένα νέο vulnerability εμφανίστηκε αυτή την εβδομάδα που προκαλεί ακριβώς το ίδιο σε κάποια Windows συστήματα. Το SMB 2.0 είναι η βελτιωμένη έκδοση του παλιού γνωστού command “net use” που χρησιμοποιούμε από το 1985.

Εμφανίστηκε λοιπόν στις 7 Σεπτεμβρίου ένα blog post στο blog του Laurent Gaffie’, το οποίο μπορείτε να διαβάσετε εδώ, ένα νέο vulnerability για το SMB 2.0, το οποίο φαίνεται να επηρεάζει τα Windows Vista και τον Windows Server 2008. Σύμφωνα λοιπόν με τα λεγόμενά του, έχουμε την δυνατότητα να προκαλέσουμε BOD σε αυτά τα λειτουργικά, χρησιμοποιώντας το script σε Python που επίσης παραθέτει αυτούσιο στο blog του.

Εξετάζοντας το θέμα με την λογική, αντιλαμβανόμαστε αρχικά ότι δεν υπάρχει λόγος πανικού, αφού πιστεύω ότι κανένας πια δεν είναι τόσο χαζός ώστε να έχει ανοιχτές στο internet τις θύρες 139 και 445, αλλά και να μην έχει ενεργοποιημένο firewall ακόμα και στα Windows Vista. Παρόλα αυτά, υπάρχουν κάποια ερωτήματα:

1. Γιατί ανακοινώνεται έτσι απλά το vulnerability, χωρίς αυτός που το ανακάλυψε να έχει επικοινωνήσει με την Microsoft, ώστε να βγει το κατάλληλο patch;

2. Η Microsoft απάντησε ως εξής: “Microsoft is investigating new public reports of a possible vulnerability in Microsoft Server Message Block (SMB) implementation…” Να θυμήσω ότι τα Windows 7 και ο Windows Server 2008 R2 δεν επηρεάζονται, που σημαίνει ότι έχει διορθωθεί ήδη αυτό το vulnerability. Γιατί δεν διορθώθηκε και στα Windows Vista;

Έτσι λοιπόν ξαφνικά όλοι είχαν τον κώδικα και άρχισαν να τον δοκιμάζουν στα νέα λειτουργικά (7 και 2008 R2), τα οποία όμως έδειξαν να μην επηρεάζονται. Τι θα κάνουμε εμείς που έχουμε κάποια Windows Vista (εγώ δηλαδή και ο Κλαδάκης και ίσως άλλοι 4 σε όλον τον πλανήτη που μας άρεσαν τα Vista)  και Server 2008;

Μια μικρή αλλαγή στη  registry απενεργοποιεί το SMB 2.0 και αφήνει το SMB 1.0 stack να δουλεύει ανεπηρέαστο:

Μπαίνετε στο HKLM\SYSTEM\CurrentControlSet\Services\Lanmanserver\Parameters key και προσθέτετε μια REG_DWORD εγγραφή με την ονομασία “smb2” και της δίνετε την τιμή 0. Κάνετε restart το Server service  και είστε εντάξει. Σε περίπτωση που θέλετε να επαναφέρετε την registry έτσι όπως ήταν, σβήνετε την εγγραφή και κάνετε πάλι restart το Server service.

Είμαι πολύ περίεργος να δω αν αυτή η ιστορία εξελιχθεί σε internet worm….