• Skip to primary navigation
  • Skip to main content
  • Skip to footer

Cisco Umbrella

Enterprise network security

  • Free Trial
  • Contact us
  • Blog
  • Login
    • Umbrella Login
    • Cloudlock Login
  • Products
    • Product
      • Cisco Umbrella Cloud Security Service
      • Cisco Umbrella Investigate
      • Product Packages
      • Support Packages
    • Functionality
      • DNS-Layer Security
      • Secure Web Gateway
      • Cloud Access Security Broker (CASB)
      • Interactive Intelligence
      • Cloud-Delivered Firewall
    •  
    • Webinar signup
  • Solutions
    • By Need
      • Protect Mobile Users
      • Fast Incident Response
      • Web Content Filtering
      • Shadow IT Discovery & App Blocking
      • Unified Threat Enforcement
      • Reduce Security Infections
      • Secure Direct Internet Access
      • Securing Remote and Roaming Users
    • By Network
      • Protect Guest Wi-Fi
      • SD-WAN Security
      • Off-Network Endpoint Security
    • By Industry
      • Higher Education Security
      • K-12 Schools Security
      • Healthcare, Retail and Hospitality Security
      • Enterprise Cloud Security
      • Small Business Cybersecurity
      • Our Customers
      • Customer Stories
    • Ransomware Defense for Dummies book
  • Why Us
    • Fast Reliable Cloud
      • Cloud Security Infrastructure
      • Cloud Network Status
      • Cloud Network Activity
      • Recursive DNS Services
      • Top Reasons to Trial
      • Getting Started
    • Unmatched Intelligence
      • Cyber Attack Prevention
      • Interactive Intelligence
    • Extensive Integrations
      • IT Security Integrations
      • Hardware Integrations
      • Meraki Integration
      • Cisco SD-WAN
    • Navigation-dropdown-promo-free-trial_102820
  • Resources
    • Content Library
      • Top Resources
      • Analyst Reports
      • Case Studies
      • Customer Videos
      • Datasheets
      • eBooks
      • Infographics
      • Solution Briefs
    • International Documents
      • Deutsch/German
      • Español/Spanish
      • Français/French
      • Italiano/Italian
      • 日本語/Japanese
    • Cisco Umbrella Blog
      • Latest Posts
      • Security Posts
      • Research Posts
      • Threats Posts
      • Product Posts
      • Spotlight
    • For Customers
      • Support
      • Customer Success Hub
      • Umbrella Deployment Hub
      • Customer Success Webinars
      • What’s New
      • Cisco Umbrella Studio
  • Trends & Threats
    • Market Trends
      • Rise of Remote Workers
      • Secure Internet Gateway (SIG)
      • Secure Access Service Edge (SASE)
    • Security Threats
      • Ransomware
      • Cryptomining Malware Protection
      • Cybersecurity Threat Landscape
    •  
    • 2020 Cybersecurity trends
  • Partners
    • Channel Partners
      • Partner Program
      • Become a Partner
    • Service Providers
      • Secure Connectivity
      • Managed Security for MSSPs
      • Managed IT for MSPs
    •  
    • Become a partner
  • Free Trial Signup
  • Umbrella Login
  • Cloudlock Login
  • Contact Us
Security

Finding Malicious Connections within Memory

By Anthony Kasza
Posted on April 9, 2015
Updated on July 24, 2020

Share

Facebook0Tweet0LinkedIn0

The Importance of Memory Forensics

Information security practitioners know the benefits of examining multiple sources of system data. This is one of the corner stones of the SIEM. By accumulating multiple sources of log data a richer and fuller picture can be developed. I like to break down sources of security data into four categories:

  • system state including memory contents, registry entries, logged on users and more
  • system disk including stored files and their locations, system or event logs and more
  • recorded network traffic and network IDS events/alerts and more
  • third party logs from systems providing services such as DHCP, firewall logs, and more

Incident response often involves directly investigating a compromised system which typically focuses on the first two above categories. An investigation is typically started when an indicator of compromise is seen associated with a system within a network. Good responders don’t just wait for alerts to come to their inboxes, however. Forensics scanning frameworks are often used, similar to but differently scoped than vulnerability scanners and similar to but broader than antivirus scanners, to identify systems with suspicious configurations or states.

As much system data is volatile, many forensics examiners will prefer investigating a “live” system or one that has not ben powered off since the compromise. This is because malware is not running, network connections are not open, and attackers are not logged in when the system is off. All of these indicators can be collected from “live” systems and can be found within the system’s memory. Analyzing the memory of a system is most fruitful for determining current system state.

An Open Source Memory Analysis Framework

Enter Rekall, a cross platform open source framework for analyzing system memory (from both “live” systems and memory dumps). Written in Python, Rekall came out of  branch of the Volatility project. It scans system memory for specific kernel structures and parses them. Structures include:

  • system registry
  • running processes
  • open network sockets
  • arp table entries
  • mounted disks
Rekall's dns_cache Investigate Option Output

It is incorporated into Google Rapid Response (GRR) a framework for deploying scalable forensics scanning of  large environments. Rekall has an extensible plugin architecture and comes with many useful plugins including Yara scanning of memory. The plugin architecture also allows for custom plugins.

Investigate Your Memory

One plugin that grabbed my interests was the dns_cache plugin for Windows systems. It scans the memory image loaded into Rekall for Microsoft’s dnsrslvr.dll library which is loaded by the svchost process. This DLL provides the DNS Caching Resolver Service which acts as a local DNS cache for the operating system.

I added some logic to this dns_cache plugin to allow Rekall to send the domain names identified in the system’s DNS cache to OpenDNS’s Investigate API and display the categorization of the domain name from within Rekall. To use this new functionality download this fork of Rekall, drop in an Investigate API key, and install Rekall. For capturing an image of live memory from a running system, you’ll also need the winpmem kernel driver for accessing physical memory as a file (the SANS Internet Storm Center has a nice write up about it here).

Happy hunting!

Previous Post:

Previous Article

Next Post:

Next Article

Follow Us

  • Twitter
  • Facebook
  • LinkedIn
  • YouTube

Footer Sections

What we make

  • Cloud Security Service
  • DNS-Layer Network Security
  • Secure Web Gateway
  • Security Packages

Who we are

  • Cisco Umbrella Blog
  • Cloud Network Status
  • Cloud Network Activity
  • OpenDNS is now Cisco Umbrella

Learn more

  • Events
  • Careers
  • Support
  • Cisco Umbrella Live Demo
  • Contact Sales
Umbrella by Cisco
208.67.222.222+208.67.220.220
2620:119:35::35+2620:119:53::53
Sign up for a Free Trial
  • Cisco Online Privacy Statement
  • Terms of Service
  • Sitemap

© 2021 Cisco Umbrella