Rekall. Rekall Agent - OSDFCon Forensics. We will remember it for you wholesale! Michael Cohen

Similar documents
Rekall Forensic. We can remember it for you wholesale! Michael Cohen Google Inc.

Rekall Agent User Manual

Developing Solutions for Google Cloud Platform (CPD200) Course Agenda

Simplified CICD with Jenkins and Git on the ZeroStack Platform

GETTING TO KNOW GIT: PART II JUSTIN ELLIOTT PENN STATE UNIVERSITY

Using DC/OS for Continuous Delivery

GRR Rapid Response. GRR CERN Mikhail Bushkov, Ben Galehouse, Miłosz Łakomy, Andreas Moser

These views are mine alone and don t reflect those of my employer

Tanium Incident Response User Guide

The Now Platform Reference Guide

Avanan for G Suite. Technical Overview. Copyright 2017 Avanan. All rights reserved.

The story of Greendale. Turbinia: Automation of forensic processing in the cloud

Google Cloud Platform for Systems Operations Professionals (CPO200) Course Agenda

Tanium Endpoint Detection and Response. (ISC)² East Bay Chapter Training Day July 13, 2018

itexamdump 최고이자최신인 IT 인증시험덤프 일년무료업데이트서비스제공

Defending the Gibson in 2015

Cisco Configuration Engine 2.0

GRR Rapid Response. GRR ICDF2C Prague Mikhail Bushkov, Ben Galehouse

Developing Microsoft Azure Solutions (70-532) Syllabus

GRR Rapid Response. An exercise in failing to replace yourself with a small script.

The story of Greendale. Turbinia: Automation of forensic processing in the cloud

Installation and setup guide of 1.1 demonstrator

Developing Microsoft Azure Solutions (70-532) Syllabus

Linux System Management with Puppet, Gitlab, and R10k. Scott Nolin, SSEC Technical Computing 22 June 2017

Developing Microsoft Azure Solutions (70-532) Syllabus

RSA NetWitness Platform

Developing with Google App Engine

VMware AirWatch Content Gateway for Linux. VMware Workspace ONE UEM 1811 Unified Access Gateway

DMN DECISIONS EXECUTION SCENARIOS

Introduction to Worklight Integration IBM Corporation

AZURE CONTAINER INSTANCES

Index. Chaminda Chandrasekara 2017 C. Chandrasekara, Beginning Build and Release Management with TFS 2017 and VSTS, DOI /

Enabling Developers with Open Source Nicholas Parks, Cloud Architect, Kenzan

Azure Day Application Development. Randy Pagels Sr. Developer Technology Specialist US DX Developer Tools - Central Region

VMware vrealize Code Stream Reference Architecture. 16 MAY 2017 vrealize Code Stream 2.3

TangeloHub Documentation

Technology Roadmap for Managed IT and Security. Michael Kirby II, Scott Yoshimura 04/12/2017

Exam Questions C

9 Reasons To Use a Binary Repository for Front-End Development with Bower

User Workspace Management

Image Management for View Desktops using Mirage

Containerizing GPU Applications with Docker for Scaling to the Cloud

Accelerate at DevOps Speed With Openshift v3. Alessandro Vozza & Samuel Terburg Red Hat

Automation with Meraki Provisioning API

Bro-Osquery. Let Bro know about the hosts it monitors. Steffen Haas Department of Computer Science IT Security and Security Management (ISS)

Github/Git Primer. Tyler Hague

SIEM Solutions from McAfee

Introduction to OpenStack Trove

Kivy Designer Documentation

Aspirin as a Service: Using the Cloud to Cure Security Headaches

About This Document 3. Overview 3. System Requirements 3. Installation & Setup 4

How Parallels RAS Enhances Microsoft RDS. White Paper Parallels Remote Application Server

Walkthrough OCCAM. Be on the lookout for this fellow: The callouts are ACTIONs for you to do!

Version Control. Second level Third level Fourth level Fifth level. - Software Development Project. January 17, 2018

SnowAlert Documentation. Snowflake Security

