If there's one simple — high impact — thing you could do to quickly check whether your network has been taken over by a criminal entity, or uncover whether some nefarious character is rummaging through your organizations most sensitive intellectual property out of business hours, what would it be? In a nutshell, I'd look to my DNS logs.
It's staggering to me how few security teams have gotten wise to regularly interrogating the logs from their recursive DNS servers. In many ways DNS logging can be considered sprinkling flour on the floor to track the footsteps of the culprit who's been raiding the family fridge. Each step leaves a visible impression of where and how the intruder navigated the kitchen, and their shoe size.
Whenever an electronic intruder employs their tools to navigate your network, tries to connect back to their command and control server, or attempts to automatically update the malicious binaries they've installed upon the system they have control over (or wish to control), those victim devices tend to repeatedly resolve the domain names that that attacker is operating from. Therefore, armed with a list of known bad domain names and/or IP addresses, it's a trivial task to mine the DNS logs and identify any successful intrusions.
Depending upon how authoritative your "blacklist" of criminal domains is, and how picky you are about the IP destinations that the domain names are resolving to, you can rapidly spot those nefarious shoe impressions in the flour.
One word of caution though, this isn't a comprehensive technique for detecting persistent threats operating within your network — but it is one of the simplest! It also has the highest impact — particularly if you're operating on a shoestring budget.
An obvious limitation of DNS log mining is the depth and accuracy of the blacklist you're matching DNS events to — so you'll want to ensure that the list you're using covers the types and classes of threats you're most interested in detecting. While there are plenty of free blacklists out there, the vast majority of them deal with spam, phishing and drive-by hosts… so you'll want to invest some time shopping around a little.
Here are a few tips to using DNS as a means of detecting persistent threats (advanced or otherwise):
DNS log scraping can be conveniently done off-line through simple batch script processing. So the impact on the team responsible for securing the corporate infrastructure is minimal after a nominal development investment.
If you're not happy with the quality of the blacklist you'll be able to bring to bear in uncovering the persistent threats likely already operating within your environment, or if it would be helpful to do a "one-off" check of your DNS logs and to help build the internal business case for investing in a more permanent detection solution, let me know. I'll happily introduce you to our team at Damballa Labs that can help (they could also detect those pesky DGA-based infections too).
By Gunter Ollmann, Chief Security Officer at Vectra
|Data Center||Policy & Regulation|
|DNS Security||Regional Registries|
|Domain Names||Registry Services|
|Intellectual Property||Top-Level Domains|
|Internet of Things||Web|
|Internet Protocol||White Space|
Afilias - Mobile & Web Services
Minds + Machines