• No results found

Web Exploit Finder. Detecting Drive-By-Downloads in a virtualized environment. Benjamin Mack xnos Internet Services

N/A
N/A
Protected

Academic year: 2021

Share "Web Exploit Finder. Detecting Drive-By-Downloads in a virtualized environment. Benjamin Mack xnos Internet Services"

Copied!
31
0
0

Loading.... (view fulltext now)

Full text

(1)

Web Exploit Finder

Web Exploit Finder

Detecting Drive-By-Downloads Detecting Drive-By-Downloads in a virtualized environment in a virtualized environment

Benjamin Mack

Benjamin Mack

xnos Internet Services

(2)

About Benjamin Mack

 Student of „computer science and media“ at the Hochschule

der Medien, Stuttgart since 2003

 Started xnos Internet Services for

Hosting, Security and Web Development in 2006

 Finishing my diploma thesis in late 2007

(3)

 The Problem

 What are malicious websites?

 Our Approach

 Features  Architecture  Rootkit

 Fast reproduction of virtual clients  Inspecting a website

(4)

 Developed by Thomas Müller, Mehmet Arziman and

Benjamin Mack in Summer 06

 Student project from the

Hochschule der Medien, Stuttgart

 Now hosted, developed and supported

by xnos Internet Services

(5)

Introduction

 A lot of software connects to the internet

 Security threats occur through

remote code execution after buffer overflows

(6)

The Problem

 Focus on internet browsers

 Both Microsoft Internet Explorer and Mozilla Firefox

still include several vulnerabilities

 Primary user interfaces to the WWW

 Browsers are used most frequently

(7)

The Problem

 Many users don't install security updates

 Even fully patched systems are

vulnerable to zero-day exploits

 Unknown amount of malicious sites on the web

(8)

The Problem

 What is „malicious“?

 How can we detect malicious web content?

(9)

What is malicious?

 A website that downloads and installs

a malicious software (virus, trojan horse) on the local system without any user interaction.

 so-called „Drive-By-Downloads“

(10)

How does a hacker achieve this?

 Attacker executes his code in the browser through a

buffer overflow

 Execution code is limited

 Only a small „Dropper“ or „Downloader“ is run which

retrieves the malicious software  Starts new processes

 Modifies the registry

(11)

Worst Case

 Windows XP Professional w/o Service Packs

 No security updates installed

 Windows running as an Administrator

 Using Microsoft Internet Explorer 6

(12)

How can we detect malicious software?

 Two techniques

Intrusion Detection

Compare the state of the system before and after a visit to a website

Rootkit

Monitor suspicious actions in real-time modifying the operating system

(13)

How can we design an adequate system?

 The system should be

 automatic, require little user interaction

 controlled remotely, with a web interface

 scalable and extensible

(14)

System Architecture

 Virtualization layer

 protect the system

 check multiple websites simultaneously

VMware Server

 Client OS component

 modify the operating system  monitor system calls

(15)

System Architecture

 Browser Control

 manage the rootkit  control the browser

 communicate with the management console

Windows MFC Application

 Management Console

 configure and control the system  monitor system calls

(16)

System Architecture

Linux

JBoss Application Server

DHCP Server Web-GUI (JSF) Business Logic (EJB 3.0) Linux Microsoft Internet Explorer VMware Server Windows XP (virtualized) SOAP WebServices (XFire) Browser Control Rootkit Kernel-Mode-Driver SOAP

Client ControlRootkit RemotingIE

Remoting Scripts VMware Manager DB (MySQL) Management Console

(17)

Rootkit

 SSDT-Hooking

 Redirects the system call

 Access to the protected memory of the kernel

(18)

The Windows API

Windows Kernel (Ntoskrnl.exe)

Ntdll.dll

K er n el3 2 .d ll G d i3 2 .d ll U se r3 2 .d ll A d va p i3 2 .d ll O S/ 2 S u b sy st em PO SI X S u b sy st em

Win32 Applications

Dispatcher-Stubs NtCreateFile() Method Real Implementation

ZwCreateFile() Method

Application call CreateFile()

(19)

Kernel Rootkit: SSDT Hooking

ServiceTable ArgumentTable ServiceLimit CounterTable

SSDT

ZwCreateFile()

-SST

Ntoskrnl.exe

ZwCreateFile()

1

ServiceTable ArgumentTable ServiceLimit CounterTable ZwCreateFile()

-Ntoskrnl.exe

ZwCreateFile() CALL(ZwCreateFile())

Hook Function

