SlideShare a Scribd company logo
1 of 48
Download to read offline
1
LEVERAGING VMWARE'S RPC
INTERFACE FOR FUN AND PROFIT
2
Agenda
• Introduction
• VMware General Architecture (Simplified)
• Host <-> Guest Communication
– Backdoor Interface
• VM RPC Interface
– Functions
– Recording Guest -> Host RPC requests
• Developing tools to query the RPC Interface
– C++
– Python
• C Extension
• CTypes
• VMware UAF Exploitation
– Controlling Freed Objects
– Finding Exploit primitives
– Demo
• Conclusion
3
Introductions
4
Abdul-Aziz Hariri
• BS in Computer Sciences – University of Balamand
• Currently a Senior Security Researcher at ZDI
– Root Cause analysis / Vulnerability Research / Exploit development
– ZDI Case Lead
– Pwn2Own Preparation / Judging entries
• Past Experiences
– Bits Arabia, Insight-Tech and Morgan Stanley
• Past research:
– Pwn4Fun 2014 renderer exploit writer
– Microsoft Bounty submission
– Patents on Exploit Mitigation Technologies
– Adobe Reader research
• Twitter: @abdhariri
5
Jasiel Spelman
• BA in Computer Science – University of Texas at Austin
• Currently a Senior Security Researcher at ZDI
– Root Cause analysis / Vulnerability Research / Exploit development
– ZDI Research Lead
– Pwn2Own Invigilator
• Past Experiences
– TippingPoint Digital Vaccine team
• Past research:
– Pwn4Fun 2014 sandbox escape exploit writer
– Patents on zero day protection technologies
– Windows kernel information leaks
– Adobe Flash RE & RCE vulnerabilities
• Twitter: @WanderingGlitch
6
Brian Gorenc
• BS in Computer Engineering – Texas A&M University
• MS in Software Engineering – Southern Methodist University
• Director of Vulnerability Research at Trend Micro
– Leads the Zero Day Initiative
– Organizes Pwn2Own
– Approver of Payments
• Past Experiences
– Lead Developer at Lockheed Martin
• Past research:
– Microsoft Bounty submission
– Patents on Exploit Mitigation Technologies
– Bug hunting in many products
• Twitter: @MaliciousInput
7
VMware General Architecture
8
VMware General Architecture (Simplified*)
Hypervisor
Guest
vmware-vmx
CPU
Guest
vmware-vmx
CPU
vmware tools libs
I/O I/O
Management Layer
* very
What’s going on here?
9
Good Question
• As it turns out, quite a bit
• Regardless of whether VMware tools are installed
10
Host <-> Guest Communication
11
Host <-> Guest Communication
• Communication is done by accessing special I/O ports
• VMware implements an interface called “Backdoor”
– Hijacks the IN/OUT instructions
– Supports multiple commands
– Supports two protocols: RPCI and TCLO
– Can be used to extract host information
– Can be used to send Guest->Host RPC requests
• The Backdoor interface is enabled by default
12
Host <-> Guest Communication - Backdoor
• Supports multiple
commands/functions
– The commands can be found in
the open-vm-tools on github
– backdoor_def.h defines these
commands
• The guest can invoke more of
these commands than you
think…
13
Host <-> Guest Communication - Backdoor
• Invoking Backdoor functions is simple:
mov eax, 564D5868h /* magic number */
mov ebx, command-specific-parameter
mov cx, command-number /* 1001e = RPC */
mov dx, 5658h /* VMware I/O port */
in eax, dx
14
Host <-> Guest Communication - Backdoor
Hypervisor
(host)
Guest
(vm)
Backdoor Channel
TCLO
RPCI
Low-bandwidth
High-bandwidth
Backdoor Channel
Other
15
Host <-> Guest Communication - RPCI
• Supports multiple
commands
– Rpctool.exe can be used to
query some of the
commands.
– Rpctool.exe is open source
and can be found in the
open-vm-tools
– These RPC commands can
be found in vmware-
vmx.exe and sprinkled
throughout the open-vm-
tools source
16
Host <-> Guest Communication - RPCI
17
Host <-> Guest Communication – Summary
• Backdoor Interface is used for Host/Guest communication
• Hijacks in/out instructions
• RPCI is used from guest -> host
• TCLO is used from host -> guest
• RPCI commands can be found in vmware-vmx{.exe}
• open-vm-tools is a goldmine!
18
VM RPC Interface
19
GuestRPC
• The RPC requests are sent through the “backdoor” channel
• Specifically, the BDOOR_CMD_MESSAGE (0x1E)
• The Guest Messages are defined in guest_msg_def.h
• GuestRPC supports multiple message types:
20
GuestRPC
• Example of a simple GuestRPC message:
mov eax, 0x564D5868
mov ecx, 0x001e //MESSAGE_TYPE_OPEN
mov edx, 0x5658
mov ebx, 0xC9435052
in eax, dx
mov eax, 0x564D5868
mov ecx, 0x1001e //MESSAGE_TYPE_SENDSIZE
mov edx, 0x5658
mov ebx, SIZE
in eax, dx
mov eax, 0x564D5868
mov ecx, 0x6001e //MESSAGE_TYPE_CLOSE
mov edx, 0x5658
mov ebx, SIZE
in eax, dx
21
GuestRPC
• GuestRPC requests are are parsed within vmware-vmx{.exe}
• GuestRPC Messages/Functions are also implemented inside vmware-vmx{.exe}
• If we look closely inside GuestRPC_Funcs we will notice the following:
22
GuestRPC – ExecRPCRequest
• The function takes the RPC request as an argument
• Checks if the RPC function being passed is valid
• Checks if we have enough permissions to execute the
function
• Executes it
23
GuestRPC – Sniffing RPC Requests
• Since this is exactly where RPC requests are parsed, we can actually hook
this function and sniff the requests being sent
• For this task we used pykd 
– Set a breakpoint on the ExecRPCRequest function
– A pointer pointing to the request is set in the r8 register
– The length of the request is set in the r9 register
• Should look similar to the following
24
GuestRPC – Sniffing RPC Requests - DEMO
• DEMO
25
Developing tools to query the RPC
Interface
26
Tools Dev
• One of the challenging problems with VMware and RPC is tools development
for:
– Case analysis
– Exploit development
– Fuzzing
• While we can definitely use the open-vm-tools to develop tools in C++, there are
still challenges:
– There are functions that definitely needs to be implemented in ASM
– Without ASM we’ll need to use the exports from vmtools.dll
• Still a little bit of a hustle
27
Tools Dev - C++, take 1
• Add the open-vm-tools headers to the Include Directories
28
Tools Dev - C++, take 2
• Assembly..Since some function are
not fully implemented in the tools,
thus in order to step out of the
vmtools.dll we’d need to
implement some functions in ASM
29
Tools Dev - C++, take 2, continued
• As for implementing a function to
send RPC requests through the
backdoor channel in ASM, it
should be pretty simple
30
Tools Dev
• All that is still not enough
• We need something for FAST tools development
• Python? Yup, we implemented simple ways to send RPC requests through
python:
– C Extensions
– Ctypes
• Unfortunately, Josh (@kernelsmith) (our DevOps manager) wanted to
implement something similar in Ruby.
31
Tools Dev – Python, C Extensions
• C Extensions are awesome
• It’s a shared Library (.pyd) on Windows which exports an initialization
function
• The shared library can be imported from python
32
Tools Dev – Python, C Extensions
33
Tools Dev – Python, CTypes
• Ctypes provides C compatible data types
• Allows calling functions in DLLs or shared libraries
34
Fuzzing the RPC Interface
35
Fuzzing the RPC Interface
• Fuzzing the RPC interface requires tooling both on the GuestOS and the
HostOS
• Some problems that we’d need to tackle:
– Detecting Crashes from the host (Mostly debugging vmware-vmx in this case)
– Testcase generation (can be on the GuestOS but we want the guest to stay light)
– GuestOS VM(s) management from the HostOS
36
Fuzzing the RPC Interface
Host
VMWare
WorkStation
Framework
Manage through vmrun
attach
Agent
monitor
Send test cases
mutator
start vmx
37
Fuzzing the RPC Interface - InMemory
• Since we know exactly were the RPC requests are being parsed, we can
actually do InMemory fuzzing:
– Hook ExecRPCRequest (on the HostOS)
– Modify the RPC request before it gets parsed
– Wait for crashes
• Additional tooling required:
– Crash Detection (From HostOS)
– Record modifications (From the HostOS)
38
Fuzzing the RPC Interface - InMemory
DEMO
39
VMware Drag and Drop UAF
40
VMware DnD UAF – Root Cause
• The Free is triggered when the DnD version is changed multiple times
• The re-use happens when a random DnD function is called after the Free
• The PoC is relatively simple:
41
VMware DnD UAF – Root Cause
• If triggered successfully
we should end up in a
crash similar to the following:
• To verify further,
!heap –p –a @RCX will
show us where the
Free happened:
42
VMware DnD UAF – Root Cause
• Next, we will need to get the size of the Free’d object
• In order to do that, we will need to break right before the Free happens and run
!heap –p –a on the address before it gets Freed
43
VMware DnD UAF – Exploiting the vulnerability
• First we will need to find a way to
control the Freed object before
it gets re-used
• This can be done by sending an
arbitrary GuestRPC request
through the backdoor channel
• For example through the
tools.capability.guest_temp_directory
RPC function
44
VMware DnD UAF – Exploiting the vulnerability
• Next question is where should I put my ROP chain? Should I heap spray?
• The answer was in the unity.window.contents.start RPC function
45
VMware DnD UAF – Exploiting the vulnerability
• What does the plan of action look like now?
– Send a unity.window.contents.start request with a ROP chain that sets RSP to RDI.
– Trigger the free.
– Overwrite the freed object with another one. The freed object should contain the address of
vmware_vmx+0xb870f8.
– Trigger the re-use using a request that contains the ROP chain to gain RCE.
• There is an RWX region in vmware-vmx, so you know what the ROP chain should
do ;)
46
VMware DnD UAF
47
Conclusion
49

