32Steps

advertisement
32 Steps to PC Security
Taking the following steps will repair all of the major flaws known to exist in Microsoft Windows operating
systems. Unlike signature-based protection, these repairs will fix the problem, so that all attacks capitalizing
on a specific vulnerability are stopped, not just attacks with known signatures.
Today’s security solutions mix firewalls, anti-virus software, patches, detectors, host and network intrusion
prevention and all manor of encryption to achieve a high level of security. This layered approach has proven
to be the only viable solution to Internet connected computing. Unfortunately, this approach creates a great
deal of complexity. Is your firewall configured properly? Is your anti-virus software up to date? Do you have
the latest service pack for your operating system? Taking the following steps will help to keep your computer
secure even if other security measures fail.
The last four steps listed below require the Samurai application, and all of the steps below can be
automatically performed by the Samurai application. If you want to avoid the possibility of corrupting your
registry, and want the ability to undo any security setting, I suggest using Samurai rather than performing
these steps manually.
Step 1
Disable known insecure ActiveX controls.
This step disables the use of insecure ActiveX controls. The registry key
“HKLM\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility” must be
updated with the GUID’s of known insecure controls that do not affect normal
operation when disabled. The GUIDs are:
// ADODB control
{00000566-0000-0010-8000-00AA006D2EA4}
// Shell.Application
{13709620-C279-11CE-A49E-444553540000}
// AnchorClick DHTML Behavior
{8856F961-340A-11D0-A96B-00C04FD705A2}
// Image Control 1.0 (uses asycpict.dll)
{D4A97620-8E8F-11CF-93CD-00AA00C08FDF}
// DHTML Editing Control
{2D360201-FFF5-11D1-8D03-00A0C959BC0A}
// JView Profiler
{03D9F3F2-B0E3-11D2-B081-006008039BF0}
// Microsoft preloader
{16E349E0-702C-11CF-A3A9-00A0C9034920}
REFERENCES:
How to stop an ActiveX control http://support.microsoft.com/kb/240797
ADODB Control http://support.microsoft.com/default.aspx?kbid=870669
Shell Application http://www.windowsitpro.com/Article/ArticleID/43261/43261.html
AnchorClick DHTML Behavior https://lists.aas.duke.edu/pipermail/ntgroup/2000September/000013.html
Image Control http://cert.uni-stuttgart.de/archive/bugtraq/2004/10/msg00143.html
DHTML Edit Control http://www.kb.cert.org/vuls/id/39965
JView Profiler http://www.microsoft.com/technet/security/Bulletin/MS05-037.mspx
Microsoft Preloader http://support.microsoft.com/default.aspx?scid=kb;enus;231452&sd=tech
Step 2
Disable the AIM URL protocol handler.
This step prevents the use of the AIM URL protocol by replacing the insecure
ActiveX GUID with a harmless substitute, in this case the HTML Help GUID is
used. The AIM URL protocol is not required for normal operation and does not
affect AOL Instant Messaging.
The registry key is “HKCR\PROTOCOLS\Handler\aim”.
The registry value is “CLSID”.
The registry data should be changed to 3050F406-98B5-11CF-BB82-00AA00BDCE0B
REFERENCE:
AOL Instant Messenger Buffer Overflow
http://www.governmentsecurity.org/archive/t10639.html
Step 3
Prevent anonymous sessions.
This step prevents the use of anonymous sessions by setting the registry value
“HKLM\System\CurrentControlSet\Control\Lsa\restrictanonymous” to true. This
setting will not become active until the machine is rebooted.
REFERENCE:
Null Session Vulnerability
http://msdn.microsoft.com/library/default.asp?url=/library/enus/xpehelp/html/xeconreducenullsessionvulnerability.asp
Step 4
Disable automatic file open from explorer.
This step prevents Explorer from opening files without first prompting the user.
This is accomplished by masking all auto open bits in EditFlags values of
registry keys located in:
HKLM\Software\Classes,
HKLM\Software\Classes\Shell\Open,
HKLM\Software\Classes\CLSID,
HKCU\Software\Classes,
HKCU\Software\Classes\Shell\Open
HKCU\Software\Classes\CLSID.
The Automatic Open bit is the first bit (0x01) so mask with 0xfe.
REFERENCE:
Microsoft Windows XP Registry Guide
http://www.microsoft.com/mspress/books/index/6232.asp
Step 5
Stop the Background Intelligent Transfer Service.
This step stops the Background Intelligent Transfer Service. This service is not
required for normal operation and can be abused to allow full control of a host
machine from a remote computer. If the service is stopped, features such as
Windows Update, and MSN Explorer will be unable to automatically download
programs and other information. If this service is disabled, any services that
explicitly depend on it may fail to transfer files if they do not have a fail
safe mechanism to transfer files directly through IE in case BITS has been
disabled.
This service must be running to perform Windows updates.
REFERENCE:
Background Intelligent Transfer Service
http://msdn.microsoft.com/library/default.asp?url=/library/enus/bits/bits/bits_start_page.asp
Step 6
Disable dangerous URL protocols.
This step disables the use of insecure URL types "ms-its”, "ms-itss", "its",
"mk" and "local" by removing the type entries from the
“HKLM\Software\Classes\Protocols\Handler” and “HKCR\Protocols\Handler” registry
keys. These URL types are used in Cross-Domain Scripting Exploits.
REFERENCES:
Outlook Express Vulnerability http://www.risksecure.com/bugarticle/12")
HTML Help Vulnerability http://msmvps.com/donna/archive/2004/04/09/4818.aspx
Step 7
Prevent Denial of Service attacks.
This step helps to prevent “SYN Flood” and “Path MTU” Attacks from disabling
TCP/IP by setting the "SynAttackProtect" and “EnablePMTUDiscovery” values of the
"HKLM\SYSTEM\CurrentControlSet\Services\TcpIp\Parameters" registry key. The
SynAttackProtect value is set to 2, which adds additional delays to connection
indications and allows TCP connection requests to timeout quickly when a SYN
attack is in progress. The EnablePMTUDiscovery value is set to 0 (disabled),
which prevents the Path Maximum Transmission Unit from being set low enough to
disrupt TCP/IP.
REFERENCE:
How to harden the TCP/IP stack
http://support.microsoft.com/default.aspx?scid=kb;en-us;Q315669&sd=tech
Step 8
Disable insecure job icon handlers.
This step disables dynamic icon handlers for (.job) JobObject files by removing
the "IconHandler" keys from "HKCR\JobObject\shellex" and
"HKLM\SOFTWARE\Classes\JobObject\shellex". Dynamic job icon handlers are not
required for normal operation and can be abused to allow full control of a host
machine from a remote computer.
REFERENCE:
Microsoft Security Bulletin MS04-022
https://www.microsoft.com/technet/security/bulletin/MS04-022.mspx
Step 9
Set and secure "My Computer" zone.
This step secures “My Computer Zone” by resetting the values of the registry key
“SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\0”. These
special settings prevent many vulnerabilities including MS05-001, MS05-008 and
MS05-014. The settings are:
1001
1004
1200
Download signed ActiveX controls Disable
Download unsigned ActiveX controls Disable
Run ActiveX controls and plug-ins Allow
1201
1400
1402
1405
1406
1407
1601
1604
1605
1606
1607
1608
1609
1800
1802
1803
1804
1E05
Initialize and script ActiveX controls not marked as safe Disable
Active Scripting Allow
Scripting of Java applets Disable
Script ActiveX controls marked as safe for scripting Allow
Access data sources across domains Disable
Allow paste operations via script Disable
Submit non-encrypted form data Disable
Font Download Disable
Run Java Disable
User Data persistence Disable
Navigate sub-frames across different domains Disable
Allow META REFRESH Disable
Display mixed content Disable
Installation of desktop items Disable
Drag and drop or copy and paste of files Allow
File Download Disable
Launching programs and files in an IFRAME Disable
Software channel permissions 196608
REFERENCES:
How to strengthen the Local Machine Zone
http://support.microsoft.com/kb/833633/EN-US/
Introduction to URL Security Zones
http://msdn.net/library/default.asp?url=/workshop/security/szone/overview/overvi
ew.asp
Step 10
Disable dangerous .grp file conversions.
This step disables the insecure association between “.grp” files and
“MSProgramGroup” by deleting both registry keys from HKCR.
REFERENCES:
Vulnerability in Windows http://www.derkeiler.com/Mailing-Lists/Securiteam/200410/0041.html ")
Common File Extensions http://www.theoreticalreality.com/html/extensions.html
Step 11
Disable the Guest Account.
This step disables the guest account by removing account registry keys “V” and
“F” from “SAM\SAM\Domains\Account\Users\000001F5”. The guest account is not
required for normal operation and can be used by privilege escalation exploits
to gain full administrative control of a machine.
REFERENCES:
Delete Windows Guest Account http://www.derkeiler.com/MailingLists/securityfocus/focus-ms/2001-10/0215.html
Hide/Delete the Guest Account
http://www.winguides.com/forums/showflat.php?Cat=&Board=brdNewTweaks&Number=7003
9&page=0&view=collapsed&sb=6&part=
Step 12
Disable the HTML Application MIME type.
This step disables the HTML application type by removing the “application/hta”
registry key from both “HKCR\MIME\Database\Content Type” and
“HKLM\SOFTWARE\Classes\MIME\Database\Content Type”.
REFERENCES:
Introduction to HTML Applications
http://msdn.microsoft.com/library/default.asp?url=/workshop/author/hta/overview/
htaoverview.asp
Application/HTA Vulnerability http://www.kb.cert.org/vuls/id/865940
Step 13
Secure HTTP configuration parameters.
This step adjusts registry values under the “HKLM\
System\CurrentControlSet\Services\\HTTP\Parameters” key to secure HTTP from many
common vulnerabilities. The settings are:
"AllowRestrictedChars" 0
"EnableNonUTF8" 1
"FavorUTF8" 1
"MaxConnections" 0x7fffffff
"MaxEndpoints" 0
"MaxFieldLength" 16384
"MaxRequestBytes" 16384
"PercentUAllowed" 1
"UrlSegmentMaxCount" 255
"UriEnableCache" 1
"UriMaxUriBytes" 262144
"UriScavengerPeriod" 120
"UrlSegmentMaxLength" 260
REFERENCES:
Registry Settings for IIS http://support.microsoft.com/?kbid=820129
IIS 6.0 Security http://www.securityfocus.com/infocus/1765
Step 14
Stop the Windows Indexing Service.
This step stops the Windows Indexing Service. This service is not required for
normal operation and can be abused to allow full control of a host machine from
a remote computer.
REFERENCES:
Indexing Service
http://www.microsoft.com/resources/documentation/Windows/XP/all/reskit/enus/Default.asp?url=/resources/documentation/Windows/XP/all/reskit/enus/prkc_fil_gglv.asp
Indexing Service Buffer Overflow http://secunia.com/advisories/13802/
Microsoft Security Bulletin MS05-003
http://www.microsoft.com/technet/security/bulletin/MS05-003.mspx
Step 15
Disable null session License Logging.
This step disables insecure nullSession license logging by removing "LLSRPC"
from the “NullSessionPipes” value of the
“HKLM\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters“ registry key.
REFERENCE:
Microsoft Security Bulletin MS05-010
http://www.microsoft.com/technet/security/bulletin/MS05-010.mspx
Step 16
Prevent LSASS (Sasser based) exploits.
This step repairs a well-known LSASS vulnerability by setting the LSASS
dcpromo.log file to “read only”. The dcpromo.log file can be found in the system
directory under the “debug” directory.
REFERENCES:
How to prevent a Sasser infection
http://www.microsoft.com/cze/security/incident/sasser_script_dcpromo.mspx
Microsoft Security Bulletin MS04-011
http://www.microsoft.com/technet/security/bulletin/MS04-011.mspx
Step 17
Stop the Windows Messaging Service.
This step stops the Windows Messaging Service. This service is not required for
normal operation and can be abused to allow full control of a host machine from
a remote computer. This step does not affect Instant Messaging services.
REFERENCES:
Windows Messenger Service Exploit
http://www.more.net/security/advisories/2002/021025.html
Windows Messenger http://www.microsoft.com/windows/messenger/
Step 18
Stop the Net DDE Service.
This step stops the Network Dynamic Data Exchange Service. This service is not
required for normal operation and can be abused to allow full control of a host
machine from a remote computer.
REFERENCE:
Unchecked Buffer in NetDDE http://www.kb.cert.org/vuls/id/640488
Step 19
Disable the Private Communication Transport.
This step disables the PCT protocol by removing both the “Client” and “Server”
registry keys under
“HKLM\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\PCT
1.0”. The PCT protocol is not required for normal operation and can be abused to
allow full control of a host machine from a remote computer.
REFERENCES:
Securing IIS http://www.networkworld.com/columnists/2004/0503internet.html
How to disable PCT http://support.microsoft.com/default.aspx?scid=kb;enus;187498
Step 20
Disable the Remote Data Services Datafactory.
This step disables 3 insecure RDS datafactory objects; RDSServer.DataFactory,
AdvancedDataFactory and VbBusObj.VbBusObjCls by removing the corresponding
registry keys from
“HKLM\System\CurrentControlSet\Services\W3SVC\Parameters\ADCLaunch”. These
objects are not used in normal operation and will not affect other Remote Data
Services.
REFERENCES:
Security Implications of RDS http://support.microsoft.com/kb/q184375/
Unauthorized ODBC Data Access http://www.winguides.com/security/display.php/4/
Step 21
Stop the Remote Registry Service.
This step stops the Remote Registry Service. This service is not required for
normal operation and can be used to remotely reconfigure a host machine from a
remote computer. Some services need remote access to the registry to function
correctly. For example, the Directory Replicator service and the Spooler service
when connecting to a printer over the network require access to the remote
registry.
REFERENCE:
Glossery of Windows Services
http://www.microsoft.com/windows2000/techinfo/howitworks/management/w2kservices.
asp
Step 22
Disable RPC based DCOM.
This step disables the DCOM client protocol of the Remote Procedure Call
protocol by setting “HKLM\Software\Microsoft\OLE\EnableDCOM” to “N” and removing
any data in “HKLM\Software\Microsoft\Rpc\DCOM Protocols”. The Client DCOM
portion of RPC is not required for normal operation and can be abused to allow
full control of a host machine from a remote computer. This setting will not
become active until the machine is rebooted.
REFERENCES:
Microsoft Security Bulletin MS03-026
http://www.microsoft.com/technet/security/bulletin/MS03-026.mspx
Microsoft Security Bulletin MS03-039
http://www.microsoft.com/technet/security/bulletin/MS03-039.mspx
Microsoft Security Bulletin MS04-012
http://www.microsoft.com/technet/security/bulletin/MS04-012.mspx
Step 23
Delete the backup password file.
Many Windows operating systems save a backup copy of the SAM file in the repair
directory under the system directory. This file contains SMB username and
password data that can be decoded by utilities such as JohnTheRipper to retrieve
valid login information. The backup file is only used for emergency backup and
is not required for normal operation.
REFERENCE:
Protection of the Administrator Account
http://support.microsoft.com/?kbid=223301
Step 24
Disable the Shell URL protocol handler.
The step disables the Shell protocol handler by replacing the insecure ActiveX
GUID found at “HKCR\PROTOCOLS\Handler\shell\CLSID” with a harmless substitute,
in this case the HTML Help GUID. The Shell URL protocol is not required for
normal operation and can be abused to allow full control of a host machine from
a remote computer.
The registry key is “HKCR\PROTOCOLS\Handler\shell”.
The registry value is “CLSID”.
The registry data should be changed to 3050F406-98B5-11CF-BB82-00AA00BDCE0B
REFERENCE:
The Shell URL Protocol Problem
http://assert.uaf.edu/classes/pres/wheeler/Wheeler.htm
Step 25
Disable the Universal Plug and Play Service.
This step stops the Simple Service Discovery Protocol, which disables Universal
Plug and Play. The SSDP service is not required for normal operation and can be
abused to allow full control of a host machine from a remote computer. This step
does not affect local Plug and Play operation.
REFERENCES:
Microsoft Security Bulletin MS01-059
http://www.microsoft.com/technet/security/bulletin/MS01-059.mspx
UnPlug n Pray http://grc.com/unpnp/unpnp.htm")
UPnP Forum http://www.upnp.org/
Step 26
Block unsolicited inbound Internet traffic.
This step blocks incoming Internet traffic by enabling the registry value
“HKLM\System\CurrentControlSet\Services\TcpIp\Parameters\
EnableSecurityFilters”. This setting only affects inbound traffic. This setting
will not become active until the machine is rebooted.
REFERENCE:
EnableSecurityFilters
http://www.microsoft.com/resources/documentation/Windows/2000/server/reskit/enus/Default.asp?url=/resources/documentation/Windows/2000/server/reskit/enus/regentry/33568.asp
Step 27
Disable Distributed Web Authoring.
This step disables the Distributed Web Authoring service by setting the
"DisableWebDAV" value of the
"HKLM\System\CurrentControlSet\Services\W3SVC\Parameters" registry key. This
service is not required for normal operation and can be abused to allow full
control of a host machine from a remote computer.
REFERENCES:
How to disable WebDAV http://support.microsoft.com/default.aspx?scid=kb;enus;241520
Microsoft Security Bulletin MS03-007
http://www.microsoft.com/technet/security/bulletin/MS03-007.mspx
Step 28
Disable the Windows Internet Naming Service.
This step disables the Windows Internet Naming Service. This service is not
required for normal operation and can be abused to allow full control of a host
machine from a remote computer.
REFERENCES:
Windows Internet Naming Service
http://www.microsoft.com/windows2000/techinfo/howitworks/communications/nameadrm
gmt/wins.asp
Microsoft Security Bulletin MS04-006
http://www.microsoft.com/technet/security/bulletin/MS04-006.mspx
The last four security solutions are best implemented using the Samurai
application due to functional component requirements. These components must be
registered and loaded using stringent Windows guidelines and as such are not
well suited to the manual application of security settings.
Step 29
Check FRAME/IFRAME NAME field.
This solution registers an HTML filter that checks for FRAME and IFRAME tags
with overly long NAMEs. The filter removes overly long names from the HTML
stream to prevent a well-publicized buffer overflow. This can only be
accomplished with the Samurai HIPS.
REFERENCES:
Microsoft Security Bullitin MS04-040
http://www.microsoft.com/technet/security/bulletin/ms04-040.mspx
FRAME/IFRAME Buffer Overflow http://www.kb.cert.org/vuls/id/842160
Step 30
Check image files for correctness.
This solution hooks various system calls to block Animated Cursor (.ANI) and
GDI+ (.JPG) files containing buffer overflow exploits. Only files with embedded
buffer overflows will be blocked from image processing. Properly formatted ANI
and JPG files will not be affected by this solution. This can only be
accomplished with the Samurai HIPS.
REFERENCES:
Microsoft Security Bulletin MS05-002
http://www.microsoft.com/technet/security/bulletin/MS05-002.mspx
Microsoft Security Bulletin MS04-028
http://www.microsoft.com/technet/security/bulletin/MS04-028.mspx
Step 31
Block Internet Explorer Popups.
This solution adds a popup-blocking feature to Internet Explorer. When enabled,
a “Popup Blocker” selection is added to the Internet Explorer context menu
(right click anywhere in IE). The initial setting blocks popups and sounds an
alarm when popups are blocked. Either option can be modified from the context
menu. When popups are blocked, links to popups are also blocked, you must hold
down the CRTL key to temporarily bypass popup blocking. This can only be
accomplished with the Samurai HIPS.
Popups can be more than just annoying; they can lead to security breaches. To
prevent vulnerability you should accustom yourself to using a popup blocker. All
popup blockers indicate when they are blocking a popup and give you the
opportunity to temporarily bypass blocking. The predominant convention to bypass
blocking is to hold down the Ctrl key while clicking on a link to a popup. This
bypass feature is required for many Internet based applications and is often
required to follow links while navigating the Internet. Though keeping your
speaker on and listening for the popup blocker may seem intrusive at first, you
will quickly become accustomed to this necessary precaution.
REFERENCES:
Popup attacks http://www.theregister.co.uk/2004/06/30/ie_malware_attack/
Hijacking Popups http://www.pcworld.com/news/article/0,aid,118878,00.asp
Step 32
Clear existing rootkits and prevent future loading.
This solution hooks system calls to prevent the loading of rootkits and
refreshes the kernel’s system call table to clear existing rootkits. This
solution also contains a user interface that informs the operator when attempts
are made to load device drivers during normal operation. This can only be
accomplished with the Samurai HIPS.
REFERENCES:
Rootkit.com http://www.rootkit.com/index.php
I hope this helps,
TurboTramp
Download