SEC505: Securing Windows with the Critical Security Controls
How can we deal with pass-the-hash attacks, token abuse, administrator account compromise, and the lateral movement of hackers inside our networks? How do we actually implement the Critical Security Controls on Windows in a large environment? How can we significantly reduce the client-side exploits which lead to malware infections? These are tough problems, but we tackle them in course SEC505.
While forensics and incident response are great for detection and remediation, the goal of this course is to prevent those infections in the first place (after all, first things first). Hacking tools are fun, but having a bunch of hacking tools doesn't help in securing a large Active Directory network against their use. We need different tools to implement security, and these tools have to scale without spending a fortune, such as Group Policy and PowerShell.
Learning PowerShell is probably the single best new skill for the careers of Windows administrators, especially with the trend towards cloud computing. Because most of your competition lacks scripting skills, it's a great way to make your resume stand out. This course devotes an entire day to PowerShell, but you don't need any prior scripting experience, we'll start with the basics.
SEC505 will also prepare you for the GIAC Certified Windows Security Administrator (GCWN) certification exam to help prove your security skills and Windows security expertise. The GCWN certification counts towards getting a Master's Degree in information security from the SANS Technology Institute (www.sans.edu) and satisfies the Department of Defense 8570 computing environment (CE) requirement too.
Please bring a virtual machine running Windows Server 2012 R2 to the training for hands-on practice. You can get a free evaluation version of Windows Server from Microsoft's web site (just do a search on "site:microsoft.com Server 2012 R2 evaluation"). You can use Hyper-V, VMware, VirtualBox, or any other virtual machine software you wish.
This is a fun course and a real eye-opener even for Windows administrators with years of experience. If you wish, you can get the PowerShell scripts now for the course from http://cyber-defense.sans.org/blog/ (go to the Downloads link). All tools are open source and in the public domain.
Operating System and Applications Hardening day:
- How your anti-virus scanners can fail you
- AppLocker whitelisting
- EMET, ASLR, SEHOP, DEP
- Windows OS and Applications Hardening tools
- The Group Policy Management Console (GPMC)
- INF and XML Security templates
- How to manage Group Policy
- WMI filtering and GPO preferences
- Custom ADM/ADMX templates
- Hardening Adobe Reader
- Hardening Java
- Hardening Internet Explorer
- Hardening Google Chrome
- Hardening Microsoft Office
- Virtual Desktop Infrastructure (pros and cons)
High-Value Targets & Restricting Admin Compromise day:
- What makes something a high-value target?
- Users in the local administrators group
- Secretly limiting the power of administrative users
- Limiting privileges, logon rights and permissions
- Token abuse and pass-the-hash attack mitigations
- Group Policy control of Windows security
- User Account Control (UAC)
- Delegating IT power more safely
- Organizational units for role-based controls
- Active Directory permissions for delegation
- Active Directory auditing and logging
- Painless (or Less Painful) Patch Management
PKI, BitLocker and Secure Boot day:
- Why must I have a PKI?
- Examples: Smart Cards, VPNs, Wireless, SSL, S/MIME, etc.
- How to install the Windows PKI
- Root vs. subordinate certification authorities
- Should you be your own root CA?
- Detecting malicious trusted CA changes
- How to manage your PKI
- Group policy deployment of certificates
- How to revoke certificates
- Automatic private key backup
- Deploying smart cards
- Best practices for private keys
- BitLocker drive encryption
- BitLocker for USB drives
- UEFI Secure Boot
- TPM chip options for BitLocker
- BitLocker emergency recovery
IPSec, Windows Firewall, DNS, and Wireless day:
- Isn't IPSec just for VPNs? No!
- IPSec for TCP port permissions
- How to create IPSec policies
- Windows Firewall and IPSec integration
- Group Policy for IPSec and firewall rules
- NETSH and PowerShell rules scripting
- DNSSEC response validation
- DNS secure dynamic updates
- DNS sinkholes for malware
- Wireless attack vulnerabilities
- Configuring RADIUS policies (NPS)
- Wi-Fi Protected Access (WPA2)
- Secure access to wireless networks
- Secure access to Ethernet networks
- Smart cards for wireless and Ethernet
Server Hardening & Dynamic Access Control day:
- A recipe for hardening most servers
- Dangerous protocols: SSL, RDP, IPv6, SMB
- SMBv3 encryption and downgrade attacks
- Pre-forensics and incident response preparation
- Service accounts and recovery
- Scheduling elevated tasks safely
- Protocol stack hardening
- Kerberos armoring and restricting NTLM
- Server Core vs. Server Minimal/Full
- DMZ cross-forest Active Directory trusts
- Dynamic Access Control (DAC)
- DAC for data loss prevention
- DAC for complying with regulations
- Automatic File Classification Infrastructure
PowerShell Scripting day:
- Getting comfortable in your shell
- PowerShell remoting
- Running cmdlets and scripts
- Writing your own functions
- Writing your own scripts
- Flow control within scripts
- Managing the event logs
- Managing Active Directory
- Windows Management Instrumentation (WMI)
- Accessing COM Objects
- Security and execution policy
|SEC505.1: Windows Operating System and Applications Hardening|
The best analogy for modern network penetration is biological warfare. A vulnerable client is exploited through weak software and social engineering to install the hacker's malware. The malware opens an SSL command-and-control channel back to the attacker. This channel is used to control the initial "Typhoid Mary" computer to infect other vulnerable systems and to exfiltrate valuable data (or to destroy it). When you add stealth, self-updating features, worm-like mobility, and corporate/government sponsorship to the malware, you've got an Advanced Persistent Threat (APT) situation. You're in trouble.
We don't just want to detect hackers and malware; we want to try to prevent the case-zero compromise to begin with. Prevention comes first, and then detection and remediation come afterwards. An ounce of prevention is worth a pound of cure. Today's course is on prevention through Windows operating system and applications hardening. The aim is to try to deny hackers and malware that initial foothold inside the network, because once they're in, they're hard to clean out.
We start by choosing malware-resistant software and Windows operating systems, then we regularly update that software, limit what software users can run, and then configure that software so that its exploitable features are disabled or at least restricted to work-only purposes. Nothing is guaranteed, of course, but what if you could reduce your malware infection rate by more than half? What if your next penetration test wasn't just an exercise in embarrassment?
The trick is hardening Windows in a way that is cost-effective, scalable, and with minimal user impact. In this course we'll look at tools like EMET and Group Policy, security templates, WSUS, and SCWCMD.EXE to hopefully make it easier. In today's course and during the week, we'll see how to implement many of the Critical Security Controls.
CPE/CMU Credits: 6
Who Should Attend
Going Beyond Just Anti-Virus Scanning
OS Hardening with security templates
Hardening with Group Policy
Enforcing Critical Controls for applications
|SEC505.2: High-Value Targets & Restricting Administrative Compromise|
Today's course continues the theme of resisting malware and APT adversaries, but with a special focus on securing the keys to the kingdom: Administrative Power. If a member of the Domain Admins group is compromised, the entire network is lost. How can we better prevent the compromise of administrative accounts and contain the harm when they do get compromised? What can we do about pass-the-hash and token abuse attacks? Remember, as a network administrator, you are a high-value target and your adversaries will try to take over your user account and to infect the computers you use at work (and at home).
Hackers also love it when "regular" users are members of the local Administrators group on their computers because it makes it easier to compromise those computers and to then move laterally to other machines. We will talk about what's so dangerous about the Administrators group, how to get users out of that group while still allowing them to get their work done, and, if we just can't get users out of Administrators, then how to make User Account Control (UAC) less annoying to them...and us.
We will also see how to delegate authority in Active Directory (AD). Every object in AD has a set of permissions and audit settings. We don't have to dump everyone in the IT department into the Domain Admins group, we can delegate to others the power to perform tasks like resetting passwords, joining computers to the domain, and managing the attributes used by Dynamic Access Control.
Finally, patch management is critically important for securing a Windows environment, but patch management can be expensive, hard and tedious. So we will also talk about how to make patching Microsoft and third-party software easier, especially on BYOD and mobile devices outside the local network.
CPE/CMU Credits: 6
Who Should Attend
Compromise of Administrative Powers
Active Directory Permissions and Delegation
Updating Vulnerable Software
|SEC505.3: Windows PKI, BitLocker, and Secure Boot|
Public Key Infrastructure (PKI) is not an optional security service anymore. Windows Server includes a complete built-in PKI for managing certificates and making their use transparent to users. You can be your own private Certification Authority (CA) and generate as many certificates as you want at no extra charge. It's all centrally managed through Group Policy.
Digital certificates play an essential role in Windows security: IPSec, BitLocker, S/MIME, SSL/TLS, smart cards, script signing, etc. They all use digital certificates. Everything needed to roll out a smart card solution, for example, is included with Windows except for the cards and readers themselves, and generic cards are available in bulk for cheap. You might already have a smart card built into your motherboard as a TPM chip.
As more and more of our servers are pushed up to cloud hosting providers, and as more of our devices become mobile, then certificate authentication and encryption will become more necessary. Even our BYOD tablets and phones will eventually need certificates.
We also have to encrypt our laptops and portable drives to stay in compliance, but why spend a fortune on third-party products when BitLocker is built into Windows already? BitLocker is manageable through Group Policy and from the command line. BitLocker has automatic encryption key archival features for recovery, requires little or no user training, and can be used to encrypt portable USB drives.
If you have a TPM chip in your motherboard, it can help BitLocker to detect rootkits, but a TPM is not required for BitLocker. Even better, with UEFI firmware you could also use UEFI Secure Boot to help detect bootkits and other malware too.
CPE/CMU Credits: 6
Who Should Attend
Why Have a PKI?
How to Install the Windows PKI
How to Manage Your PKI
Deploying Smart Cards
BitLocker Drive Encryption and Secure Boot
|SEC505.4: IPSec, Windows Firewall, DNS, and Wireless|
IPSec is not just for VPNs. IPSec can authenticate users in Active Directory to implement share permissions for TCP and UDP ports based on the user's global group memberships. IPSec can also encrypt packet payloads to keep data secure. Imagine configuring the Windows Firewall on your servers and tablets to only permit access to RPC or SMB ports if 1) the client has a local IP address, 2) the client is authenticated by IPSec to be a member of the domain, and 3) the packets are all encrypted with AES. This is not only possible, but is actually relatively easy to deploy with Group Policy. We will see exactly how to do this in seminar.
For defense in depth, we can't rely on just our perimeter firewalls anymore. Many of our devices are mobile, so they aren't protected by our perimeter firewalls anyway. You don't need to purchase third-party host-based firewalls anymore like we did for Windows XP. The new Windows Firewall is a vast improvement and can be managed through Group Policy. For BYOD computers, the firewall and IPSec settings can also be scripted.
DNSSEC digitally signs DNS records to prevent spoofing and man-in-the-middle attacks. Fortunately, it is much easier to manage DNSSEC in Server 2012 and later. We will also see how to require DNS secure dynamic updates, set permissions on DNS records in Active Directory, use the DNS sinkhole technique to frustrate malware, and use IPSec with DNS queries too.
There is much more to wireless security than getting rid of WEP. Windows Server includes a built-in RADIUS service that can be used to regulate access to your wireless access points, managed Ethernet switches, and VPN gateways. Everything you need for a WPA2 wireless network solution, including certificate-based PEAP authentication, is built into Windows for free. This week we will see how to set it all up, step-by-step, including the PKI.
CPE/CMU Credits: 6
Who Should Attend
Creating IPSec Policies
Securing Wireless Networks
RADIUS for Wireless and Ethernet
|SEC505.5: Server Hardening & Dynamic Access Control|
What are the best practices for hardening servers, especially servers exposed to the Internet? How can we remotely manage our servers in a secure way, especially our virtualized servers hosted by third-party cloud providers? If I have Internet-exposed servers, how can I more safely make them Active Directory domain members? If I have service accounts or scheduled jobs running as Domain Admin, what are the risks and what can I do about it? Today's course is all about server hardening.
Are you using SSL/TLS, NTLM, Remote Desktop Protocol (RDP) or the File and Print Sharing protocol (SMB/CIFS)? These protocols and their listening ports are hacker favorites, but we often can't live without them, so we will see how to make these and other protocols more resilient against attacks.
Windows Server 2012 introduced a major new security enhancement called Dynamic Access Control (DAC). If you have millions of files spread across multiple servers, how can you manage access to and auditing of these ever-changing files? How can we avoid relying on NTFS permissions and NTFS auditing alone?
DAC allows you to mark files as "Trade Secret", "PII", or as any other classification tag you invent, then apply restrictions and auditing based on these hidden file tags. But it's not done with AD group memberships and NTFS alone. DAC is not an NTFS management system, there's much more to it. With your own custom user and computer attributes defined in Active Directory, you can implement a Data Loss Prevention (DLP) solution based on "claims" associated with your users and their various devices. You can also perform auditing this way to help comply with regulations in your industry.
Dynamic Access Control works best with Server 2012 and Windows 8, but Windows 8 is not required. Even Windows XP clients can benefit. DAC can also be extended to other platforms such as SharePoint, Rights Management Services (RMS) and Exchange, it's not just for file servers. DAC is not a single tool or service, it's a new access control system with ties into the kernel -- fun stuff!
CPE/CMU Credits: 6
Who Should Attend
Dangerous Server Protocols
Internet-Exposed Member Servers
Dynamic Access Control (DAC)
|SEC505.6: Windows PowerShell Scripting|
In every Windows book, magazine and blog article, everything is PowerShell, PowerShell, PowerShell... But what is it?
PowerShell is Microsoft's object-oriented command shell and scripting language. Unlike the past, virtually everything can be managed from the command line and scripts now and automation is very important for implementing the Critical Security Controls. Server 2012-R2, for example, has over 3000 PowerShell tools for nearly everything, including Active Directory, IIS, Exchange, SharePoint, System Center, AppLocker, Hyper-V, firewall rules, event logs, remote command execution, and much more.
Download the latest version of PowerShell from http://www.microsoft.com/powershell/.
PowerShell takes the best features of UNIX shells, like ksh and bash, and then blows them out of the water. What's the big deal? PowerShell rides on top of the .NET Framework, hence, COM objects and the entire .NET class library are available at the command prompt. When you execute commands, the output is not text, the output is a stream of objects with properties and methods, just like in C#. You can even build and run graphical programs written entirely in PowerShell.
And PowerShell is easier to learn when you are first getting started too. This course assumes you have no prior scripting experience, and you don't need it either. We will walk through all the essentials of PowerShell together. And if you're already familiar with Perl or C#, then the PowerShell syntax will not be foreign to you. Most importantly, be prepared to have fun - PowerShell is just plain cooooooool...
CPE/CMU Credits: 6
Who Should Attend
Overview and Security
Getting Around Inside PowerShell
Write Your Own Scripts
Windows Management Instrumentation (WMI)
"You will know and be confident on how to enable Windows PKI after taking this course. I had no practical experience, but plenty of theory. Jason broke down the pros and cons of the whole process. Excellent!!" - Othello Swanston, DTRA-DoD
Please note that without a virtual machine or laptop running Windows Server, you will only be able to watch the instructor demonstrate the exercises, you won't be able to follow along on your own computer, and that is half the fun!
A video can be found here to help with your laptop setup.
Should I use a Virtual Machine?
Yes, in fact, using a virtual machine is preferred, though you could install Windows Server directly on your laptop if necessary. Windows 8 Pro and Enterprise both include Client Hyper-V. You can also obtain VMware Player or Oracle VirtualBox for free. On a Mac there is also VMware Fusion and Parallels.
The host computer can have any operating system.
Where can I get the free evaluation version of Windows Server 2012 R2?
You can download a free trial version of Windows Server 2012 R2 from Microsoft as an ISO image file (an ISO file is an exported copy of a CD/DVD disk).
Just do an Internet search on "site:microsoft.com windows server trial eval" to find the download link to the ISO file on Microsoft's web site.
Bring the ISO file with you on your hard drive when you attend the course.
How should my virtual machine be configured?
Other than simply creating the Windows Server virtual machine, there is nothing else to configure. Everything else will be done during the training.
Please install Windows Server 2012 R2 in your VM.
You can use either the Standard or Datacenter Edition, either one works fine.
When you install the VM, choose the "Server with a GUI" version of Windows Server, not the "Core" version. If you've accidentally installed the "Core" version, you will only get a CMD command shell when you log into the VM; you will need to delete this Core VM and install a new one to choose the "Server with a GUI" version instead.
Bring the ISO file with you when you attend the training.
If I install Windows Server directly on the laptop, do I need a virtual machine?
No, if you install Windows Server directly onto your laptop, you do not need to also install a virtual machine with Windows Server. Make sure to use either the evaluation version or a license-activated version of Windows Server though (activate in the System applet in Control Panel).
VMware prompts me for a license number or I get a license error message!
Make sure you have the evaluation version of Windows Server, not the retail version.
In VMware, when creating the virtual machine, it's best to choose the option which says "I will install the operating system later" and then provide the path to the ISO file for Windows Server. The "Easy Install" option can cause error messages because there is no license number for the evaluation version of Windows Server. If you boot the VM and get license error messages, it's easiest to simply delete that VM and create a new one.
If you have additional questions about the laptop specifications, please contact firstname.lastname@example.org.
|Who Should Attend|
|You Will Be Able To|
Take your learning beyond the classroom. Explore our site network for additional resources related to this course's subject matter.