More Related Content

What's hot

How to Prevent RFI and LFI Attacks
How to Prevent RFI and LFI AttacksHow to Prevent RFI and LFI Attacks
How to Prevent RFI and LFI AttacksImperva
 
CanSecWest 2017 - Port(al) to the iOS Core
CanSecWest 2017 - Port(al) to the iOS CoreCanSecWest 2017 - Port(al) to the iOS Core
CanSecWest 2017 - Port(al) to the iOS CoreStefan Esser
 
Mis Capstone Presentation
Mis Capstone PresentationMis Capstone Presentation
Mis Capstone PresentationBenHnat
 
Attack and Mitigation for Insecure Deserialization
Attack and Mitigation for Insecure DeserializationAttack and Mitigation for Insecure Deserialization
Attack and Mitigation for Insecure DeserializationSukhpreet Singh
 
A story of the passive aggressive sysadmin of AEM
A story of the passive aggressive sysadmin of AEMA story of the passive aggressive sysadmin of AEM
A story of the passive aggressive sysadmin of AEMFrans Rosén
 
2022 APIsecure_Method for exploiting IDOR on nodejs+mongodb based backend
2022 APIsecure_Method for exploiting IDOR on nodejs+mongodb based backend2022 APIsecure_Method for exploiting IDOR on nodejs+mongodb based backend
2022 APIsecure_Method for exploiting IDOR on nodejs+mongodb based backendAPIsecure_ Official
 
애플리케이션 최적화를 위한 컨테이너 인프라 구축
애플리케이션 최적화를 위한 컨테이너 인프라 구축애플리케이션 최적화를 위한 컨테이너 인프라 구축
애플리케이션 최적화를 위한 컨테이너 인프라 구축rockplace
 
Cruise Control: Effortless management of Kafka clusters
Cruise Control: Effortless management of Kafka clustersCruise Control: Effortless management of Kafka clusters
Cruise Control: Effortless management of Kafka clustersPrateek Maheshwari
 
