USING EMET TO DEFEND AGAINST TARGETED ATTACKS PRESENTED BY ROBERT HENSING – SENIOR CONSULTANT – MICROSOFT CORPORATION MICHAEL MATTES – SENIOR CONSULTANT – MICROSOFT CORPORATION WHO WE ARE • Robert Hensing • 15 year Microsoft employee • TWC alum • 5 year tour in MSRC Engineering – Defense team • Currently Developer Consultant in National Security Group practice • Michael Mattes • XX year Microsoft employee • Infrastructure consultant in NSG etc. TRUSTWORTHY COMPUTING - SECURITY CENTERS Protecting Microsoft customers throughout the entire life cycle (in development, deployment and operations) Microsoft Security Response Center (MSRC) Conception Ecosystem Strategy MSRC Ops Product Life Cycle MSRC Engineering Microsoft Malware Protection Center (MMPC) Microsoft Security Engineering Center (MSEC) SDL Security Assurance Security Science Release THE SOFTWARE VULNERABILITY ASYMMETRY PROBLEM Defender must fix all vulnerabilities in all software – attacker wins by finding and exploiting just one vulnerability Threats change over time – state-of-the-art in vulnerability finding and attack techniques changes over time Patch deployment takes time – vendor must offset risks to stability & compatibility, customer waits for servicing cycle Result: Attackers only have to find one vulnerability, and they get to use it for a really long time. EXPLOIT ECONOMICS Attacker Return = Gains per use X Opportunities to use - Cost to acquire vulnerability + Cost to weaponize 5 EXPLOIT ECONOMICS We can decrease Attacker Return if we are able to… Increase attacker investment required to find usable vulnerabilities • Remove entire classes of vulnerabilities where possible • Focus on automation to scale human efforts Increase attacker investment required to write reliable exploits • Build mitigations that add brittleness • Make exploits impossible to write completely reliably Decrease attacker’s opportunity to recover their investment • Shrink window of vulnerability • Fewer opportunities via artificial diversity • Enable rapid detection & suppression of exploit usage Desired Result: Usable attacks will be rare and require significant engineering; working exploits will become scarce and valuable Exploit Economics Strategy – Step 1 INCREASE ATTACKER INVESTMENT REQUIRED TO FIND VULNERABILITIES 7 EMBEDDING SECURITY INTO SOFTWARE AND CULTURE Tactics for Vulnerability Reduction Remove entire classes of vulnerabilities • • Security Tooling Additional product features Ongoing Process Improvements Remove all currently findable vulnerabilities • Complete automation of tooling • • • • SDL tools, Threat Modeling tool Fuzzing toolsets + ways to streamline & improve triage Tool overlays to increase signal-to-noise and focus attention on the right code Verification & enforcement • • Audit individual tool usage via process tools Process tools required for SDL signoff - policy enforcement Exploit Economics Strategy – Step 2 PREVENT RELIABLE EXPLOITATION OF VULNERABILITIES EMBEDDING SECURITY INTO SOFTWARE AND CULTURE Tactics to Frustrate Exploits Reduce the surface we have to defend • Attack surface reduction • Design additional product mitigations Ongoing Process Improvements Make remaining vulnerabilities difficult or impossible to exploit • Build mitigations that add exploit brittleness DIGITAL COUNTERMEASURES • Improve system survivability against exploitation of unknown vulnerabilities • Three goals: • Increase attacker requirements – e.g. must be authenticated, local subnet only • Deterrent – no economically reliable exploit exists • Mitigation – Break 100% reliable universal exploits • Often must be combined together • Even when successful, the result is still impactful to the user 11 MITIGATION APPROACHES Utilize Knowledge Deficits • • • Utilize secrets such that guessing impairs exploit reliability /GS: Protect stack buffers by checking random cookies placed between them and control structures Function Pointer Encoding Artificial Diversity ASLR: Address Space Layout Randomization Enforce Invariants Data Execute Protection (DEP) Heap & pool metadata checks SafeSEH / SEH Overwrite Protection (SEHOP) 12 MEMORY SAFETY MITIGATIONS ROADMAP /GS 1.0 /GS 1.1 Stack /GS 2.0 EH4 Heap / Pool Heap 1.0 Executable Code DEP SEHOP Heap 2.0 /GS 3.0 HeapTerm /NXCOMPAT Safe Unlinking ASLR DEP+ATL DEP IE8 SEHOP IE9 DEP O14 2003 2004 2005 2006 2007 2008 2009 2010 2011 13 ENHANCED MITIGATION EXPERIENCE TOOLKIT (EMET) EVOLUTION OF EMET MITIGATIONS MS12-037 – INTERNET EXPLORER CVE-2012-1875 (SAME ID) • 0-day vulnerability being used in limited targeted attacks prior to bulletin release. • Vulnerability about as bad as it gets! • Remote Code Exec vulnerability in all versions of IE (at the time) and exploitable via a web page • Fixed by MS12-037 - http://technet.microsoft.com/enus/security/bulletin/ms12-037 • Standard mitigations in the bulletin were • Don’t open Office documents • Killbit the AX control in IE EMET VS. MS12-037 - CVE-2012-1875 (SAME ID) CALL TO ACTION • Follow the Security Research and Defense blog http://blogs.technet.com/b/srd/ • Evaluate and Deploy EMET v3.5 or newer • Protect critical applications such as Internet Explorer, Firefox, Office, Adobe Acrobat etc • Monitor for EMET related events in the event log using System Center or other Enterprise monitoring software DEPLOYMENT AND MANAGEMENT VIA GROUP POLICY