20.11.25. - PRD3- DD - programmu inventarizacija
Praktiskais darbs Nr. 3
Tēma: Windows datorā instalēto programmu inventarizācija
Sasniedzamais rezultāts: izglītojamais spēj ar OS un komandrindas rīkiem savākt pilnu instalēto programmu sarakstu, to strukturēt, identificēt riskus (licencēšana, drošība, novecojušas versijas) un sagatavot pārskatāmu atskaiti ar ieteikumiem.
Uzdevums
Veikt savas Windows darbstacijas instalēto programmu inventarizāciju, izmantojot vismaz četrus dažādus datu avotus (PowerShell, reģistrs, winget, WMI/CIM, u.c.), apvienot rezultātus vienotā tabulā, izcelt riskus un sagatavot iesniedzamo dokumentu ar pierādījumiem.
Uzdevuma izpildes apraksts
Datu iegūšana (obligāti 4 avoti, ieteicams 5–6)
PowerShell – pakotņu saraksts:
Atver Windows Terminal (PowerShell) un izpildi:
Get-Package | Select Name,Version,ProviderName,Source | Export-Csv "$env:USERPROFILE\Desktop\packages_ps.csv" -NoTypeInformation
Reģistrs – “Installed Programs”:
Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* | Select DisplayName,DisplayVersion,Publisher,InstallDate | Export-Csv "$env:USERPROFILE\Desktop\registry_hklm.csv" -NoTypeInformationGet-ItemProperty HKCU:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* | Select DisplayName,DisplayVersion,Publisher,InstallDate | Export-Csv "$env:USERPROFILE\Desktop\registry_hkcu.csv" -NoTypeInformation
Winget – lietotņu saraksts:
winget list --source winget --accept-source-agreements > "$env:USERPROFILE\Desktop\winget.txt"
WMI/CIM – instalētās programmas:
Get-CimInstance Win32_Product | Select Name,Version,Vendor | Export-Csv "$env:USERPROFILE\Desktop\wmi.csv" -NoTypeInformationPiezīme: Win32_Product var būt lēns; izmanto tikai saraksta iegūšanai, ne remediācijai.
Papildu avoti (ja ir):
Microsoft Store: “winget list --source msstore”
Chocolatey:
choco list --local-only --verbose > "$env:USERPROFILE\Desktop\choco.txt"Programmu un līdzekļu (Apps & Features) ekrānuzņēmumi ar redzamiem nosaukumiem/versijām (filtrs: “Sort by Name”).
Datu apstrāde un konsolidācija
Importē CSV/TXT vienā Excel vai LibreOffice Calc darbgrāmatā (atsevišķas lapas katram avotam).
Izveido “Apvienoto” lapu ar šādām kolonnām:
Platforma, Avots (PowerShell/Registry/Winget/WMI/Store/Choco), Nosaukums, Versija, Izdevējs (Publisher), Instalācijas datums, Instalācijas avots (MSI/EXE/Store/Unknown), Potenciālais risks (Jā/Nē), Piezīmes.
Normalizē nosaukumus (piem., “Microsoft Edge” vs “Microsoft Edge Stable”), noņem acīmredzamus dublikātus pēc Nosaukums+Versija+Avots.
Atzīmē trūkstošus Publisher, tukšus InstallDate un neatpazītus avotus (atzīme “Jā” kolonnā “Potenciālais risks” ar aprakstu Piezīmēs).
Riska analīze un izvērtējums
Licencēšana: iezīmē programmas ar nezināmu izdevēju vai ārpus organizācijas politikas (torrent klienti, “keygen”, PUA).
Drošība: iezīmē programmas ar zināmiem riskiem (novecojušas Java/.NET/Flash u.c.), programmas bez auto-update mehānisma vai ar neparastu izcelsmi (Unknown).
Redundance: atzīmē dublējošus rīkus (vairāki PDF lasītāji, vairākas VPN/AV programmas), kas rada konfliktu vai lieku slodzi.
Ieteikumi: norādi darbības (atjaunināt/atinstalēt/aizstāt ar atbalstītu risinājumu), balstoties uz riska kategoriju.
Pierādījumi un noformējums
Ekrānuzņēmumi:
PowerShell komandu izpilde ar redzamu rezultātu.
Apps & Features (Settings → Apps → Installed apps) ar redzamu šķirošanu.
Winget list izvada fragments.
Pievieno eksportētos failus (CSV/TXT) kā pielikumus.
Sagatavo kopsavilkuma tabulu:
Kopējais programmu skaits, % ar trūkstošu Publisher, % ar potenciālu risku, skaits ar novecojušu versiju (ja identificēts).
Iesniegšana
Dokuments: “Programmu_inventarizacija_Windows_vards_uzvards.docx” ar sadaļām:
Ievads un metodika (kādi avoti un kāpēc izvēlēti)
Rezultātu tabula (apvienotā)
Riska analīze (licences, drošība, redundance)
Ieteikumi (tabula ar darbībām un prioritātēm)
Secinājumi
Pielikumi: CSV/TXT eksporti un 3–5 ekrānuzņēmumi.
Iesniegšanas vide: Moodle vai norādītā platforma.
Nepieciešamie materiāli un rīki
Windows 10/11 ar PowerShell, Winget (ja nav, apskatīt App Installer instalāciju), Office/LibreOffice datu apstrādei.
Internets (winget metadatiem), bet darbs izpildāms arī bez tā, izmantojot reģistra/PowerShell avotus.
Laiks
Ilgums: 2 akadēmiskās stundas (80 min) datu vākšanai un apstrādei + 40 min atskaitei (kopā 120 min).
Vērtēšana
Datu pilnīgums (min. 4 avoti, korekti eksporti) – 30 p.
Konsolidācija un normalizācija (vienota tabula, dublikātu apstrāde) – 20 p.
Riska analīze un ieteikumi (argumentēti, lietderīgi) – 30 p.
Noformējums un pierādījumi (ekrānuzņēmumi, pielikumi) – 20 p.
Kopā: 100 p.
Bonus (līdz +10 p.)
PowerShell skripts, kas automātiski savāc visus avotus, apvieno CSV un izceļ “Unknown Publisher”/“Unknown Source” ar atzīmēm.
Papildus sadaļa par programmu atjauninājumu statusu (piem., winget upgrade – uzzīmē sarakstu ar pieejamiem atjauninājumiem).
Parauga PowerShell komandas (izdrukai darba lapā)
Get-Package | Select Name,Version,ProviderName,Source | Export-Csv "$env:USERPROFILE\Desktop\packages_ps.csv" -NoTypeInformationGet-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* | Select DisplayName,DisplayVersion,Publisher,InstallDate | Export-Csv "$env:USERPROFILE\Desktop\registry_hklm.csv" -NoTypeInformationGet-ItemProperty HKCU:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* | Select DisplayName,DisplayVersion,Publisher,InstallDate | Export-Csv "$env:USERPROFILE\Desktop\registry_hkcu.csv" -NoTypeInformationwinget list --source winget --accept-source-agreements > "$env:USERPROFILE\Desktop\winget.txt"Get-CimInstance Win32_Product | Select Name,Version,Vendor | Export-Csv "$env:USERPROFILE\Desktop\wmi.csv" -NoTypeInformation
- 2025. gada 20. November, 07:52