Architecting ASP.NET Core Microservices Applications on AWS (WIN401) - AWS re...
Architecting ASP.NET Core Microservices Applications on AWS (WIN401) - AWS re...Architecting ASP.NET Core Microservices Applications on AWS (WIN401) - AWS re...
Architecting ASP.NET Core Microservices Applications on AWS (WIN401) - AWS re...Amazon Web Services
 
Burp Suite v1.1 Introduction
Burp Suite v1.1 IntroductionBurp Suite v1.1 Introduction
Burp Suite v1.1 IntroductionAshraf Bashir
 
Adopting Java for the Serverless world at Serverless Meetup New York and Boston
Adopting Java for the Serverless world at Serverless Meetup New York and BostonAdopting Java for the Serverless world at Serverless Meetup New York and Boston
Adopting Java for the Serverless world at Serverless Meetup New York and BostonVadym Kazulkin
 
SSH - Secure Shell
SSH - Secure ShellSSH - Secure Shell
SSH - Secure ShellSouhaib El
 
Deploying openstack using ansible
Deploying openstack using ansibleDeploying openstack using ansible
Deploying openstack using ansibleopenstackindia
 
Continuous Deployment Practices, with Production, Test and Development Enviro...
Continuous Deployment Practices, with Production, Test and Development Enviro...Continuous Deployment Practices, with Production, Test and Development Enviro...
Continuous Deployment Practices, with Production, Test and Development Enviro...Amazon Web Services
 

What's hot (20)

API Management
API ManagementAPI Management
API Management
 
How to Prevent RFI and LFI Attacks
How to Prevent RFI and LFI AttacksHow to Prevent RFI and LFI Attacks
How to Prevent RFI and LFI Attacks
 
CanSecWest 2017 - Port(al) to the iOS Core
CanSecWest 2017 - Port(al) to the iOS CoreCanSecWest 2017 - Port(al) to the iOS Core
CanSecWest 2017 - Port(al) to the iOS Core
 
Mis Capstone Presentation
Mis Capstone PresentationMis Capstone Presentation
Mis Capstone Presentation
 
Wazuh Pre.pptx
Wazuh Pre.pptxWazuh Pre.pptx
Wazuh Pre.pptx
 
Attack and Mitigation for Insecure Deserialization
Attack and Mitigation for Insecure DeserializationAttack and Mitigation for Insecure Deserialization
Attack and Mitigation for Insecure Deserialization
 
A story of the passive aggressive sysadmin of AEM
A story of the passive aggressive sysadmin of AEMA story of the passive aggressive sysadmin of AEM
A story of the passive aggressive sysadmin of AEM
 
2022 APIsecure_Method for exploiting IDOR on nodejs+mongodb based backend
2022 APIsecure_Method for exploiting IDOR on nodejs+mongodb based backend2022 APIsecure_Method for exploiting IDOR on nodejs+mongodb based backend
2022 APIsecure_Method for exploiting IDOR on nodejs+mongodb based backend
 
애플리케이션 최적화를 위한 컨테이너 인프라 구축
애플리케이션 최적화를 위한 컨테이너 인프라 구축애플리케이션 최적화를 위한 컨테이너 인프라 구축
애플리케이션 최적화를 위한 컨테이너 인프라 구축
 
Cruise Control: Effortless management of Kafka clusters
Cruise Control: Effortless management of Kafka clustersCruise Control: Effortless management of Kafka clusters
Cruise Control: Effortless management of Kafka clusters
 
.NET MAUI + Azure AD B2C
.NET MAUI + Azure AD B2C.NET MAUI + Azure AD B2C
.NET MAUI + Azure AD B2C
 
Architecting ASP.NET Core Microservices Applications on AWS (WIN401) - AWS re...
Architecting ASP.NET Core Microservices Applications on AWS (WIN401) - AWS re...Architecting ASP.NET Core Microservices Applications on AWS (WIN401) - AWS re...
Architecting ASP.NET Core Microservices Applications on AWS (WIN401) - AWS re...
 
Bug Bounty 101
Bug Bounty 101Bug Bounty 101
Bug Bounty 101
 
Network management with Aruba AirWave
Network management with Aruba AirWaveNetwork management with Aruba AirWave
Network management with Aruba AirWave
 
Burp Suite v1.1 Introduction
Burp Suite v1.1 IntroductionBurp Suite v1.1 Introduction
Burp Suite v1.1 Introduction
 
Adopting Java for the Serverless world at Serverless Meetup New York and Boston
Adopting Java for the Serverless world at Serverless Meetup New York and BostonAdopting Java for the Serverless world at Serverless Meetup New York and Boston
Adopting Java for the Serverless world at Serverless Meetup New York and Boston
 
SSH - Secure Shell
SSH - Secure ShellSSH - Secure Shell
SSH - Secure Shell
 
Présentation maas
Présentation maasPrésentation maas
Présentation maas
 
Deploying openstack using ansible
Deploying openstack using ansibleDeploying openstack using ansible
Deploying openstack using ansible
 
Continuous Deployment Practices, with Production, Test and Development Enviro...
Continuous Deployment Practices, with Production, Test and Development Enviro...Continuous Deployment Practices, with Production, Test and Development Enviro...
Continuous Deployment Practices, with Production, Test and Development Enviro...
 

Similar to For the Greater Good: Leveraging VMware's RPC Interface for fun and profit by Abdul aziz-hariri, Jasiel Spelman, Brian Gorenc

[若渴計畫] Challenges and Solutions of Window Remote Shellcode
[若渴計畫] Challenges and Solutions of Window Remote Shellcode[若渴計畫] Challenges and Solutions of Window Remote Shellcode
[若渴計畫] Challenges and Solutions of Window Remote ShellcodeAj MaChInE
 
Hacking Highly Secured Enterprise Environments by Zoltan Balazs
Hacking Highly Secured Enterprise Environments by Zoltan BalazsHacking Highly Secured Enterprise Environments by Zoltan Balazs
Hacking Highly Secured Enterprise Environments by Zoltan BalazsShakacon
 
