Inventaire logiciel de votre station Windows en PowerShell

Inventaire logiciel de votre station Windows en PowerShellMa station de travail Windows est riche de 18631 binaires (.bin, .com, .exe, .dll, .ocx, .drv, .dll). Sans pare-feu déterminant précisément les programmes autorisés à sortir sur les ports sélectionnés, je ne vois pas comment la sécurité d’un système d’exploitation peut être aujourd’hui assurée. Ce que je dis vaut aussi pour la station Linux !

Le composant .Net

Pour exécuter ce script PowerShell, vous devez disposer au préalable du connecteur MySQL .Net. Je trouve assez catastrophique que MariaDB ne se soit pas donnée la peine de développer son propre connecteur !

La table inventaire.logiciel

Dans MySQL/MariaDB, créez préalablement la base et la table utilisée dans le script. Le format Aria/MyISAM est préférable à InnoDB, qui ne prend pas en charge l’index unique évitant la création de doublons !

CREATE DATABASE inventaire;
USE inventaire;
CREATE TABLE `logiciel` (
 `logiciel_md5` CHAR(32) NOT NULL,
 `logiciel_chemin` VARCHAR(256) NOT NULL,
 `logiciel_creation` DATETIME NOT NULL,
 `logiciel_modification` DATETIME NOT NULL,
 `logiciel_taille` INT(11) NOT NULL,
 `logiciel_editeur` VARCHAR(255) NULL DEFAULT NULL,
 `logiciel_version` VARCHAR(255) NULL DEFAULT NULL,
 `logiciel_description` VARCHAR(255) NULL DEFAULT NULL,
 `logiciel_date` DATETIME NULL DEFAULT CURRENT_TIMESTAMP,
 UNIQUE INDEX `logiciel_uk` (`logiciel_md5`, `logiciel_chemin`)
);

Le script PowerShell d’inventaire logiciel

Il est sur PasteBin, en licence GPL 2.

Clear-Host
# Chargement de l'assembly MySQL
[void][system.reflection.Assembly]::LoadFrom("C:\Program Files (x86)\MySQL\MySQL Connector Net 6.9.9\Assemblies\v4.5\MySql.Data.dll")
Try
{
 # Connexion à la base MySQL
 $strConn="DataSource='127.0.0.1';Database='inventaire';User ID='root';Password='root'"
 $oConn = New-Object MySql.Data.MySqlClient.MySqlConnection
 $oConn.ConnectionString = $strConn
 $oConn.Open()
 # Liste des fichiers exécutables
 $files=Get-ChildItem -Path 'C:\*.*' -ErrorAction SilentlyContinue -Recurse -File|Select FullName,LastWriteTime,Length,VersionInfo,CreationTime |Where {$_.FullName -notmatch '\\(DriverStore|Lastgood|Microsoft\.NET\\Framework(64)?|WinSxS|wsusoffline)\\' -AND $_.FullName -match '\.(bin|com|dll|drv|exe|ocx|sys)$'}
 $sql = New-Object MySql.Data.MySqlClient.MySqlCommand
 $sql.Connection = $oConn
 ForEach($file in $files)
 {
 # Récupération des informations sur les fichiers
 $chemin=$file.FullName.Replace('\','/')
 $creation=Get-Date $file.CreationTime -format 'yyyy-MM-dd HH:mm:ss'
 $modification=Get-Date $file.LastWriteTime -format 'yyyy-MM-dd HH:mm:ss'
 $taille=$file.Length
 $editeur=$file.VersionInfo.CompanyName
 $version=$file.VersionInfo.FileVersion
 $description=$file.VersionInfo.FileDescription
 $md5=Get-FileHash -Algorithm MD5 -path $chemin | select Hash
 # Insertion des données dans la table
 $sql.CommandText = "INSERT INTO logiciel(logiciel_md5,logiciel_chemin,logiciel_creation,logiciel_modification,logiciel_taille,logiciel_editeur,logiciel_version,logiciel_description) VALUES ('$($md5.Hash)','$chemin','$creation','$modification',$taille,'$editeur','$version','$description')"
 Try
 {
 $sql.ExecuteNonQuery()
 }
 Catch
 {
 }
 }
 $sql.Dispose()
 $sql=$null
 $file=$null
 $files=$null
}
Catch [System.Exception]
{
 $e = $_.Exception
 Write-Host $e.Message
 $e=$null
}
Finally
{
 $oConn.Close()
 $oConn.Dispose()
 $oConn=$null
}

Scripting / ,

deneme bonusu veren siteler casino siteleri betdenemebonusu.com bahis siteleri Ev eşyası depolama Depolama Şehirlerarası evden eve nakliyat Evden eve nakliyat Eşya depolama yurtdışına ev taşıma Türkiye'den Almanya'ya ev taşıma zati eşya tasimaciligi uluslararasi zati eşya tasimaciligi eşya depolama şehirler arası nakliyat asansörlü nakliyat greatplay.net güvenilir online bahis siteler 2022 jetbahis Rexbet hovarda mobilbahis güncel adres sartsız Deneme Bonus sekabet maltcasino güncel adres> pinbahis100.com betduman.com olabahis.top سایت شرط بندی shartkade.com 1xbet-mobil.com beykoz evden eve nakliyat ataşehir evden eve nakliyat şişli evden eve nakliyat istanbul evden eve nakliyat
teens porn videos free sex xxx sexy videos