PATCHING: Microsoft Patching

Attention: open in a new window. PDFPrintE-mail

Download Txt Download PS Download PS Come patchare i sistemi Microsoft in particolare W2000

 

PATCHING DEI SISTEMI MICROSOFT


Furbus


Table of Contents



1) PATCHING DEI SISTEMI MICROSOFT


1) PATCHING DEI SISTEMI MICROSOFT

1.1 CHE COS'È IL PATCHING

Il patching di un sistema operativo consiste letteralmente nel rattoppare i buchi che, col passare del tempo, vengono individuati e pubblicati sui siti Internet specializzati. Per far ciò, l'amministratore di sistema deve installare le varie hotfix (o patch) prelevandole direttamente dal sito Microsoft che curano una particolare vulnerabilità del server, dall'accesso non autorizzato al sistema alla saturazione delle risorse e così via. Nel discorso del patching rientra anche l'applicazione della Service Pack la quale altro non è che l'insieme delle patch o hotfix che vengono rilasciate in un dato periodo. Se pensate che ad agosto del 2002 è uscita la Service Pack 3 per Windows 2000, allora in media si può pensare che sia uscita una service pack ogni 10-11 mesi dall'introduzione del nuovo sistema operativo Microsoft. Tra un rilascio e il successivo, Microsoft pubblica decine e decine di patch che alla fine vengono inglobate nella pack successiva; infatti, la Service Pack 3 è cumulativa, include tutte le precedenti release.

1.2 QUANDO PATCHARE IL SERVER OVVERO HOTFIX VS SERVICE PACK

Per definizione hotfix significa fix "hot" cioè appena uscita, urgente e che andrebbe installata immediatamente. Ovviamente, bisogna valutare bene se sia il caso di installarla o meno. Faccio un esempio, se abbiamo installato le estensioni di FrontPage sul nostro webserver, dovremmo essere al corrente dell'uscita di una hotfix che cura il problema dello "Smart HTML interpreter" incluso proprio nelle estensioni di FrontPage. Non è detto, però, che tali estensioni vengano effettivamente utilizzate dal webmaster, in quanto egli potrebbe usare altri strumenti per rendere dinamiche le pagine web. In questo caso, è saggio disinstallare le estensioni di FrontPage piuttosto che applicare l'hotfix. Questa è una regola che, ove possibile, andrebbe sempre seguita.
E' chiaro che molte patch, purtroppo, vanno comunque installate e allora è bene non catapultarsi nel patching ma fermarsi a ragionare: applico immediatamente l'ultima patch uscita oppure attendo che esca la nuova service pack? Non è un quesito banale, rispondere correttamente permette di risparmiare tempo dal un lato e correre meno rischi dall'altro. Bisogna fare un'analisi delle hotfix mancanti, della loro criticità e della data di uscita della nuova service pack.
Solo dopo un'attenta analisi che tenga conto di questi tre fattori, si potrà fare la scelta giusta! Pensate se gli amministratori che installano 2 o 3 hot fix appena uscite su tutti i loro server e che magari dopo qualche mese installano l'ultima service pack si accorgono che quelle hotfix non erano poi così indispensabili; un doppio lavoro, che potevano risparmiarsi. Inoltre è capitato più volte in passato che alcune hotfix rilasciate frettolosamente il giorno x, siano state poi aggiornate da Microsoft una settimana dopo la prima release!!! Le hotfix incluse nella service pack sono invece ampiamente testate da Microsoft, più di quanto non siano le stesse hotfix uscite singolarmente in precedenza. E' sicuramente meno rischioso installare la service pack (che include anche centinaia di hotfix) piuttosto che applicare una decina di hotfix appena uscite dal laboratorio di Microsoft.
Quindi il consiglio è che bisogna cercare di non farsi prendere dalla foga di installare immediatamente tutte le hotfix che escono ma solo quelle che veramente hanno una elevata criticità.

NB: l'installazione della SP3 di Windows 2000 cancella le voci di installazione delle hotfix che essa include nell'applet Add remove Programs del pannello di controllo di Windows; installa il servizio Automatic Update che consiglio di stoppare e mettere in manual e l'applet Automaci Update nel pannello di controllo (da disabilitare anch'esso).

1.3 STRUMENTI UTILI

- Individuare le pacth mancanti nel sistema
Il tool gratuito Microsoft Baseline Security Analizer scaricabile da www.microsoft.com consente di individuare tutte le patch mancanti in uno o più sistemi. Dopo averlo scaricato, lanciare il setup, nel menu principale si può specificare l'IP o il nome del server da scansire oppure si può fornire un range di indirizzi IP (es. da 192.168.0.10 a 192.168.0.254) relativo alle macchine da scansire. Il programma, grazie ad un database sempre aggiornato che scarica dal sito Microsoft (che include l'elenco di tutte le patch uscite fino al momento), è in grado di verificare la presenza delle patch e di fornire in output l'elenco delle patch mancanti con tanto di link al supporto Microsoft, molto utile per leggere e capire veolocemente la criticità della falla.
Per verificare invece quali patch sono presenti sul sistema, oltre che al pannello di controllo si può ricorrere al programma da riga di comando qfecheck, scaricabile sempre dal sito del produttore.