<prolog> <epilog>

1

2

3

Before:

After:

SSDT

SST

(20)

VMware Manager

 Our virtualized environment needs to...

 Create a new virtual machine

 Clone from a clean template

 Copy the most recent version of the rootkit  Take a snapshot to revert fast

 Revert to a clean state

(21)

Creating a new Virtual Machine

JBoss Application Server

DHCP Server Web-GUI (JSF) Business Logic (EJB 3.0) Microsoft Internet Explorer VMware Server Windows XP (virtualized) SOAP WebServices (XFire) Browser Control Rootkit Kernel-Mode-Driver SOAP

Client ControlRootkit RemotingIE

Remoting Scripts VMware Manager DB (MySQL) Management Console

(22)

VMware Control

Cloned Windows XP (virtualized) ● cloneVM() ● revertVM() ● deleteVM() ● listVMs() Bash Scripts C Program vmware-cmd

● Request new IP Address ● Copy prototype image

New IP Address VMware Manager Manage-ment Console

Register the new VM Create Snapshot Copy Rootkit & BrowserControl VMware Server C-API Remoting Scripts

(23)

Browser Control

 Communicate with the Management Console

 Get URL to check

 Tell if website was malicious  use SOAP calls (gSOAP)

 Communicate with the Rootkit

 Start & Stop Hooking  Configure Rootkit

(24)

Browser Control

Microsoft Internet Explorer 6

Windows XP (virtualized)Rootkit

SOAP

Client ControlRootkit

(IOCTL) IE Remoting ● register() ● getFilterList() ● getNextUrl() ● reportResult() SOAP Core (Business Logic) ● startIE() ● closeIE() ● goToURL() ● navigate() ● monitors IE Process ● load Rootkit-Driver

● send filter list

● start and stop hooking ● request result

(25)

Management Console

 Web Interface

 Display running VMs  Manually add URLs

 Create more virtual machines  Manage filters

 Web Crawler

 Automatically add more URLs to check all of them  Store in database

(26)

State of the system

 Beta phase

 The system works

 Rootkit needs some small adjustments

 Implementing the crawler

 Web interface rewrite

(27)

Future Plans

 First open-source release in the next weeks

 including a complete manual to set the software up

 will be available on www.xnos.org

 New Features

 Try different IE versions

(28)

Future Plans contd.

 Different virtualization technologies

 Xen (for Windows with HVM)

 Different operating systems as clients

 Windows Vista (32 bit)  Linux

 Cooperating with other client honeypot projects

(29)

Support wanted

 System has a lot of potential

 Dutch government and a couple of

big companies want to use WEF already

 We need developers once the software

is released as open-source

 We need support

 Either by testing the package or  by sponsoring the developers

(30)

Questions

(31)

xnos Internet Services

xnos Internet Services

Benjamin Mack

Benjamin Mack

Gartenstraße 29 Gartenstraße 29 70563 Stuttgart 70563 Stuttgart Phone Phone +49 711 508 85 44 22+49 711 508 85 44 22 Fax Fax +49 711 508 85 44 29+49 711 508 85 44 29 [email protected] [email protected] www.xnos.de www.xnos.de

References

Related documents

Microsoft, MS-DOS, Windows, Windows NT, Windows Server, Windows Mobile, Windows XP, Windows Vista, ActiveSync, Windows Mobile Device Center, Internet Explorer, Windows Live, MSN,

BCU Ethernet TCP/IP Web browser running on user PC Web Server Internet or intranet Web browser running on user PC Firewall PC Workstation Web Server Web browser running on user

Windows Integrated Login provides SSO using the Kerberos technology associated with Active Directory ®.. When a Web server receives a request from an Internet Explorer browser, it

Microsoft Web Development Stack Windows Internet Information Services (IIS) ASP.NET Visual Studio SQL Server.. ASP.NET

Now that you’ve deployed the EJB application as a web service, you’ll use the Web Services Explorer to browse to the Axis server hosting the service, display the EJB service,

Microsoft, Microsoft Windows, Active Directory, ActiveSync, Internet Explorer, Windows Mobile, Windows Server, Windows XP, SQL Server, Windows XP Tablet PC Edition and Windows

If you are installing Web Interface for Microsoft Internet Information Services on a 64-bit version of Windows Server 2003, ensure that you install the Web Interface prior

Accessing Team Foundation Server Through a Web Browser 74 Using Team Foundation Server in Microsoft Excel 75 Using Team Foundation Server in Microsoft Project 76 Windows