Source
Consider the following file scanning exceptions for your Anti-Virus software where applicable:
NOTE: The %systemroot% is normally the C:\WINDOWS or C:\WINNT directory depending on your OS.
NOTE: the %systemroot% variable will not work as an exclusion for some OSs. So make sure to spell out full path in your exclusion files (GPO or via AntiVirus Server)
1.) %systemroot%\System32\Spool (and all the sub-folders and files)
2.) %systemroot%\SoftwareDistribution\Datastore
Refer to the following article for information:
KB822158 - Virus scanning recommendations for computers that are running Windows Server 2003, Windows 2000, or Windows XP http://support.microsoft.com/kb/822158
3.) Any Network Drives that are mapped.
2011/04/26
2011/04/25
Use PowerShell to Identify Non-Standard Windows Service Accounts
Source:Expert Solution for the 2011 Scripting Games Beginner Event 4
<#
.SYNOPSIS
Identifies services with nonstandard accounts
.DESCRIPTION
Retrieves services that use accounts other than LocalSystem, LocalService or NetworkService
.PARAMETER computername
one or more computernames or IP addresses
you will need local administrator privileges, and the firewall needs to allow access
to enable firewall access, run this command on target machines:
netsh firewall set service type = remoteadmin mode = enable
.EXAMPLE
Get-NonstandardService
lists services with nonstandard accounts on local machine
.EXAMPLE
Get-NonstandardService -computername 10.10.10.33
lists services with nonstandard accounts on remote machine with IP 10.10.10.33
.EXAMPLE
Get-NonstandardService -computername 10.10.10.33, 127.0.0.1, serv12-1, client3
lists services with nonstandard accounts on four machines (including local system)
.LINK
http://www.powershell.com
#>
function Get-NonstandardService {
param(
[String[]]
$computername = '127.0.0.1'
)
# server-side WMI query to minimize network traffic and maximize performance
$wql = 'Select Name, DisplayName, StartName, __Server From Win32_Service WHERE ((StartName != "LocalSystem") and (StartName != "NT Authority\\LocalService") and (StartName != "NT Authority\\NetworkService"))'
# examine all computers submitted:
$computername |
ForEach-Object {
Write-Progress 'examining computer:' $_
# create new object to return information
$rv = New-Object PSObject | Select-Object Computer, Result, Name, DisplayName
$rv.computer = $_
# search for nonstandard services
try {
# always return result as array
$result = @(Get-WmiObject -Query $wql -ComputerName $rv.computer -ErrorAction Stop | Sort-Object DisplayName)
# no results?
if ($result.Count -eq 0) {
# then all services use standard accounts, good:
$rv.Result = 'OK'
$rv
} else {
# return a result set for each nonstandard service
$result | ForEach-Object {
$rv.Computer = $_.__Server
$rv.Name = $_.Name
$rv.DisplayName = $_.DisplayName
$rv.Result = $_.StartName
$rv
}
}
}
catch {
# WMI was unable to retrieve the information
switch ($_) {
# sort out most common errors and return qualified information
{ $_.Exception.ErrorCode -eq 0x800706ba} { $rv.Result = 'WARN: Unavailable (offline, firewall)' }
{ $_.CategoryInfo.Reason -eq 'UnauthorizedAccessException' } { $rv.Result = 'WARN: Access denied' }
# return all other non-common errors
default { $rv.Result = 'WARN: ' + $_.Exception.Message }
}
# return error information
$rv
}
}
}
Subscribe to:
Comments (Atom)