Socially Acceptable Methods to Walk in the Front Door
Socially Acceptable Methods to Walk in the Front DoorSocially Acceptable Methods to Walk in the Front Door
Socially Acceptable Methods to Walk in the Front DoorMike Felch
 
Docker Swarm secrets for creating great FIWARE platforms
Docker Swarm secrets for creating great FIWARE platformsDocker Swarm secrets for creating great FIWARE platforms
Docker Swarm secrets for creating great FIWARE platformsFederico Michele Facca
 
DEFCON 22: Bypass firewalls, application white lists, secure remote desktops ...
DEFCON 22: Bypass firewalls, application white lists, secure remote desktops ...DEFCON 22: Bypass firewalls, application white lists, secure remote desktops ...
DEFCON 22: Bypass firewalls, application white lists, secure remote desktops ...Zoltan Balazs
 
Orchestrating Linux Containers while tolerating failures
Orchestrating Linux Containers while tolerating failuresOrchestrating Linux Containers while tolerating failures
Orchestrating Linux Containers while tolerating failuresDocker, Inc.
 
Splunk: Forward me the REST of those shells
Splunk: Forward me the REST of those shellsSplunk: Forward me the REST of those shells
Splunk: Forward me the REST of those shellsAnthony D Hendricks
 
Tick Stack - Listen your infrastructure and please sleep
Tick Stack - Listen your infrastructure and please sleepTick Stack - Listen your infrastructure and please sleep
Tick Stack - Listen your infrastructure and please sleepGianluca Arbezzano
 
FIWARE Tech Summit - Docker Swarm Secrets for Creating Great FIWARE Platforms
FIWARE Tech Summit - Docker Swarm Secrets for Creating Great FIWARE PlatformsFIWARE Tech Summit - Docker Swarm Secrets for Creating Great FIWARE Platforms
FIWARE Tech Summit - Docker Swarm Secrets for Creating Great FIWARE PlatformsFIWARE
 
FreeSWITCH as a Microservice
FreeSWITCH as a MicroserviceFreeSWITCH as a Microservice
FreeSWITCH as a MicroserviceEvan McGee
 
Docker Security
Docker SecurityDocker Security
Docker Securityantitree
 
BSides_Charm2015_Info sec hunters_gathers
BSides_Charm2015_Info sec hunters_gathersBSides_Charm2015_Info sec hunters_gathers
BSides_Charm2015_Info sec hunters_gathersAndrew McNicol
 
I got 99 trends and a # is all of them
I got 99 trends and a # is all of themI got 99 trends and a # is all of them
I got 99 trends and a # is all of themRoberto Suggi Liverani
 
[NYC Meetup] Docker at Nuxeo
[NYC Meetup] Docker at Nuxeo[NYC Meetup] Docker at Nuxeo
[NYC Meetup] Docker at NuxeoNuxeo
 
Developing and Deploying PHP with Docker
Developing and Deploying PHP with DockerDeveloping and Deploying PHP with Docker
Developing and Deploying PHP with DockerPatrick Mizer
 
Docker presentasjon java bin
Docker presentasjon java binDocker presentasjon java bin
Docker presentasjon java binOlve Hansen
 
Php through the eyes of a hoster phpbnl11
Php through the eyes of a hoster phpbnl11Php through the eyes of a hoster phpbnl11
Php through the eyes of a hoster phpbnl11Combell NV
 

Similar to For the Greater Good: Leveraging VMware's RPC Interface for fun and profit by Abdul aziz-hariri, Jasiel Spelman, Brian Gorenc (20)

[若渴計畫] Challenges and Solutions of Window Remote Shellcode
[若渴計畫] Challenges and Solutions of Window Remote Shellcode[若渴計畫] Challenges and Solutions of Window Remote Shellcode
[若渴計畫] Challenges and Solutions of Window Remote Shellcode
 
moscmy2016: Extending Docker
moscmy2016: Extending Dockermoscmy2016: Extending Docker
moscmy2016: Extending Docker
 
Hacking Highly Secured Enterprise Environments by Zoltan Balazs
Hacking Highly Secured Enterprise Environments by Zoltan BalazsHacking Highly Secured Enterprise Environments by Zoltan Balazs
Hacking Highly Secured Enterprise Environments by Zoltan Balazs
 
Socially Acceptable Methods to Walk in the Front Door
Socially Acceptable Methods to Walk in the Front DoorSocially Acceptable Methods to Walk in the Front Door
Socially Acceptable Methods to Walk in the Front Door
 
Demystfying container-networking
Demystfying container-networkingDemystfying container-networking
Demystfying container-networking
 
Docker Swarm secrets for creating great FIWARE platforms
Docker Swarm secrets for creating great FIWARE platformsDocker Swarm secrets for creating great FIWARE platforms
Docker Swarm secrets for creating great FIWARE platforms
 
DEFCON 22: Bypass firewalls, application white lists, secure remote desktops ...
DEFCON 22: Bypass firewalls, application white lists, secure remote desktops ...DEFCON 22: Bypass firewalls, application white lists, secure remote desktops ...
DEFCON 22: Bypass firewalls, application white lists, secure remote desktops ...
 
Orchestrating Linux Containers while tolerating failures
Orchestrating Linux Containers while tolerating failuresOrchestrating Linux Containers while tolerating failures
Orchestrating Linux Containers while tolerating failures
 
Splunk: Forward me the REST of those shells
Splunk: Forward me the REST of those shellsSplunk: Forward me the REST of those shells
Splunk: Forward me the REST of those shells
 
Tick Stack - Listen your infrastructure and please sleep
Tick Stack - Listen your infrastructure and please sleepTick Stack - Listen your infrastructure and please sleep
Tick Stack - Listen your infrastructure and please sleep
 
Docker Introduction
Docker IntroductionDocker Introduction
Docker Introduction
 
FIWARE Tech Summit - Docker Swarm Secrets for Creating Great FIWARE Platforms
FIWARE Tech Summit - Docker Swarm Secrets for Creating Great FIWARE PlatformsFIWARE Tech Summit - Docker Swarm Secrets for Creating Great FIWARE Platforms
FIWARE Tech Summit - Docker Swarm Secrets for Creating Great FIWARE Platforms
 
