PowerShell
Sobre
Olá! Visitante, reunimos aqui, informações sobre alguns comandos no PowerShell (Microsoft) que podem auxiliar em diversos cenários. Use com moderação e faça testes em ambientes controlados e/ou fora de produção.
Conexões e Arquivos
- Como relacionar informações de path, arquivo com uma conexão, e isso ajuda a solucionar "N" problemas em segurança da informação e redes.
Abra o Powershell em seu sistema e execute o comando abaixo
Get-NetTCPConnection | select CreationTime, RemoteAddress, RemotePort, OwningProcess, State, AppliedSetting, @{Name='Filename' ;Express={(Get-Process -Id $_.owningProcess).Path}} | where {$_.State -like '*Established*'}
- Uso prático, imagine que existe uma determinada suspeita que um sistema Microsoft Windows esteja com algum malware, você pode verificar com este comando qual o arquivo está fazendo a conexão, qual o IP remoto e qual porta está sendo utilizada, vide imagem de exemplo.
Em alguns casos após conectar em VPN através do Software SonicWall Global VPN Client, ou outro cliente de VPN, a internet do equipamento cai drasticamente a velocidade, chegando a ficar com Download abaixo de 1Mb, para solucionar este problema execute como administrador o PowerShell e faça os comandos abaixo:
powershell Get-NetAdapter powershell Get-NetAdapterRsc powershell Disable-NetAdapterRsc -Name Wi-Fi powershell Get-NetAdapterRsc
Após executar os comandos acima, notará que o adaptador de rede WI-FI ficará
De:
Name IPv4Enabled IPv6Enabled IPv4Operational IPv6Operational IPv4FailureReason IPv6FailureR State State eason ---- ----------- ----------- --------------- --------------- ----------------- ------------ Wi-Fi True True False False NDISCompatibility NDISCompa...
Como:
Name IPv4Enabled IPv6Enabled IPv4Operational IPv6Operational IPv4FailureReason IPv6FailureR State State eason ---- ----------- ----------- --------------- --------------- ----------------- ------------ Wi-Fi False False False False NicPropertyDis.. NicPropertyDis..
Listar Hotfix via Windows updates
Em alguns casos, para verificar se uma correção (KB) foi instalada no Sistema, é necessário verificar através do PowerShell para uma analise mais rápida.
get-hotfix| select-object HotFixID,InstalledOn| Sort-Object -Descending -property InstalledOn| format-table -autosize
Verificar Fabricante
Quando for necessário verificar o fabricante, o número de série do equipamento e a versão da BIOS, pode-se verificar estas informações via PowerShell.
gcim -ClassName Win32_BIOS | fl Manufacturer, Name, SerialNumber, Version;
Verificar CPU
Para verificar o modelo do CPU
gcim -ClassName Win32_Processor | fl caption, Name, SocketDesignation;
Verificar disco
Verificar o tamanhos das unidades e/ou discos no sistema.
gcim -ClassName Win32_LogicalDisk | Select -Property DeviceID, DriveType, @{L='FreeSpaceGB';E={"{0:N2}" -f ($_.FreeSpace /1GB)}}, @{L="Capacity";E={"{0:N2}" -f ($_.Size/1GB)}} | fl
Verificar upgrades de Softwares
Para verificar se existe algum software instalado que precisa ser atualizado, pode-se rodar o comando abaixo, o mesmo irá listar os softwares instalados, assim como as versões instaladas e as disponíveis para atualização
winget upgrade
Realizar a atualização
Este processo pode demorar alguns minutos, então mantenha o sistema operacional conectado e funcional.
winget upgrade (NOME-DO-Software)
Ou para atualizar todos
winget upgrade --all
Instalar RSAT
Antigamente era necessário a instalação do RSAT (Ferramentas de Administração de Servidor Remoto) através de um arquivo .msi ou .exe, já em versões mais atuais do Windows é possível fazer a instalação via PowerShell, neste caso basta abrir o PowerShell como administrador e executar o comando abaixo.
Get-WindowsCapability -Name RSAT* -Online | Add-WindowsCapability -Online
Se você desejar verificar o status de instalação de cada ferramenta, digite o comando abaixo. Status (State) Installed (Instalado) – NotPresent (Não instalado).
Get-WindowsCapability -Name RSAT* -Online | Select-Object -Property DisplayName, State