challenges of collaborative malware analysis - polichombr · introduction what is it about...

34
Challenges of collaborative malware analysis Polichombr S. Le Berre A. Chevalier T. Pourcelot ANSSI/COSSI/DTO/BFS — SOGETI ESEC SSTIC — Rennes — June 1, 2016

Upload: others

Post on 13-Aug-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Challenges of collaborative malware analysis

Polichombr

S. Le Berre A. Chevalier T. Pourcelot

ANSSI/COSSI/DTO/BFS — SOGETI ESEC

SSTIC — Rennes — June 1, 2016

Page 2: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Introduction

Plan

1 Introduction

2 Needs and challenges

3 Polichombr

4 DEMO

5 Conclusion

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 2/30

Page 3: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Introduction

What is it about

Operational malware analysisI Malwares everywhere!

I Malware writers are more numerous than malware reversers

I Let’s work as a team to tackle them!

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 3/30

Page 4: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Needs and challenges

Plan

1 Introduction

2 Needs and challenges

3 Polichombr

4 DEMO

5 Conclusion

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 4/30

Page 5: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Needs and challenges

Goals

Why reverse malwares?I Technical follow up on adversary tools

I Many adversaries, many toolsI Sample identification

I More effective incident response! . . .

I Produce detection elements

I Capitalization of experience

I Threat intelligence & know your adversary

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 5/30

Page 6: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Needs and challenges

Formalization

InputsI Samples

I Context, associated documents, detection rules, . . .

OutputI IOC and threat reports

I Adversary toolset knowledge

ConstraintsI DO IT QUICK!

I Don’t waste time

I Don’t forget anything

I Limited manpower

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 6/30

Page 7: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Needs and challenges - Analysis cycle

Analysis cycle

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 7/30

Page 8: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Needs and challenges - Malware analysis challenges

Storage and collection

ChallengesI Collection

I Volume (many adversaries, many tools, many versions of thesetools)

Effective storage needsI Browsable (metadata)

I Usable

ProblemsI Filer storage

I Storage on reverser’s laptop or drives

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 8/30

Page 9: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Needs and challenges - Malware analysis challenges

Classification

BenefitsI Family identification

I Identification of similarities

I Sample triaging

Current techniquesI Yara and dynamic execution signatures

I Mandiant’s imphash

I Control Flow Graph comparison

I Metadata comparison

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 9/30

Page 10: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Needs and challenges - Malware analysis challenges

Analysis

BenefitsI Answer technical questions about the sample

I Identify interesting points in the binary

MethodsI Top-down: start from entry points

I Bottom-up: start from IAT or patterns

ChallengesI Automated analysis: fast but incomplete

I Manual analysis : time consuming, prone to omissions

I Team work: whiteboards and meetings are not sufficient

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 10/30

Page 11: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Needs and challenges - Malware analysis challenges

Results production and capitalization

Sample informationI Raw technical information

I Techniques used

I Code overview

Family informationI Overview: sophistication, variants, etc

I Detection techniques

I Tools (unpacking scripts, etc.)

ProblemsI Lost reports, IDB corruption, . . .

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 11/30

Page 12: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Needs and challenges - Malware analysis challenges

Dissemination and feedback

BenefitsI Propagation on existing dataset,

I Information shared: improved detection, actors knowledge, . . .

I Information gained: new samples, technical/context feedback, . . .

ChallengesI Multiple types of interlocutors = multiple types of languages and

channels

I Effective technical information sharing

I Both external (sensitivity) AND internal (experience)

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 12/30

Page 13: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Needs and challenges - Malware analysis challenges

Automation

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 13/30

Page 14: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Polichombr

Plan

1 Introduction

2 Needs and challenges

3 Polichombr

4 DEMO

5 Conclusion

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 14/30

Page 15: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Polichombr - Overview

POLICHOMBR

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 15/30

Page 16: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Polichombr - Overview

Why this new tool?

HistoryI Tool developped by BFS in 2014

I Originally Ruby/PHP/Python for Windows (yes. . . )

I Evolving since ;)

Addressed challengesI Storage!

I Information/Knowledge centralization

I Collaborative teamwork

I Automation

I Classification (introducing the MACHOC algorithm)

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 16/30

Page 17: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Polichombr - Overview

Bricks

WebUII Macro overview

I Expose an API

Analysis engineI Run all the things!

Disassembly engineI METASM

User’s endpointI IDA Python script

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 17/30

