Category Archives: Windows

Systemy Microsoft Windows

PowerShell – monitorowanie sprawności dysku twardego

Ciekawy skrypt autorstwa Sama Eastmana ( https://www.linkedin.com/pulse/proactive-disk-health-monitoring-powershell-sam-eastman-sjw2c ), który w połączeniu z wysyłaniem loga na maila w przypadku innego statusu niż Healty, jest bardzo ciekawym rozwiązaniem.

<##################################################################################################
Title: Get-DiskInfo

.SYNOPSIS
    Script will query each connected disk and output statistics
###################################################################################################>

# Variables
$directoryPath = "C:\temp"
$logFilePath   = "C:\temp\DiskHealthCheck.log"
$disks         = Get-PhysicalDisk

# Functions
function Get-TempDirectory {
    # Check if the directory exists
    if (-not (Test-Path -Path $directoryPath -PathType Container)) {
        # If the directory does not exist, create it
        New-Item -Path $directoryPath -ItemType Directory
        Write-Host "Directory created: $directoryPath"
    } else {
        Write-Host "Directory already exists: $directoryPath"
    }
}

function Get-DiskInformation {
    foreach ($disk in $disks) {
        # Get Disk Reliability Statistics
        $reliabilityCounters = Get-StorageReliabilityCounter -PhysicalDisk $disk
        
        $logEntry = @"
-----------------------------------------------------------------------------------------
Disk: $($disk.FriendlyName)
Operational Status: $($disk.OperationalStatus)
Temperature: $($reliabilityCounters.Temperature)°C
Wear Level: $($reliabilityCounters.Wear)
Status: $($disk.HealthStatus)
-----------------------------------------------------------------------------------------
"@

        Add-Content -Path $logFilePath -Value $logEntry
    }
}

# Body
Get-TempDirectory
Get-DiskInformation        

SharpUp – narzędzie do audytu bezpieczeństwa systemu Windows

Narzędzie SharpUP zostało napisane przez Willa Schroedera znanego jako Harmj0y. Służy ono do wykrywania podatności pod kątem eskalacji uprawnień w systemie Windows. Wykrywa błędy w konfiguracji systemu, które mogą prowadzić do przejęcie praw administratora przez nieautoryzowanych użytkowników.
Kod źródłowy narzędzia SharpUp jest otwarty i możne go pobrać ze strony: https://github.com/GhostPack/SharpUp.
Kod można skompilować np. za pomocą Microsoft Visual Studio 2022 Community Edition.
Program należy uruchomić z linii komend poleceniem:

SharpUp.exe audit

Windows Server 2022 sam się wyłącza. Wyłączenie usługi Windows Licensing Monitoring Service

W środowisku testowym jeśli upłynie okres 180 dni od chwili instalacji Windows Server 2022 system poza wyświetleniem na pulpicie komunikatu o konieczność jego aktywacji po godzinie pracy sam się wyłącza. Aby tego uniknąć należy wyłączyć usługę Windows Licensing Monitoring Service (pol. Usługa Menedżera Licencji Systemu Windows).  W tym celu trzeba pobrać narzędzie PsExec.exe a następnie uruchomić je jako administrator. Po uruchomieniu za pośrednictwem PsExec uruchomić cmd.exe.

PsExec.exe -i -s cmd.exe

Po otwarciu cmd.exe należy uruchomić services.exe, znaleźć usługę WLMS i ją wyłączyć. Po restarcie serwera nie będzie już komunikatów na pulpicie a Windows Server 2022 przestanie się sam wyłączać co godzinę.

Edycja pliku instalatora MSI

Do edycji pliku MSI służą narzędzia MSI Tools z pakietu Microsoft SDK (Software Development Kit, do pobrania pod adresem: https://developer.microsoft.com/en-us/windows/downloads/windows-sdk/.
Po instalacji pakietu należy uruchomić instalator właściwego programu w katalogu:  c:\program files (x86)\Windows Kits\10\bin\10.0.22621\x86\Orca-x86_en-us.
Następnie należy uruchomić edytor plików MSI w katalogu: c:\program files (x86)\Orca\Orca.exe
Microsoft poleca po otwarciu pliku MSI stworzenie jego kopii binarnej – niepracowanie na oryginalnym pliku. W tym celu po otwarciu pliku należy wybrać na górnym pasku opcję Transform -> New Transform.
Narzędzie MS MSI Tools służy do edycji istniejących instalatorów MSI.
Inne narzędzie https://wixtoolset.org/ służy do budowy instalatorów MSI.

Windows Server 2022 – zabezpieczenie systemu ( Microsoft Security Baselines Blog )

Microsoft Security Baselines Blog jest to blog mówiący nt. dobrych praktyk dot. zabezpieczeń produktów Microsoft. Jednym z produktów jest Server 2022, którego wybierając z listy użytkownik przechodzi do strony zawierającej materiały szkoleniowe oraz narzędzia mające na celu zabezpieczenie danego systemu, tj. Security Compliance Toolkit and Baselines: https://www.microsoft.com/en-us/download/details.aspx?id=55319

W przypadku zabezpieczenia Windows Server 2022 na uwagę zasługują 3 pozycje:

– Windows Server 2022 Security Baseline (użyteczne pliki: New Settings in Windowa Server 2022.xlsx, Final-MS Security Baseline Windows Server 2022.xlsx – dobre praktyki, ustawienia GPO oraz przykładowe – rekomendowane reguły polis: Windows Server-2022-Security-Baseline-FINAL\Documentation\MSFT-WS2022-FINAL.PolicyRules),

– PolicyAnalyzer – aplikacja, jak sama nazwa wskazuje – analizator / porównywarka polis. Można do programu zaimportować wszystkie reguły (z rozszerzeniem *.PolicyRules) znajdujące się w katalogu PolicyRules (w ściągniętym archiwum wraz z programem) oraz powyższą regułę (tj. MSFT-WS2022-FINAL.PolicyRules) a następnie porównać je z naszymi. Wówczas można zobaczyć jak się mają one do dobrych praktyk – ustawień polis zalecanych przez Microsoft.

– LGPO – Local Group Policy Object Utility – aplikacja obsługiwana wyłącznie z linii komend służąca do eksportu / importu lokalnych polis z Registry Policy (Registry.pol) a także z odpowiednio sformatowanych plików tekstowych „LGPO text” oraz XML – plików programu Policy Analyzer.
Eksport polis można dokonać również bezpośrednio z GPMC.

 

Źródła:
Blog Microsoft nt. zabezpieczeń swoich produktów ( Microsoft Security Baselines Blog ):
https://techcommunity.microsoft.com/t5/microsoft-security-baselines/bg-p/Microsoft-Security-Baselines
https://techcommunity.microsoft.com/t5/windows-server-for-it-pro/active-directory-advanced-threat-hunting-compare-gpos-with-the/m-p/4074177

Active Directory – odblokowanie konta i reset hasła administratora domeny

Aby odblokować i zresetować hasło Administratora należy uruchomić serwer z płyty instalacyjnej Windows Serwer (testowane na 2022) a następnie wejść do linii komend i wykonać poniższe kroki:
1) narzędziem DiskPart należy nadać literę partycji systemowej;

diskpart 
select disk 0
list partition
select partition 3
assign letter c

2) odpowiednio skonfigurować ponowne uruchomienie serwera oraz podmienić plik utilman.exe;

bcdedit /set {bootmgr} displaybootmenu yes
bcdedit /set {bootmgr} timeout 15
c:
cd windows/system32
ren utilman.exe utilman.123
copy cmd.exe utilman.exe

3) Restart serwera. Po restarcie naciśnięcie klawisza F8 i wybranie opcji „Disable Early Launch Anti-Malware Driver”, przy logowaniu należy kliknąć na ikonkę kółeczka znajdującą się w dolnym prawym rogu. Zamiast narzędzia utilman.exe otworzy się cmd.exe – linia komend.

4) W linii komend należy wydać polecenia odblokowujące i zmieniające hasło użytkownikowi Administrator (również administratorowi domenowemu):

net user administrator /active:yes
net user administrator password
net user administrator password /domain