BEYOND AUTHENTICATION IDENTITY AND ACCESS MANAGEMENT FOR THE MODERN ENTERPRISE

Building Scalable Web Apps with Python and Google Cloud Platform. Dan Sanderson, April 2015

DataMan. version 6.5.4

Ansible Tower Quick Setup Guide

Software Development I

VMware AirWatch Content Gateway Guide for Linux For Linux

nacelle Documentation

TSInfo Technologies (OPC) Pvt Ltd

Copyright 2012, Oracle and/or its affiliates. All rights reserved.

Exam Questions AWS-Certified- Developer-Associate

DevOps examples on NonStop Tools Overview. Cor Geboers, ATC Consultant

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme

Technology Roadmap for Managed IT and Security. Michael Kirby II, Scott Yoshimura 05/24/2017

Hyperledger Fabric Single Member Blockchain in Azure Marketplace Christine Avanessians Senior Program Manager

Symantec Endpoint Virtualization 6.1 SP8 Release Notes

Switch to Parallels Remote Application Server and Save 60% Compared to Citrix XenApp

Welcome to Docker Birthday # Docker Birthday events (list available at Docker.Party) RSVPs 600 mentors Big thanks to our global partners:

Pexip Infinity and Google Cloud Platform Deployment Guide

Experiences with OracleVM 3.3

How to go serverless with AWS Lambda

Enterprise Guest Access

Identity Management and Compliance in OpenShift

The story of Greendale. FOSS tools to automate your DFIR process

Title DC Automation: It s a MARVEL!

Zadara Enterprise Storage in

SharePoint 2016 Administrator's Survival Camp

Managing and Auditing Organizational Migration to the Cloud TELASA SECURITY

Actual Agility with SDN: Weaving SDN into Data Center Automation May 6, John Burke Principal Research Analyst & CIO

ENTERPRISE SECURITY MANAGEMENT. Frederick Verduyckt 20 September 2012

PHP Composer 9 Benefits of Using a Binary Repository Manager

Vodafone Secure Device Manager Administration User Guide

Implementing the RDA Data Citation Recommendations for Long Tail Research Data. Stefan Pröll

ForgeRock Access Management Core Concepts AM-400 Course Description. Revision B

How-to Guide: Tenable.io for Microsoft Azure. Last Updated: November 16, 2018

Application Deployment

AirWatch Mobile Device Management

70-247: Configuring and Deploying a Private Cloud with System Center 2012

Be smart. Think open source.

Microsoft SharePoint Server 2013 Plan, Configure & Manage

Continuous Data Analysis

Ansible Cookbook 2014

LGTM Enterprise System Requirements. Release , August 2018

Amazon Web Services CSE 490H. This presentation incorporates content licensed under the Creative Commons Attribution 2.5 License.

Introduction to Kony Fabric

Use Plug and Play to Deploy New Devices

Transcription:

Agent - OSDFCon 2017 We will remember it for you wholesale! Michael Cohen mic@rekall-innovations.com is an open source project released under the GPL. It is not an official Google product, and does not necessarily reflect the views of Google.

Overview Why the Agent? Deployment: in the cloud! Authentication Flows Hunts Exporting data Post processing

Why endpoint monitoring? An enterprise typically has a lot of endpoints (laptops, servers, cloud VMs). Mix of operating systems, configurations and deployments. Systems are not always accessible. Dynamic changing environment.

Existing solutions Fro Sa nten tur ate ds d QPS Hu nt Resource management. System is idle much of the time. But when something happens (e.g. a hunt) QPS load increases. Existing systems need to be provisioned in advance to handle maximal load. Idl e Time

Existing solutions Flexibility is important Some existing solutions require code changes to be deployed server side or client side. E.g. GRR requires python hacks to run arbitrary code. In a dynamic, rapidly evolving incident we need to be able to get and filter data in creative ways. Sometimes the framework does not provide flexible filtering requiring a lot of extra data to be transferred and the post-processed.

Everywhere: Collect and preserve forensic evidence at scale, quickly, efficiently and flexibly.

