WMIC: Jako mat Windows pod palcom

Download Report

Transcript WMIC: Jako mat Windows pod palcom

WMIC:
Ako mat Windows
pod palcom
Martin Žugec
[email protected]
http://www.supersupport.org
Obsah prednasky
•
•
•
•
•
•
•
•
Buduce trendy
Moznosti WMIC
Zaklady WMIC
WMI Query Language
Vyuzitie WMIC v sieti alias Remoting
Vystup informacii
Unik k plnemu schematu WMI
Moznosti rozsirenia WMIC
Sucasnost vs. buducnost
Attrib.exe
Registry
Regedit.exe
Filesystem
Interpreter
Dsquery.exe
AD
Xcopy.exe
Management stanic
Out of band
•EMS
Automated/preset
•RIS
•Unattended install
GUI interface
•MMC
•Terminal Service
Non-GUI interface
•Console
•Scripting
Non-GUI interface
•WMI&ADSI
Komplexne
skriptovanie
•API
•COM Objects
WMIC!!!
Preset .exe
Jednoduche prikazy
Jednoduche skripty
Preset .vbs
Batch files
WMIC
• WMIC je nastroj, ktory umoznuje pristup k
WMI triedam bez znalosti programovania
Aliasy
• Userfriendly nazvy pre WMI triedy
• Umoznuju jednoduchy pristup k triedam
• Je mozne pouzivat ich metody:
– List
– Call
– Set
– Get
Metoda List
• Zobrazuje preddefinovane sady vlastnosti
• List Full – zobrazi VSETKY vlastnosti
• List Brief – zobrazi najdolezitejsie
vlastnosti
• Defaultne List Full
Process list brief
Metoda Call
•
•
•
•
Vola metody danej triedy
Jedina metoda, ktora spusta nejaku akciu
Vyskytuje sa len u niektorych tried
Nemá defaultnu hodnotu, poskytne
zoznam metod
OS call reboot
Metoda Set
• Nastavuje hodnoty vlastnosti
• Vyskytuje sa len u niektorych tried
• Nemá defaultnu akciu
Registry set ProposedSize=66
Metoda Get
• Vypisuje specificke vlastnosti, jednotlive
vlastnosti sa oddeluju pomocou ciarky
• Defaultnou akciou je vypis vsetkych
vlastnosti, tj. ekvivalent List Full
Service get name, state
Pouzivanie syntaxe
Alias
Metoda
Process Where „Name=‘explorer.exe’
Process list
Call Terminate
Ako sa dostat k informaciam?
•
•
•
•
Standartnym sposobom je globalny prepinac /?
/? ma mody /?:full a /?:brief
/? Berie ako parameter posledny prikaz
Pomocou alias get /? sa zobrazia dostupne
vlastnosti
• Pomocou alias call /? sa zobrazia dostupne
metody
• Pomocou alias set /? sa zobrazia dostupne
vlastnosti, ktore sa daju menit
Process call /?:Full
WQL – WMI Query Language
• Podrobnejsie informacie viz. linky na zaver
• Operatory: LIKE;=;<;>;<=;>= a != (nerovna sa)
• Like – umoznuje pouzivat zastupne znaky
–
–
–
–
% definuje lubovolny počet lubovolnych znakov
_ definuje lubovolny jeden znak
[] definuje mnozinu znakov (napr. [abc], prip. [a-c])
^ definuje cokolvek ine nez mnozinu znakov (napr.
[^abc])
UserAccount WHERE “name like ‘%dministrator’ AND domain=‘DOMENA’” get SID
Mody WMIC
OFFLINE
Wmic process get game
ONLINE
wmic:root\cli>process get name
Vystup informacii
• Export do excelu(csv), html, xml…
• Moznost vystupu na obrazovku, do suboru
a do clipboardu
• Moznost pouzitia xsl suborov pre
transformaciu
• Globalne prepinace /output, /append a
/record
/output:c:\test.html Process list brief /format:htable
Remoting
• Pomocou globalneho prepinaca /node
– Zadanie jednotlivych uzlov rucne
– Zadanie jednotlivych uzlov vstupom zo suboru
• Prepinac /failfast – overenie dostupnosti
pocitaca
• Dsquery * forestroot –scope subtree –filter
objectcategory=computer –attr name -1 >
computers.txt
/node:PC1,PC2 process get name
Unik k WMI
• Pouzitie Class a Path pre unik k WMI
• Pouzitie ineho namespace vdaka
globalnemu prepinacu /namespace
wmic /namespace:\\root\default class stdregprov call /?
Rozsirenie WMIC
• Moznost definovania vlastneho
vystupneho formatu pomocou xsl
• Moznost definovania novych aliasov
pomocou editacie mof suborov
Chyby!
• Z bezpecnostnych dovodov nie je mozne
spustit na vzdialenom pocitaci interaktivne
aplikaciu
• Zle zpracovanie specialnych znakov(\)
• Zahltenie (datafile, fsdir, softwareelement)
• Absencia dolezitych aliasov (registry)
• Velmi zla dokumentacia
• Zly feedback pre batch ulohy
Tipy
• Pri filesysteme (FSDir, Datafile) sa pouzivaju
dve \\, nie jedno
• Miesto podmienok v ( “ ” ) sa pouziva “ ’ ’ ”, riesi
problemy pri offline mode
• Pri get a list sa moze pouzivat /every a /repeat
• Spracovanie batch –
– Wmic process get name /value|find /c "Name“>test.txt
– Set /p count=<test.txt
Zaujimave linky
•
•
•
•
•
•
WMI CORE pre 9x a NT
Uvedenie WMIC
WMI Administrative tools
WMIC na Microsofte
Dokumentacia ku WMI Query Language
Priklady pouzitia
Ako funguje WMIC?
Alias schema
WMIC engine
XML DOM
WMI
Output
Providers