Avast - Gestire Aggiornamenti e scansioni da riga di comando
Oltre che dall’interfaccia grafica d’utente (UI) di Avast, in Avast Business Antivirus e Small Office Protection è possibile operare da riga di comando (CLI=Command Line Interface) relativamente ad operazioni come l’esecuzione degli aggiornamenti e delle scansioni; ciò è utile quando bisogna lavorare a sistema operativo non completamente avviato o con una configurazione minima, ovvero in caso si verifichino anomalie tali da non consentire il corretto utilizzo dell’interfaccia utente tradizionale.
In questo tutorial verranno descritte le modalità di update e scansione per sistemi operativi Windows e MacOS.
Updater/Scanner da riga di comando per Windows
Di seguito sono riportati i percorsi delle cartelle per l'utilità di aggiornamento/scanner della riga di comando di Avast e i file di report.
Posizione del file .exe predefinito:
%ProgramFiles%\AVAST Software\Avast
Posizione predefinita del Report File:
%ProgramData%\AVAST Software\Avast\report
ashUpd.exe (aggiornamenti):
Comando Update delle definizioni dei Virus:
ashUpd.exe vps [/autoreboot] [/help]
Comando Update del programma Antivirus:
ashUpd.exe program [/autoreboot] [/help]
Parametri extra
/autoreboot: reboots the computer after the update, if necessary
/help: displays a help screen
ashCmd.exe (scansioni)
- (area name): è l’area di scansione per il test dei virus; il comando può contenere più aree, ossia ambiti di applicazione della scansione (hard disk, cartelle ecc.).
- /# o --remote: dischi remoti
- /* o --local: dischi rigidi locali
- /?, /ho --help: visualizza una breve descrizione di tutti i parametri
- /@ = expect string or --task = attendi stringa: il parametro contiene il nome dell'attività che verrà avviata; gli altri parametri vengono ignorati
- /_ o --console: l'applicazione sarà pronta per STDIN/STDOUT
- /a o --testall: verifica di tutti i file
- /co --testfull: scansiona interi file
- /d o --dontpanic: non passa alla 'modalità panic' quando viene rilevato un virus
- /e = expect byte or --heuristics = aspetta byte: imposta la sensibilità euristica, dove 0 è non euristica e 100 è la sensibilità massima
- /f = expect string or --fileactions = attende stringa: =[BPSW] configurazione aggiuntiva per le azioni sui file infetti; i parametri fra parentesi quadra sono uno o più tra:
- B: consente azioni ritardate (dopo il riavvio) per i file bloccati;
- P: se un file non può essere rimosso da un archivio, prova invece a rimuovere i suoi genitori;
- S: non rimuove i riferimenti di avvio automatico associati durante la rimozione di un file;
- W: quando viene trovato un file infetto in un archivio, eseguire l'azione con l'intero archivio, non solo il file all'interno.
- /g = expect a byte or --checkgenuine = aspetta un byte: =[0|1] controlla le firme digitali dei file infetti (e ignora quelli originali)
- /i o --ignoretype: ignora i set di virus
- /j o --paging: paging delle righe se il programma non è in modalità STDOUT (parametro /_)
- /m o --boot: prova i settori di avvio e l'intera memoria operativa
- /p = expect byte or --continue = attendi byte: il programma non attende l'input dell'utente (/p); azione automatica con file infetto (/p=[01234])
0: correggi automaticamente
1: elimina file
2: passa al petto
3: riparazione
4: fermarsi quando viene rilevato un virus
- /q o --stopclean: fermati sui file puliti e aspetta l'input dell'utente
/r = expect string o --report = attendi stringa: =[*~][file] crea un file di report. * include i file Ok, ~ include i file saltati
/s o --soundoff: nessun suono
/t = expect a string or --archivetype = aspetta una stringa: =[JZIMXRSTGCBWOEQHFVKPY7D6U4123AN]; l'opzione predefinita è /t=XSW2
- /u = expect string or --sendmessage = attendi stringa: =(indirizzo) invia un messaggio sul virus trovato all'indirizzo selezionato
/w = attendi stringa o --exclude = attendi stringa: =(maschera) esclude file/cartelle specifici dalla scansione (caratteri jolly accettati)
/x = Expect string o --virustypes = Expect String: =[P] rileva tipi di malware specifici che non vengono rilevati per impostazione predefinita:
P: PUP (programmi potenzialmente indesiderati)
Per quanto riguarda i parametri archivetype ossia i tipi di archivio del comando /t expect a string or –archivetype, ogni lettera indica un formato di compressione, come esposto qui di seguito:
- J: ARJ
- Z: ZIP
- I: MIME
- M: MAPI
- X: DosExec
- R: RAR
- S: Streams
- T: TAR
- G: GZ
- C: CAB
- B: BZIP2
- W: WinExec
- O: ZOO
- E: ACE
- Q: ARC
- H: LHA
- F: TNEF
- V: CPIO
- K: CHM
- P: RPM
- Y: ISO
- 7: 7ZIP
- D: DBX
- 6: SIS
- U: OLE
- 4: Mac
- 1: Installer
- 2: Dropper
- 3: Emulator
- A: tutti
- N: nessuno
Return code
Avast supporta e utilizza return code (codici di ritorno) sia interni che di Microsoft.
I codici interni ad Avast sono i seguenti:
È inoltre possibile trovare return code corrispondenti a quelli descritti sul sito del supporto Avast, al link web https://businesshelp.avast.com/Content/Products/General_Help/LogLocations/AvastErrorCodes.htm.
Invece i codici Microsoft possono essere trovati alla pagina di supporto Microsoft, al link https://docs.microsoft.com/en-gb/windows/win32/debug/system-error-codes.
Esempio di script batch Avast
Sulla base di quanto esposto, è possibile vedere un esempio di file batch composto da istruzioni a riga di comando, che si possono far eseguire al computer per operare una scansione antivirus opportunamente configurata.
Questo esempio permette solo di scansionare le aree comuni, alla ricerca di infezioni.
- @Echo Off
- CD /D "%ProgramFiles%\AVAST Software\Avast"
- ashUpd VPS
- ashCmd "%SystemDrive%\Users\*" "%WinDir%\*" /e=50 /f=B /m /p=0 /s /r="%ProgramData%\AVAST Software\Avast\report\DefaultScan.txt"
- "%WinDir%\System32\ShutDown.exe" /r /f /t 60 /c "Restarting computer in 1 (one) minute! Please save all work immediately!"
- Exit
- La riga (2) modifica la directory in %ProgramFiles%\AVAST Software\Avast.
- La riga (3) verifica gli aggiornamenti delle definizioni dei virus (operazione altamente consigliata prima di avviare ogni scansione).
- La riga (4) esegue una scansione predefinita (file eseguibili e documenti) solo sui profili degli utenti e sulle cartelle di Windows ed esegue anche la scansione del settore di avvio e della memoria; nella stringa i parametri impostano che:
- la sensibilità euristica sia su media (normale);
- Avast tenti di riparare automaticamente i file infetti, inclusi i file bloccati dopo il riavvio;
- sia disattivato l’avviso acustico;
- venga creato il file di rapporto %ProgramData%\AVAST Software\Avast\report\DefaultScan.txt.
- La riga (5) riavvia il dispositivo dopo la scansione ed esce dallo script batch.
Scanner da riga di comando (MacOS)
Analogamente a quanto descritto per la riga di comando di Windows, potete utilizzare i comandi del terminale per scansionare i vostri dispositivi MacOS con Avast Business Antivirus o Small Office Protection.
Percorso:
/Applications/Avast.app/Contents/Backend/utils/scan -h
Esempi di utilizzo:
/Applications/Avast.app/Contents/Backend/utils/scan [-e PATH] [-l LEVEL] [-abfipux] [-t TYPE] [PATH]...
/Applications/Avast.app/Contents/Backend/utils/scan [-a] -U [URL]...
/Applications/Avast.app/Contents/Backend/utils/scan -V
/Applications/Avast.app/Contents/Backend/utils/scan -h | -v
Scansioni
Negli esempi di comando da terminale, i parametri di scansione hanno i seguenti significati:
- -h: stampa brevi informazioni sull'utilizzo ed esce
- -v: stampa la versione del programma ed esce
- -U: controlla gli URL
- -V: stampa la versione delle definizioni dei virus (VPS) ed esce
- -e PATH: Esclude PATH dalla scansione. Può essere specificato più volte
- -a
senza -t: stampa tutti i file scansionati, non solo infetti
abbinato a -t: oltre all'infezione, stampa anche altri file scansionati casualmente, in modo da poter vedere i progressi
- -b: segnala le decompression bomb come infezioni (non è compatibile con il parametro -t)
- -f: Scansiona file completi
- -p: stampa il contenuto dell'archivio
- -u: Segnala programmi potenzialmente indesiderati (PUP)
- -l LEVEL: imposta il livello euristico su LEVEL (0-100)
- -x: non estrae archivi
- -t TYPE: esegue una delle scansioni i cui report possono essere visualizzati in seguito nella GUI:
FULL: scansione completa del sistema; non specificare PATH
CUSTOM: scansione di PATH personalizzati
SMART: scansione intelligente; non può essere eseguito da root. Non specificare PATH
Stato di uscita
0: non sono state rilevate infezioni
1: è stato trovato un file infetto
2: si è verificato un errore