Come far crashare Windows (metodo poco ortodosso)

Ciao a tutti! Su richiesta di un lettore del blog, RiKI ha creato il finto virus in AutoIT.

Il “virus” simula una formattazione in stile DOS, ma in realtà l’unico danno che può fare è far prendere un colpo a chi lo utilizza.

Chi lo compila può scegliere due vie: scommentando (togliendo i “;” all’inizio della riga) delle certe righe, succede una cosa, altrimenti ne succede un’altra.

Il codice è tutto commentato e non vado oltre con le spiegazioni, se non come compilare il programma.

Togliendo (o commentando) la riga “HotKeySet(“{esc}”, esci)“, si può far si che l’utente non esce dal programma premendo esc.

Ricordo che nè “RiKI”, nè “itrucid” e nè il network “MyBlog.it” si assumono la responsabilità per l’uso che verrà fatto del presente software.

Come compilare il programma:
1) Installare l’AutoIT Full Installation Pack (vedi lezione AutoIT1)
2) Aprire SciTE script editor
3) Copiare e incollare il codice sorgente (vedi sotto), apportare le volute modifiche, soprattutto verso le ultime righe, dove ci sono due diverse possibilità di utilizzo.
4) Salvare il file tramite File>Save…
5) Aprire Compile Script to .exe dal menù Start, nel primo campo inserire il percorso del file o sceglierlo attraverso il pulsante alla destra del campo. Nel campo sottostante scegliere dove salvare il file e con che nome. Nell’ultimo campo scegliere l’icona (potete scegliere quella bianca presente nella cartella predefinita di AutoIT, o scegliere un file ico creato da voi).
6) Premete Convert e il gioco è fatto.

Ecco il sorgente del programma:

#include <GUIConstants.au3> ; include le costanti per creare le interfaccie grafiche
#include <WindowsConstants.au3> ; come sopra…

; Creo l’interfaccia grafica
GUICreate(“virus”, @DesktopWidth, @DesktopHeight, 0, 0, BitOR($WS_POPUP,$WS_CLIPSIBLINGS)) ; creo la form senza la captionbar (barra del titolo)
GUISetBkColor(0x000000) ; sfondo nero
GUISetState(@SW_SHOW) ; mostra la form
Sleep(1000) ; aspetta 1 secondo (=1000 millesimi)

; @DesktopHeight e @DesktopWidth sono due Macro (v. lezione 1)

; Tutte le funzioni che iniziano con GUI sono funzioni
; che spiegherò in dettaglio nelle prossime lezioni

$font = “Courier New”

GUICtrlCreateLabel(“C:Windows>format c:”, 7, 5, 300) ; setta la scritta
GUICtrlSetFont(-1, 13, 400, “”, $font) ; setta la font
GUICtrlSetColor(-1, 0xFFFFFF) ; setta il colore bianco (0xFFFFFF)
Sleep(2000) ; aspetta 2 secondi

GUICtrlCreateLabel(“Formatting C: Drive. Please, wait…”, 7, 24, 400); setta la scritta
GUICtrlSetFont(-1, 13, 400, “”, $font) ; setta la font
GUICtrlSetColor(-1, 0xFFFFFF) ; setta il colore bianco
Sleep(500) ; sapete già

$percent = GUICtrlCreateLabel(“Completed: 1%”, 7, 43, 400); setta la scritta
GUICtrlSetFont(-1, 13, 400, “”, $font) ; setta la font
GUICtrlSetColor(-1, 0xFFFFFF) ; setta il colore bianco

$n_daeseguire = 15 ; percentuale fino a cui arrivare (settatevela voi come volete)
$n_esec = 1 ; percentuale di partenza (scritta sopra nella label $percent)

While $n_esec < $n_daeseguire; ciclo while che spiegherò più avanti
$n_esec = $n_esec + 1 ; incrementa il numero della percentuale
Sleep(500) ; sapete già…
GUICtrlSetData($percent, “Completed: ” & $n_esec & “%”) ; stampa la nuova percentuale
WEnd ; fine ciclo while

Sleep(2500) ; sapete

GUICtrlCreateLabel(“Fatal Error. System shutdown in progress…”, 7, 62, 550); setta la scritta
GUICtrlSetFont(-1, 13, 400, “”, $font) ; setta la font
GUICtrlSetColor(-1, 0xFFFFFF) ; setta il colore bianco

Sleep(3500) ; scegliete voi il tempo da aspettare, 1000= un secondo, 3500= 3,5 secondi…
; Ora ci sono due vie

;;;;;; INIZIO VIA 1: SCOMMENTA LA PROSSIMA LINEA PER SPEGNERE IL PC
; Shutdown(5) ; forza lo spegnimento (se vuoi riavviare e non spegnere sostituisci il 5 con il 6)
;;;;;; FINE VIA 1

;;;;;; INIZIO VIA 2: SCOMMENTA LE PROSSIME 2 LINEE (MsgBox e Exit) PER MOSTRARE UNA MSGBOX
;;;;;; CHE AVVISA L’UTENTE DELLO SCHERZO E CHE FA TORNARE IL PC ALLO STATO NORMALE
; MsgBox(0, “Scherzetto”, “Eheheheh!! Era uno scherzetto!!”) ; visualizza il msgbox (“Scherzetto” è il titolo, “Eheheh…eccetera” è il testo)
; Exit ; esce dal programma e torna a windows
;;;;;; FINE VIA 2

HotKeySet(“{esc}”, “esci”) ; quando premete esc, la finestra si chiude

Func esci() ; user-function (v. lezione 1) “esci”
Exit ; esci
EndFunc ; fine funzione

While 1
; impedisce che il programma venga chiuso prima del dovuto…
WEnd



Divertitevi!
Come far crashare Windows (metodo poco ortodosso)ultima modifica: 2009-12-27T10:43:00+01:00da itrucid
Reposta per primo quest’articolo

Lascia un commento