FreeSWITCH as a Microservice
FreeSWITCH as a MicroserviceFreeSWITCH as a Microservice
FreeSWITCH as a Microservice
 
Docker Security
Docker SecurityDocker Security
Docker Security
 
BSides_Charm2015_Info sec hunters_gathers
BSides_Charm2015_Info sec hunters_gathersBSides_Charm2015_Info sec hunters_gathers
BSides_Charm2015_Info sec hunters_gathers
 
I got 99 trends and a # is all of them
I got 99 trends and a # is all of themI got 99 trends and a # is all of them
I got 99 trends and a # is all of them
 
[NYC Meetup] Docker at Nuxeo
[NYC Meetup] Docker at Nuxeo[NYC Meetup] Docker at Nuxeo
[NYC Meetup] Docker at Nuxeo
 
Developing and Deploying PHP with Docker
Developing and Deploying PHP with DockerDeveloping and Deploying PHP with Docker
Developing and Deploying PHP with Docker
 
Docker presentasjon java bin
Docker presentasjon java binDocker presentasjon java bin
Docker presentasjon java bin
 
Php through the eyes of a hoster phpbnl11
Php through the eyes of a hoster phpbnl11Php through the eyes of a hoster phpbnl11
Php through the eyes of a hoster phpbnl11
 

More from CODE BLUE

[cb22] Hayabusa Threat Hunting and Fast Forensics in Windows environments fo...
[cb22] Hayabusa  Threat Hunting and Fast Forensics in Windows environments fo...[cb22] Hayabusa  Threat Hunting and Fast Forensics in Windows environments fo...
[cb22] Hayabusa Threat Hunting and Fast Forensics in Windows environments fo...CODE BLUE
 
[cb22] Tales of 5G hacking by Karsten Nohl
[cb22] Tales of 5G hacking by Karsten Nohl[cb22] Tales of 5G hacking by Karsten Nohl
[cb22] Tales of 5G hacking by Karsten NohlCODE BLUE
 