Use the Cloud! Cloud technologies provides automated scaling. When things get busy, the cloud takes care of scaling up. When things are idle the cloud scales down to save on cost.

Why Agent? Endpoint monitoring solution Strong Access controls and auditing. is already a sophisticated forensic analysis framework Agent runs remote analysis at scale. Collection system for results and files. Role based access control mechanism Peer approval process for gaining access to individual machine's data. Strong auditing managed by the Google Cloud Platform. Easily scalable The Google Cloud Platform (GCP) manages scaling on demand.

System overview Client Agent Server AppEngine application Bulk Data: Uploaded files, Result Collections Metadata AppEngine NBD Datastore (BigTable) Google Cloud Storage GUI User

Deploying Agent Create GCP project, push AppEngine app. Step 1 Step 3 Step 2 Configure App Engine app to allow users access. Create a client config for each OS and deploy client via software management tools.

Deployment - Server. Create a new project in the GCP console. Give the project a unique name - the project will be served from https://project-name.appspot.com Agent relies on SSL for communication security - GCP provides an SSL connection automatically. Get a working shell or spin up a virtual machine. Checkout the repository using git. Run the bootstrap script. Deploy the app Profit

Create a new project.

Cloning the repository for server deployment

Self Guided Demo There is a demo application you can use to play with The Agent Server.

Access management Platform administrators: Users with AppEngine admin level access. No access control! Can do anything within the App, including update the application, push new code etc. Users does not deal with user accounts/passwords - these are done by GCP. users are given roles within the application. Investigator - can issue new collection flows. Examiner - Can view existing collections. Hunter - Can propose hunts for the entire fleet. Approver - Can approve collection flows and hunts. Administrator - Can grant other users roles!

Deployment - Users Roles are assigned on resources (securable objects): Clients Hunts The Application It is possible for a user to have different roles on different resources. Client/Hunt approval workflow essentially grants roles on Hunt/Client. When the user attempts to access a Client/Hunt for which they have no access: Approval request is sent to Approver. Once approval is granted, the user may access the Client.

Auditing Every Action a user makes is being audited. Users need the Auditor role to be able to see the audit log.

Deployment - Client Prepare a client configuration file. On all clients install the package, and optionally the Agent package. Use the server provided one as a template Most enterprises have their own software management solution. Endpoint deployment and configuration is an exercise left to the reader. One can run the client manually to see the debugging messages.

Client capabilities Agent just runs regular plugins and collects their results on the server. Most useful plugins: This means you can test potential plugin invocations in the regular Console. The Agent server just manages collection storage and access controls. It does not further analysis by itself. EFilter queries - allows for arbitrary combinations of plugins, filtering the output and retrieving only selected information. OSQuery plugin - run the normal OSQuery binary and collect the results. Can run memory analysis but this should not be first option - use API mode first. Agent implement resource limits (total CPU and CPU load).

Example EFilter queries.

Mactimes timeline output select Hashes.md5, Path, Path.st_ino, Path.st_mode, Path.st_uid.uid, Path.st_gid.gid, Path.st_size, timestamp(path.st_atime) as a, timestamp(path.st_mtime) as m, timestamp(path.st_ctime) as c from hash(paths: ( select path from glob("/bin/*") ).path.filename, hash: "md5")

Find authorized_keys. A user left the company and we want to see if their SSH keys are still installed somewhere: select * from file_yara(paths: ( select path.filename.name from glob("/home/*/.ssh/authorized_keys") ).name, yara_expression: "rule r1 {strings: $a = \"T6qsh0WEh8pRvEKL/aZOBTKjr7d\" condition: any of them}")

Long running process from WebShell A compromised webserver was found to contain a webshell. Which resource hungry processes were launched by the webshell? select proc, proc.cpu_times.user from pslist() where proc.environ.http_cookie =~ "WebShell-cwd"

Find out more! The Agent White paper http://www.rekall-forensic.com/documentation-1/rekall-documentation/user-m anual 's home on Github https://github.com/rekall-innovations 's site http://www.rekall-forensic.com/ Mailing list rekall-discuss@googlegroups.com