- Legare insieme le hotfix da installare
In genere, ogni hotfix dopo essere installata richiede il reboot della macchina e potrebbe essere davvero triste installare 10 hotfix con i relativi 10 reboot. Per fortuna Microsoft ci viene incontro con il programma qchain.exe che ci consente di installare più patch in successione ma facendo un solo reboot, come per la service pack. E' sufficiente creare un file .BAT con il richiamo a tutte le patch da installare disponibili su una cartella condivisa in rete (che chiameremo container) che contiene anche il programma qchain.exe e shutdown.exe. 
Se si installano signolarmente le varie patch, è obbligatorio riavviare la macchina dopo ogni installazione. Se le patch da applicare sono molte, allora la perdita di tempo è notevole. In casi come questo è meglio predisporre un task automatico che richiama le patch in successione, le installa e riavvia la macchina alla pressione di un tasto. Inoltre, Microsoft sconsiglia di installare manualmente più patch in successione e riavviare alla fine, in questo modo si rischia di arrecare danni al server. Per fare questo è stata sviluppata l'utility qchain che lega tra loro le hotfix permettendo appunto un solo reboot.

1.4 ESEMPIO PRATICO DI APPLICAZIONE MULTIPLA DELLE PACTH CON UN SOLO RIAVVIO

Iniziamo:
- Creare una cartella condivisa sul server con IP 192.168.0.100 chiamata container con permessi di lettura al gruppo Everyone. 
- Copiarci dentro tutte le hotfix che si sono scaricate dal sito Microsoft, il programma qchain.exe e lo shutdown.exe
- Creare il file Patch.BAT con il contenuto che segue. Ogni riga contiene un commento che descrive la patch e il comando che la esegue. Notare che le opzioni -z e -m forzano il server a NON rebootare ogniqualvolta viene installata una patch, infatti se questi paramentri vengono omessi, dopo l'installazione della prima hotfix appare la finestra di reboot che ovviamente interrompe il processo automatico. Il reboot del server avviene una sola volta alla fine del batch, mediante il comando shutdown.exe che peraltro è preceduto dal comando pause.exe che richiede la pressione di un tasto per continuare, cioè per rebootare. Ovviamente nella cartella condivisa container devono essere presenti tutte le patch elencate sotto.

REM echo off 
setlocal 
set PATHTOFIXES=\\192.168.0.100\container

rem Q319733 - MS02-018 Cumulative Patch for Internet Information Services
%PATHTOFIXES%\Q319733_W2K_SP3_X86_EN -z -m

rem MS02-013 04 March 2002 Cumulative VM Update
%PATHTOFIXES%\Q300845_W2K_SP3_X86_EN -z -m

rem Q311967 - MS02-017 Unchecked Buffer in the Multiple UNC Provider
%PATHTOFIXES%\Q311967_W2K_SP3_X86_EN -z -m

rem Q313829 - MS02-014 Unchecked Buffer in Windows Shell Could Lead to Code Execution
%PATHTOFIXES%\Q313829_W2K_SP3_X86_EN -z -m

rem Q314147 - MS02-006 An Unchecked Buffer in the SNMP Service May Allow Code to Run
%PATHTOFIXES%\Q314147_W2K_SP3_X86_EN -z -m

rem Q320206 - MS02-024 Authentication Flaw in Windows Debugger Can Cause Elevated Privileges
%PATHTOFIXES%\Q320206_W2K_SP4_X86_EN -z -m

rem Q318138 - MS02-029 Unchecked Buffer in Remote Access Service Phonebook Allows Code to Run
%PATHTOFIXES%\Q318138_W2K_SP3_X86_EN -z -m 

rem Q321232 - MS02-023 May 15, 2002, Cumulative Patch for Internet Explorer
rem *** Versione 6 ***
rem %PATHTOFIXES%\q321232_IE6 /q:a /r:n

%PATHTOFIXES%\qchain.exe c:\qchain_rep.txt
pause
%PATHTOFIXES%\shutdown /L /R /T:0

A questo punto basta loggarsi sul server che deve essere patchato, aprire la cartella condivisa sul server remoto e lanciare il file Patch.bat che inizia a installare le patch, una ad una (senza chiedere di riavviare), arriva al comando qchain.exe che le lega assieme a livello di registry e crea un file di report in C:, fa partire il comando pause che attende la pressione di un tasto dopo di che fa ripartire la macchina con il comando shutdown.

1.5 NEWSLETTER DI MICROSOFT

Questo servizio avvisa in tempo reale dell'uscita di una nuova patch e fornisce il link per visionare l'articolo che la descrive e per scaricare l'hotfix relativa; lo consiglio caldamente a tutti gli amministratori.Per iscriversi al Microsoft Securiry Bullettin, andare sul sito del produttore.

Links al software impiegato
- qchain.exe http://www.microsoft.com/downloads/release.asp?ReleaseID=29821
- shutdown.exe è disponibile nel Resource Kit di Windows NT/2000 (http://support.microsoft.com/default.aspx?scid=kb;en-us;Q317371)