Page 18: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Polichombr - Overview

Datatypes

BinariesI PE/ELF/Shellcodes/. . .

I Associated metadata

FamiliesI Store contexts, utilities, overview information

I Tree used to organize samples/threats

SignaturesI Machoc

I Yara

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 18/30

Page 19: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Polichombr - The Machoc algorithm

Binary classification

ProblemsI MD5, SHA* not adapted (by definition)

I SSDEEP, SDHash not adapted to executables

GoalsI Act like a fingerprint of the program

I Lightweight (can be exchanged by mail)

I Resistant to recompilation

I Resistant to architecture change (x86_64)

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 19/30

Page 20: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Polichombr - The Machoc algorithm

Machoc algorithm

In a nutshellControl Flow Graph "snapshot" ofa function

AlgorithmI Blocks and call labelling

I Translate to text

I → 1:2;2:c,3,4;3:2;4:;

I Murmurhash3

I → 0x94167eb0

I For each function in sample,concatenate

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 20/30

Page 21: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Polichombr - The Machoc algorithm

Usages

Sample classificationI Threshold = 80% (empiric)

Information propagationI Between samples

I Propagate all the names!

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 21/30

Page 22: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Polichombr - Workflow

Analyzing a new sample

SubmissionWebUI, API or directly from IDA

Automated analysis: pluginsI Metadata, strings, machoc extraction

I Add comments, renames, hints

I Output a brief text summary

ClassificationI Strong/automated identification: Yara (extended with Machoc)

I Soft/suggested identification: imphash, Machoc_80

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 22/30

Page 23: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Polichombr - Workflow

Results storage

Sample documentationI Analysts notes

I Checklist

I IDA actions

Family documentationI Analysts notes

I Detection items (SNORT rules, OpenIOC, etc.)

I Classification signatures (Yara, Machoc)

I Other elements: context, reports, tools

I Analysts

I Etc.

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 23/30

Page 24: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Polichombr - Workflow

Data export

For analysts: MachexI Can include any information about the sample

I Specifically information about functions, names and machochashes

I Can be imported back

For consumersI Reports, detection rules, IOC, samples archive

I Sensitivity management

For toolsI Expose all the data with an API

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 24/30

Page 25: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Polichombr - Workflow

Team reversing

SkelenoxI IDA Python script

I Synchronization between user’s IDA database and Polichombr

I Push/pull changes (including other user’s)

I Names, comments, types, . . .

I Realtime identification (using Machoc hashes)

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 25/30

Page 26: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

DEMO

Plan

1 Introduction

2 Needs and challenges

3 Polichombr

4 DEMO

5 Conclusion

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 26/30

Page 27: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

DEMO

DEMO DEMO DEMO

Automated analysisI Sample metadata

I Classification

I Automated reverse!

BonusI OpenIOC Export

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 27/30

Page 28: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Conclusion

Plan

1 Introduction

2 Needs and challenges

3 Polichombr

4 DEMO

5 Conclusion

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 28/30

Page 29: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Conclusion

Conclusion

What we try to achieveI Quickly and efficiently produce information about malwares

I Provide a tool for automation and communication of analyses

About the toolI https://github.com/ANSSI-FR/polichombr

I Can be used for other collaborative reversing tasks =)

I Pull requests, feedback and suggestions are welcome!

HRI If you like malware analysis,

I If you were not lost in this presentation,

I BFS & Sogeti are hiring! ;-)

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 29/30

Page 30: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Conclusion

Q&A

Thank you for your attention!

Questions?

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 30/30

Page 31: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Backup

Plan

6 Backup

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 27/30

Page 32: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Backup - Architecture

Architecture schema

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 28/30

Page 33: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Backup - Architecture

TODO

Missing featuresI Overlay/resources extraction

I Emulator

I PDB generation

I More tasks!

I More IDA functionalities (structs, segments, . . . )

I Fix bugs!

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 29/30

Page 34: Challenges of collaborative malware analysis - Polichombr · Introduction What is it about Operational malware analysis I Malwares everywhere! I Malware writers are more numerous

Backup - State of the art

Existing tools and limits

Main tools:I IDAScope

I IDAToolbag

I Viper

I CrowdRE

I Manalyze

Why we didn’t choose them for the taskI Often unmaintained

I Or not open source

I Scaling problem

I None of them were a silver bullet for our problems

ANSSI/COSSI/DTO/BFS — SOGETI ESEC Challenges of collaborative malware analysis 30/30