Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Attacker Ghost Stories (CarolinaCon / Area41 / RVASec)


Published on

Published in: Internet, Technology

Attacker Ghost Stories (CarolinaCon / Area41 / RVASec)

  1. 1. Attacker Ghost Stories Mostly free defenses that give attackers nightmares
  2. 2. About me... Mubix “Rob” Fuller o Father o Husband o NoVA Hacker o Marine
  3. 3. Why are we here?
  4. 4. Memory Corruption Bugs
  5. 5. EMET (Enhanced Mitigation Experience Toolkit) What is EMET? o o  Think of it like a big bouncer that protects any kind of memory funny business, but only for things you tell it to protect o Deployable by GPO o Logs o FREE
  6. 6. Protections
  7. 7. What about EMET bypasses?
  8. 8. Another good resource about EMET
  9. 9. Protections
  10. 10. Good percentage of Java bugs are non- memory corruption What about Java?
  11. 11. Protections Commonly Discussed •  “Just patch all of them” •  This person never had a developer on staff •  Or never had to install ArcSight •  “Disable the plugin in GPO” •  Not only is this just a Windows solution but not a very popular one •  “Just upgrade everyone to Java 7 update 200 so you can use the block list functionality” •  “Everyone should just use Linux…”
  12. 12. Internet Explorer User Agent Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/ 4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; MS-RTC LM 8; InfoPath.3; .NET4.0C; .NET4.0E) chromeframe/8.0.552.224
  13. 13. Block Java UA at the Proxy Examples: JNLP/6.0 javaws/1.6.0_29 Java/1.6.0_26 Mozilla/4.0 (Windows 7 6.1) Java/ 1.7.0_45
  14. 14. Block Java UA at the Proxy o Java apps (exploits) require the use of Java, which uses it’s own User-Agent
  15. 15. Block Java UA at the Proxy o Java apps (exploits) require the use of Java, which uses it’s own User-Agent This never happens if they can’t pull the code!
  16. 16. Block Java UA at the Proxy o Java apps (exploits) require the use of Java, which uses it’s own User-Agent o Pull a report of every domain your users went to using the Java User-Agent. Parse the list and make them the exclusions. o FREE o Stops java exploits loaded by a browser. o Attacker cannot modify UA pre-exploit
  17. 17. Update: Block Java UA at the Proxy And according to “Z” this works for SSL too
  18. 18. Block Java UA at the Proxy Oh yea, it protects Macs too…
  19. 19. But do all wrong… The stuff we know about
  20. 20. Logging / Vuln Scanning / AV / HIPS o PWDump removed on an internal IIS box doesn’t mean the job is done. o Logon alerting - ADAudit Plus (only product in this presentation simply because I can’t find anyone else who does it) (Netwrix?) o HIPS (enable the prevention part) o Vuln Scanning is what a tool does. Lets start Vuln Reporting. o Get your pentester/red team involved!
  21. 21. Stop buying Typo-Squatted Domains •  Huge cost every year, and no way to keep up. •  Large risk as typo-squatted domains are easily used as phishing sources •  Use URLCrazy •  Add all of the Typo domains to your INTERNAL DNS servers •  Benefits •  No cost (except for upkeep/initial add) •  Phishing gets null-routed or even better, sent to “Phishing education” page •  Bad guy has no idea what is wrong •  Bad guy has no idea which domains are intra-squatted
  22. 22. Crowdsourcing Security Security Incident / Phishing Incentive Program o Reward “top” users for reporting malicious or “phishy” content. o Make a big deal out of it (company / section wide emails) o Every employee becomes an IDS o Quarterly “Think Evil” games
  23. 23. Crowdsourcing Security Internal Bug Bounty Program o Developers Developers Developers …. o Incorporate the entire company though, if anyone reports a bug in a system they don’t own, they’ll be entered in the bounty. o Make it _EASY_ o Payout in gift cards instead of incident response and forensics
  24. 24. WPAD My _favorite_ vulnerability:
  25. 25. WPAD o Make null routed ( DNS entry for WPAD o Make null routed (::1) for DNS entry WPADWPADWPAD o Disable NetBIOS resolution domain wide. Your DNS servers can handle it. o It’s also a privacy concern NetBIOS traffic is broadcasted to everyone o FREE
  26. 26. Seriously Turn off DNS.
  27. 27. Believe me… would I lie to you?
  28. 28. DNS o There is no reason a user needs to resolve internally o Let your web proxies do all the DNS o FREE o Turn off forward lookups on your internal DNS servers. o Point your proxies at DNS servers that only they are allowed to use.
  29. 29. But we rarely do anything more than set a password policy for it. Passwords suck!
  30. 30. Dump your own hashes!
  31. 31. Dump your own hashes! o Crackers o  John the Ripper o  Rockyou.txt o Dumpers o  Depends… o  Goes back to the, “don’t use code you don’t trust”. o  List by Bernardo Damele - o  Ask your Pentesters/Red Teamers to do the dump and maybe even the audit. They will jump at it. o  (under supervision)
  32. 32. Port-forwarding Honeypots If you have public IP space, use it. 1.  Spin up a VPS (Like Linode) 2.  Add vulnerable looking software to the VPS 3.  Install snort / other sensor on the VPS 4.  Port forward 80, 1433, etc on your IP to the VPS via your firewall. 5.  Watch as attacks roll in without endangering your infrastructure at all. Note: Don’t share passwords from real infrastructure to VPS.
  33. 33. Authenticated. Splash. Proxy.
  34. 34. Authenticated Splash Proxies o Use a web form with fields other than “username=” and “password=” o Block all “uncategorized” o Splash page requirement (every domain is blocked every day, first person to go to the page is shown a big red button that says “approve this domain”) any automated C2 will fail.
  35. 35. Authenticated Splash Proxies THIS DOMAIN HAS BEEN BLOCKED! Don’t worry, this could be the first time today someone is attempting to go there. Click on “UNBLOCK” to ALLOW THIS DOMAIN THROUGH UNBLOCK BLOCK
  36. 36. CAUGHT
  37. 37. Evil Canaries o  Domain User called “DomainAdmin_Temp” with password in the description, and actually in Domain Admins group. Logon hours was 0. CAUGHT o  Public share called “Password Audit 2014”, EXLS docs about 4 MB, but “Everyone:Deny” permission. CAUGHT o  Computer called BACKUPDB, with out of date version of MySQL on Windows. CAUGHT
  38. 38. Evil Canaries o  Web developer made .htaccess file forward common scanner (ala /nikto.html) requests to custom 402 (Payment Required) page, correlated hits and alerted. CAUGHT o  Credit card database: http:// CAUGHT o  VPN main page edited to include “default” credentials in HTML source. CAUGHT
  39. 39. Evil Canaries o  Web server had /admin/login.html and supposedly tied to AD which always returned “SUCCESS” but didn’t do anything except, report what creds were used, browser and IP information. CAUGHT o  Machine that does absolutely nothing, saw traffic to port 23 (not listening). CAUGHT
  40. 40. Tell your helpdesk! o Most of your actionable security alerts go through your helpdesk. o Stop leaving them out of the loop.
  41. 41. Contact Me Rob Fuller @mubix Blog - Wiki - Email - Campfire image from
  42. 42. Appendix I - Psychology The attacker is on your turf. Hackers freeze when they think they are caught. Nation states have “visibility assessment protocols” that take time. The more you can cause a visibility score to go up either by perceived or actual detection will cause more intelligence opportunities on the defence side.
  43. 43. Appendix II - Other free wins o  Monitor anything that is tied to AD and is accessible from the Internet. OWA / MDM / SharePoint / VPN, or your web site. o  Baseline internal network traffic. Spider patterns mean scanning. o  MAC addresses that aren’t in the same OUI class should be investigated. (DELL/HP/ Wewei)
  44. 44. Appendix II - Other free wins o  Allow users a way to specify when they are on vacation. Or integrate your vacation system with the authentication alerting system. If the user isn’t there, there shouldn’t be authenticating to anything be email and maybe the VPN for you workaholics.