[cb22] Your Printer is not your Printer ! - Hacking Printers at Pwn2Own by A...
[cb22]  Your Printer is not your Printer ! - Hacking Printers at Pwn2Own by A...[cb22]  Your Printer is not your Printer ! - Hacking Printers at Pwn2Own by A...
[cb22] Your Printer is not your Printer ! - Hacking Printers at Pwn2Own by A...CODE BLUE
 
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...CODE BLUE
 
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(4) by 板橋 博之
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(4) by 板橋 博之[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(4) by 板橋 博之
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(4) by 板橋 博之CODE BLUE
 
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...CODE BLUE
 
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(3) by Lorenzo Pupillo
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(3) by Lorenzo Pupillo[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(3) by Lorenzo Pupillo
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(3) by Lorenzo PupilloCODE BLUE
 
[cb22] ”The Present and Future of Coordinated Vulnerability Disclosure” Inte...
[cb22]  ”The Present and Future of Coordinated Vulnerability Disclosure” Inte...[cb22]  ”The Present and Future of Coordinated Vulnerability Disclosure” Inte...
[cb22] ”The Present and Future of Coordinated Vulnerability Disclosure” Inte...CODE BLUE
 
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(2)by Allan Friedman
[cb22]  「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(2)by Allan Friedman [cb22]  「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(2)by Allan Friedman
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(2)by Allan Friedman CODE BLUE
 
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...CODE BLUE
 
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション (1)by 高橋 郁夫
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション (1)by  高橋 郁夫[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション (1)by  高橋 郁夫
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション (1)by 高橋 郁夫CODE BLUE
 
[cb22] Are Embedded Devices Ready for ROP Attacks? -ROP verification for low-...
[cb22] Are Embedded Devices Ready for ROP Attacks? -ROP verification for low-...[cb22] Are Embedded Devices Ready for ROP Attacks? -ROP verification for low-...
[cb22] Are Embedded Devices Ready for ROP Attacks? -ROP verification for low-...CODE BLUE
 
[cb22] Wslinkのマルチレイヤーな仮想環境について by Vladislav Hrčka
[cb22] Wslinkのマルチレイヤーな仮想環境について by Vladislav Hrčka [cb22] Wslinkのマルチレイヤーな仮想環境について by Vladislav Hrčka
[cb22] Wslinkのマルチレイヤーな仮想環境について by Vladislav Hrčka CODE BLUE
 
[cb22] Under the hood of Wslink’s multilayered virtual machine en by Vladisla...
[cb22] Under the hood of Wslink’s multilayered virtual machine en by Vladisla...[cb22] Under the hood of Wslink’s multilayered virtual machine en by Vladisla...
[cb22] Under the hood of Wslink’s multilayered virtual machine en by Vladisla...CODE BLUE
 
[cb22] CloudDragon’s Credential Factory is Powering Up Its Espionage Activiti...
[cb22] CloudDragon’s Credential Factory is Powering Up Its Espionage Activiti...[cb22] CloudDragon’s Credential Factory is Powering Up Its Espionage Activiti...
[cb22] CloudDragon’s Credential Factory is Powering Up Its Espionage Activiti...CODE BLUE
 
[cb22] From Parroting to Echoing: The Evolution of China’s Bots-Driven Info...
[cb22]  From Parroting to Echoing:  The Evolution of China’s Bots-Driven Info...[cb22]  From Parroting to Echoing:  The Evolution of China’s Bots-Driven Info...
[cb22] From Parroting to Echoing: The Evolution of China’s Bots-Driven Info...CODE BLUE
 
[cb22] Who is the Mal-Gopher? - Implementation and Evaluation of “gimpfuzzy”...
[cb22]  Who is the Mal-Gopher? - Implementation and Evaluation of “gimpfuzzy”...[cb22]  Who is the Mal-Gopher? - Implementation and Evaluation of “gimpfuzzy”...
[cb22] Who is the Mal-Gopher? - Implementation and Evaluation of “gimpfuzzy”...CODE BLUE
 
[cb22] Mal-gopherとは?Go系マルウェアの分類のためのgimpfuzzy実装と評価 by 澤部 祐太, 甘粕 伸幸, 野村 和也
[cb22] Mal-gopherとは?Go系マルウェアの分類のためのgimpfuzzy実装と評価 by 澤部 祐太, 甘粕 伸幸, 野村 和也[cb22] Mal-gopherとは?Go系マルウェアの分類のためのgimpfuzzy実装と評価 by 澤部 祐太, 甘粕 伸幸, 野村 和也
[cb22] Mal-gopherとは?Go系マルウェアの分類のためのgimpfuzzy実装と評価 by 澤部 祐太, 甘粕 伸幸, 野村 和也CODE BLUE
 
[cb22] Tracking the Entire Iceberg - Long-term APT Malware C2 Protocol Emulat...
[cb22] Tracking the Entire Iceberg - Long-term APT Malware C2 Protocol Emulat...[cb22] Tracking the Entire Iceberg - Long-term APT Malware C2 Protocol Emulat...
[cb22] Tracking the Entire Iceberg - Long-term APT Malware C2 Protocol Emulat...CODE BLUE
 
[cb22] Fight Against Malware Development Life Cycle by Shusei Tomonaga and Yu...
[cb22] Fight Against Malware Development Life Cycle by Shusei Tomonaga and Yu...[cb22] Fight Against Malware Development Life Cycle by Shusei Tomonaga and Yu...
[cb22] Fight Against Malware Development Life Cycle by Shusei Tomonaga and Yu...CODE BLUE
 

More from CODE BLUE (20)

[cb22] Hayabusa Threat Hunting and Fast Forensics in Windows environments fo...
[cb22] Hayabusa  Threat Hunting and Fast Forensics in Windows environments fo...[cb22] Hayabusa  Threat Hunting and Fast Forensics in Windows environments fo...
[cb22] Hayabusa Threat Hunting and Fast Forensics in Windows environments fo...
 
[cb22] Tales of 5G hacking by Karsten Nohl
[cb22] Tales of 5G hacking by Karsten Nohl[cb22] Tales of 5G hacking by Karsten Nohl
[cb22] Tales of 5G hacking by Karsten Nohl
 
[cb22] Your Printer is not your Printer ! - Hacking Printers at Pwn2Own by A...
[cb22]  Your Printer is not your Printer ! - Hacking Printers at Pwn2Own by A...[cb22]  Your Printer is not your Printer ! - Hacking Printers at Pwn2Own by A...
[cb22] Your Printer is not your Printer ! - Hacking Printers at Pwn2Own by A...
 
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
 
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(4) by 板橋 博之
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(4) by 板橋 博之[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(4) by 板橋 博之
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(4) by 板橋 博之
 
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
 
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(3) by Lorenzo Pupillo
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(3) by Lorenzo Pupillo[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(3) by Lorenzo Pupillo
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(3) by Lorenzo Pupillo
 
[cb22] ”The Present and Future of Coordinated Vulnerability Disclosure” Inte...
[cb22]  ”The Present and Future of Coordinated Vulnerability Disclosure” Inte...[cb22]  ”The Present and Future of Coordinated Vulnerability Disclosure” Inte...
[cb22] ”The Present and Future of Coordinated Vulnerability Disclosure” Inte...
 
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(2)by Allan Friedman
[cb22]  「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(2)by Allan Friedman [cb22]  「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(2)by Allan Friedman
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(2)by Allan Friedman
 
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
 
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション (1)by 高橋 郁夫
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション (1)by  高橋 郁夫[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション (1)by  高橋 郁夫
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション (1)by 高橋 郁夫
 
[cb22] Are Embedded Devices Ready for ROP Attacks? -ROP verification for low-...
[cb22] Are Embedded Devices Ready for ROP Attacks? -ROP verification for low-...[cb22] Are Embedded Devices Ready for ROP Attacks? -ROP verification for low-...
[cb22] Are Embedded Devices Ready for ROP Attacks? -ROP verification for low-...
 
[cb22] Wslinkのマルチレイヤーな仮想環境について by Vladislav Hrčka
[cb22] Wslinkのマルチレイヤーな仮想環境について by Vladislav Hrčka [cb22] Wslinkのマルチレイヤーな仮想環境について by Vladislav Hrčka
[cb22] Wslinkのマルチレイヤーな仮想環境について by Vladislav Hrčka
 
[cb22] Under the hood of Wslink’s multilayered virtual machine en by Vladisla...
[cb22] Under the hood of Wslink’s multilayered virtual machine en by Vladisla...[cb22] Under the hood of Wslink’s multilayered virtual machine en by Vladisla...
[cb22] Under the hood of Wslink’s multilayered virtual machine en by Vladisla...
 
[cb22] CloudDragon’s Credential Factory is Powering Up Its Espionage Activiti...
[cb22] CloudDragon’s Credential Factory is Powering Up Its Espionage Activiti...[cb22] CloudDragon’s Credential Factory is Powering Up Its Espionage Activiti...
[cb22] CloudDragon’s Credential Factory is Powering Up Its Espionage Activiti...
 
[cb22] From Parroting to Echoing: The Evolution of China’s Bots-Driven Info...
[cb22]  From Parroting to Echoing:  The Evolution of China’s Bots-Driven Info...[cb22]  From Parroting to Echoing:  The Evolution of China’s Bots-Driven Info...
[cb22] From Parroting to Echoing: The Evolution of China’s Bots-Driven Info...
 
[cb22] Who is the Mal-Gopher? - Implementation and Evaluation of “gimpfuzzy”...
[cb22]  Who is the Mal-Gopher? - Implementation and Evaluation of “gimpfuzzy”...[cb22]  Who is the Mal-Gopher? - Implementation and Evaluation of “gimpfuzzy”...
[cb22] Who is the Mal-Gopher? - Implementation and Evaluation of “gimpfuzzy”...
 
[cb22] Mal-gopherとは?Go系マルウェアの分類のためのgimpfuzzy実装と評価 by 澤部 祐太, 甘粕 伸幸, 野村 和也
[cb22] Mal-gopherとは?Go系マルウェアの分類のためのgimpfuzzy実装と評価 by 澤部 祐太, 甘粕 伸幸, 野村 和也[cb22] Mal-gopherとは?Go系マルウェアの分類のためのgimpfuzzy実装と評価 by 澤部 祐太, 甘粕 伸幸, 野村 和也
[cb22] Mal-gopherとは?Go系マルウェアの分類のためのgimpfuzzy実装と評価 by 澤部 祐太, 甘粕 伸幸, 野村 和也
 
[cb22] Tracking the Entire Iceberg - Long-term APT Malware C2 Protocol Emulat...
[cb22] Tracking the Entire Iceberg - Long-term APT Malware C2 Protocol Emulat...[cb22] Tracking the Entire Iceberg - Long-term APT Malware C2 Protocol Emulat...
[cb22] Tracking the Entire Iceberg - Long-term APT Malware C2 Protocol Emulat...
 
[cb22] Fight Against Malware Development Life Cycle by Shusei Tomonaga and Yu...
[cb22] Fight Against Malware Development Life Cycle by Shusei Tomonaga and Yu...[cb22] Fight Against Malware Development Life Cycle by Shusei Tomonaga and Yu...
[cb22] Fight Against Malware Development Life Cycle by Shusei Tomonaga and Yu...
 

Recently uploaded

CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprisepreethippts
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....kzayra69
 
How to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfHow to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfLivetecs LLC
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Mater
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
Best Web Development Agency- Idiosys USA.pdf
Best Web Development Agency- Idiosys USA.pdfBest Web Development Agency- Idiosys USA.pdf
Best Web Development Agency- Idiosys USA.pdfIdiosysTechnologies1
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfStefano Stabellini
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationBradBedford3
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 

Recently uploaded (20)

CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprise
 
Advantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your BusinessAdvantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your Business
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....
 
How to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfHow to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdf
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
Best Web Development Agency- Idiosys USA.pdf
Best Web Development Agency- Idiosys USA.pdfBest Web Development Agency- Idiosys USA.pdf
Best Web Development Agency- Idiosys USA.pdf
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdf
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion Application
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 

For the Greater Good: Leveraging VMware's RPC Interface for fun and profit by Abdul aziz-hariri, Jasiel Spelman, Brian Gorenc

  • 2. 2 Agenda • Introduction • VMware General Architecture (Simplified) • Host <-> Guest Communication – Backdoor Interface • VM RPC Interface – Functions – Recording Guest -> Host RPC requests • Developing tools to query the RPC Interface – C++ – Python • C Extension • CTypes • VMware UAF Exploitation – Controlling Freed Objects – Finding Exploit primitives – Demo • Conclusion
  • 4. 4 Abdul-Aziz Hariri • BS in Computer Sciences – University of Balamand • Currently a Senior Security Researcher at ZDI – Root Cause analysis / Vulnerability Research / Exploit development – ZDI Case Lead – Pwn2Own Preparation / Judging entries • Past Experiences – Bits Arabia, Insight-Tech and Morgan Stanley • Past research: – Pwn4Fun 2014 renderer exploit writer – Microsoft Bounty submission – Patents on Exploit Mitigation Technologies – Adobe Reader research • Twitter: @abdhariri
  • 5. 5 Jasiel Spelman • BA in Computer Science – University of Texas at Austin • Currently a Senior Security Researcher at ZDI – Root Cause analysis / Vulnerability Research / Exploit development – ZDI Research Lead – Pwn2Own Invigilator • Past Experiences – TippingPoint Digital Vaccine team • Past research: – Pwn4Fun 2014 sandbox escape exploit writer – Patents on zero day protection technologies – Windows kernel information leaks – Adobe Flash RE & RCE vulnerabilities • Twitter: @WanderingGlitch
  • 6. 6 Brian Gorenc • BS in Computer Engineering – Texas A&M University • MS in Software Engineering – Southern Methodist University • Director of Vulnerability Research at Trend Micro – Leads the Zero Day Initiative – Organizes Pwn2Own – Approver of Payments • Past Experiences – Lead Developer at Lockheed Martin • Past research: – Microsoft Bounty submission – Patents on Exploit Mitigation Technologies – Bug hunting in many products • Twitter: @MaliciousInput
  • 8. 8 VMware General Architecture (Simplified*) Hypervisor Guest vmware-vmx CPU Guest vmware-vmx CPU vmware tools libs I/O I/O Management Layer * very What’s going on here?
  • 9. 9 Good Question • As it turns out, quite a bit • Regardless of whether VMware tools are installed
  • 10. 10 Host <-> Guest Communication
  • 11. 11 Host <-> Guest Communication • Communication is done by accessing special I/O ports • VMware implements an interface called “Backdoor” – Hijacks the IN/OUT instructions – Supports multiple commands – Supports two protocols: RPCI and TCLO – Can be used to extract host information – Can be used to send Guest->Host RPC requests • The Backdoor interface is enabled by default
  • 12. 12 Host <-> Guest Communication - Backdoor • Supports multiple commands/functions – The commands can be found in the open-vm-tools on github – backdoor_def.h defines these commands • The guest can invoke more of these commands than you think…
  • 13. 13 Host <-> Guest Communication - Backdoor • Invoking Backdoor functions is simple: mov eax, 564D5868h /* magic number */ mov ebx, command-specific-parameter mov cx, command-number /* 1001e = RPC */ mov dx, 5658h /* VMware I/O port */ in eax, dx
  • 14. 14 Host <-> Guest Communication - Backdoor Hypervisor (host) Guest (vm) Backdoor Channel TCLO RPCI Low-bandwidth High-bandwidth Backdoor Channel Other
  • 15. 15 Host <-> Guest Communication - RPCI • Supports multiple commands – Rpctool.exe can be used to query some of the commands. – Rpctool.exe is open source and can be found in the open-vm-tools – These RPC commands can be found in vmware- vmx.exe and sprinkled throughout the open-vm- tools source
  • 16. 16 Host <-> Guest Communication - RPCI
  • 17. 17 Host <-> Guest Communication – Summary • Backdoor Interface is used for Host/Guest communication • Hijacks in/out instructions • RPCI is used from guest -> host • TCLO is used from host -> guest • RPCI commands can be found in vmware-vmx{.exe} • open-vm-tools is a goldmine!
  • 19. 19 GuestRPC • The RPC requests are sent through the “backdoor” channel • Specifically, the BDOOR_CMD_MESSAGE (0x1E) • The Guest Messages are defined in guest_msg_def.h • GuestRPC supports multiple message types:
  • 20. 20 GuestRPC • Example of a simple GuestRPC message: mov eax, 0x564D5868 mov ecx, 0x001e //MESSAGE_TYPE_OPEN mov edx, 0x5658 mov ebx, 0xC9435052 in eax, dx mov eax, 0x564D5868 mov ecx, 0x1001e //MESSAGE_TYPE_SENDSIZE mov edx, 0x5658 mov ebx, SIZE in eax, dx mov eax, 0x564D5868 mov ecx, 0x6001e //MESSAGE_TYPE_CLOSE mov edx, 0x5658 mov ebx, SIZE in eax, dx
  • 21. 21 GuestRPC • GuestRPC requests are are parsed within vmware-vmx{.exe} • GuestRPC Messages/Functions are also implemented inside vmware-vmx{.exe} • If we look closely inside GuestRPC_Funcs we will notice the following:
  • 22. 22 GuestRPC – ExecRPCRequest • The function takes the RPC request as an argument • Checks if the RPC function being passed is valid • Checks if we have enough permissions to execute the function • Executes it
  • 23. 23 GuestRPC – Sniffing RPC Requests • Since this is exactly where RPC requests are parsed, we can actually hook this function and sniff the requests being sent • For this task we used pykd  – Set a breakpoint on the ExecRPCRequest function – A pointer pointing to the request is set in the r8 register – The length of the request is set in the r9 register • Should look similar to the following
  • 24. 24 GuestRPC – Sniffing RPC Requests - DEMO • DEMO
  • 25. 25 Developing tools to query the RPC Interface
  • 26. 26 Tools Dev • One of the challenging problems with VMware and RPC is tools development for: – Case analysis – Exploit development – Fuzzing • While we can definitely use the open-vm-tools to develop tools in C++, there are still challenges: – There are functions that definitely needs to be implemented in ASM – Without ASM we’ll need to use the exports from vmtools.dll • Still a little bit of a hustle
  • 27. 27 Tools Dev - C++, take 1 • Add the open-vm-tools headers to the Include Directories
  • 28. 28 Tools Dev - C++, take 2 • Assembly..Since some function are not fully implemented in the tools, thus in order to step out of the vmtools.dll we’d need to implement some functions in ASM
  • 29. 29 Tools Dev - C++, take 2, continued • As for implementing a function to send RPC requests through the backdoor channel in ASM, it should be pretty simple
  • 30. 30 Tools Dev • All that is still not enough • We need something for FAST tools development • Python? Yup, we implemented simple ways to send RPC requests through python: – C Extensions – Ctypes • Unfortunately, Josh (@kernelsmith) (our DevOps manager) wanted to implement something similar in Ruby.
  • 31. 31 Tools Dev – Python, C Extensions • C Extensions are awesome • It’s a shared Library (.pyd) on Windows which exports an initialization function • The shared library can be imported from python
  • 32. 32 Tools Dev – Python, C Extensions
  • 33. 33 Tools Dev – Python, CTypes • Ctypes provides C compatible data types • Allows calling functions in DLLs or shared libraries
  • 34. 34 Fuzzing the RPC Interface
  • 35. 35 Fuzzing the RPC Interface • Fuzzing the RPC interface requires tooling both on the GuestOS and the HostOS • Some problems that we’d need to tackle: – Detecting Crashes from the host (Mostly debugging vmware-vmx in this case) – Testcase generation (can be on the GuestOS but we want the guest to stay light) – GuestOS VM(s) management from the HostOS
  • 36. 36 Fuzzing the RPC Interface Host VMWare WorkStation Framework Manage through vmrun attach Agent monitor Send test cases mutator start vmx
  • 37. 37 Fuzzing the RPC Interface - InMemory • Since we know exactly were the RPC requests are being parsed, we can actually do InMemory fuzzing: – Hook ExecRPCRequest (on the HostOS) – Modify the RPC request before it gets parsed – Wait for crashes • Additional tooling required: – Crash Detection (From HostOS) – Record modifications (From the HostOS)
  • 38. 38 Fuzzing the RPC Interface - InMemory DEMO
  • 39. 39 VMware Drag and Drop UAF
  • 40. 40 VMware DnD UAF – Root Cause • The Free is triggered when the DnD version is changed multiple times • The re-use happens when a random DnD function is called after the Free • The PoC is relatively simple:
  • 41. 41 VMware DnD UAF – Root Cause • If triggered successfully we should end up in a crash similar to the following: • To verify further, !heap –p –a @RCX will show us where the Free happened:
  • 42. 42 VMware DnD UAF – Root Cause • Next, we will need to get the size of the Free’d object • In order to do that, we will need to break right before the Free happens and run !heap –p –a on the address before it gets Freed
  • 43. 43 VMware DnD UAF – Exploiting the vulnerability • First we will need to find a way to control the Freed object before it gets re-used • This can be done by sending an arbitrary GuestRPC request through the backdoor channel • For example through the tools.capability.guest_temp_directory RPC function
  • 44. 44 VMware DnD UAF – Exploiting the vulnerability • Next question is where should I put my ROP chain? Should I heap spray? • The answer was in the unity.window.contents.start RPC function
  • 45. 45 VMware DnD UAF – Exploiting the vulnerability • What does the plan of action look like now? – Send a unity.window.contents.start request with a ROP chain that sets RSP to RDI. – Trigger the free. – Overwrite the freed object with another one. The freed object should contain the address of vmware_vmx+0xb870f8. – Trigger the re-use using a request that contains the ROP chain to gain RCE. • There is an RWX region in vmware-vmx, so you know what the ROP chain should do ;)
  • 48. 49