SlideShare una empresa de Scribd logo
1 de 56
Descargar para leer sin conexión
Fourteenforty Research Institute, Inc.
11
Fourteenforty Research Institute, Inc.
A Hypervisor IPS based on Hardware Assisted
Virtualization Technology
Fourteenforty Research Institute, Inc.
http://www.fourteenforty.jp
Senior Research Engineer
Junichi Murakami
Fourteenforty Research Institute, Inc.
2
Presentation OutlinePresentation OutlinePresentation OutlinePresentation Outline
1. Review of subversive techniques in kernel space
2. Review of Virtualization Technology
3. Viton, Hypervisor IPS
4. Conclusion
Fourteenforty Research Institute, Inc.
3
• 1. Review of subversive techniques in kernel space
Fourteenforty Research Institute, Inc.
4
Remember Joanna's classificationRemember Joanna's classificationRemember Joanna's classificationRemember Joanna's classification
• Joanna Rutkowska proposed stealth malware taxonomy in November, 2006.
http://invisiblethings.org/papers/malware-taxonomy.pdf
• Type 0
• standalone malware, which never changes any system resources
• Type I
• changes the persistent system resources
• Type II
• changes the non-persistent system resources
• Type III
• malware runs outside the system
Fourteenforty Research Institute, Inc.
5
Type I: Overview of Hooking PointsType I: Overview of Hooking PointsType I: Overview of Hooking PointsType I: Overview of Hooking Points
IDTR
MSR[176h]
SDT
(ntoskrnl.exe)
SDT Shadow
(win32k.sys)
IDT
・
・
・
・
・
・
other
interrupt
handlers
KiSystemService
Nt* APIs
Nt* APIs
(User/GDI)
SSDT
SSDT
Fourteenforty Research Institute, Inc.
6
Type I: Overview of Hooking PointsType I: Overview of Hooking PointsType I: Overview of Hooking PointsType I: Overview of Hooking Points
IDTR
MSR[176h]
SDT
(ntoskrnl.exe)
SDT Shadow
(win32k.sys)
IDT
・
・
・
・
・
・
KiSystemService
Nt* APIs
Nt* APIs
(User/GDI)
SSDT
SSDT
System Registers
other
interrupt
handlers
Fourteenforty Research Institute, Inc.
7
Type I: Overview of Hooking PointsType I: Overview of Hooking PointsType I: Overview of Hooking PointsType I: Overview of Hooking Points
IDTR
MSR[176h]
SDT
(ntoskrnl.exe)
SDT Shadow
(win32k.sys)
IDT
・
・
・
・
・
・
KiSystemService
Nt* APIs
Nt* APIs
(User/GDI)
SSDT
SSDT
Well known &&
persistent function pointers
other
interrupt
handlers
Fourteenforty Research Institute, Inc.
8
Type I: Overview of Hooking PointsType I: Overview of Hooking PointsType I: Overview of Hooking PointsType I: Overview of Hooking Points
IDTR
MSR[176h]
SDT
(ntoskrnl.exe)
SDT Shadow
(win32k.sys)
IDT
・
・
・
・
・
・
KiSystemService
Nt* APIs
Nt* APIs
(User/GDI)
SSDT
SSDT
Code area, really persistent
other
interrupt
handlers
Fourteenforty Research Institute, Inc.
9
Type IType IType IType I
• It is easy to detect
• PatchGuard in Vista(x64) is a countermeasure for this type
• Many rootkit detectors have been released for this type
Fourteenforty Research Institute, Inc.
10
Type IIType IIType IIType II
• Malware changes the non-persistent system resources
• Hooking point might be modified by the regular execution path
• DKOM(Direct Kernel Object Manipulation)
– by http://www.blackhat.com/presentations/win-usa-04/bh-win-04-
butler.pdf
• KOH(Kernel Object Hooking)
– by Greg Hoglund in Jan, 2006
http://www.rootkit.com/newsread.php?newsid=501
Fourteenforty Research Institute, Inc.
11
DKOM(Direct Kernel Object Manipulation)DKOM(Direct Kernel Object Manipulation)DKOM(Direct Kernel Object Manipulation)DKOM(Direct Kernel Object Manipulation)
• Malware manipulates the process list, tokens and other kernel objects
directly
• For example:
– Unlink target process from process list
– Add/remove priviledges to tokens
• DKOM's possibilities are limited
– Whether information hiding can be done depends on the
implementation of process that deals with the data
Fourteenforty Research Institute, Inc.
12
KOH(Kernel Object Hooking)KOH(Kernel Object Hooking)KOH(Kernel Object Hooking)KOH(Kernel Object Hooking)
• Remember the SDT, SSDT and other well known && persistent function
pointers?
• Do you know how many such patching points are there in kernel space?
– They might or might not be persistent
– It depends on each kernel object
• Detector has to understand all function pointers
• is_within_own_memory_range(PVOID Address) is useful, but not enough
Fourteenforty Research Institute, Inc.
13
is_within_own_memory_range(PVOID Addr)is_within_own_memory_range(PVOID Addr)is_within_own_memory_range(PVOID Addr)is_within_own_memory_range(PVOID Addr)
foo.sys
bar.sys
ntoskrnl.exe
Fourteenforty Research Institute, Inc.
14
Type IIIType IIIType IIIType III
• No malware exists in the system(guest)
• Malware (ab)uses Virtualization Technology
• SMM Rootkit and Firmware Rootkit might also fall into this category (a
problem of taxonomy that is not important for our cause)
• BluePill
– Original BP was presented by Joanna Rutkowska in BH-US-2006.
– (Current) New BP supports both Intel VT and AMD-v technologies,
and is also capable of on the fly loading and unloading
– BP doesn't modify any system resources on the guest
• From a technical view, BP patches the guest's PTE to hide its
loaded virtual memory from the guest
• However this doesn't really help detecting it
Fourteenforty Research Institute, Inc.
15
Type III (cont.)Type III (cont.)Type III (cont.)Type III (cont.)
• Vitriol
– Presented by Dino Dai Zovi, Black Hat US 2006
– VT-x rootkit, closed source
• VMM Rootkit Framework
– Posted by Shawn Embleton, Aug, 2007
http://www.rootkit.com/newsread.php?newsid=758
– This is really good start point for learning for how to create VMM
Fourteenforty Research Institute, Inc.
16
Case Study: Storm WormCase Study: Storm WormCase Study: Storm WormCase Study: Storm Worm
• The Storm Worm first appeared in Fall, 2006
• Some variants have rootkit functions to hide from AV products
• As of Jan 2008 we can see "Happy New Year 2008" variants
• When a user clicks onto the executable,
Fourteenforty Research Institute, Inc.
17
Storm WormStorm WormStorm WormStorm Worm
1. Executable drops the system driver (.sys), and loads it into the kernel
using Service Control Manager (SCM)
2. Driver has two functions shown below
• Rootkit functions
Hide files, registry entries and connections using SSDT and IRP
hooking
• Code Injection function
Inject malicious code (not DLL) into process context of
services.exe and execute it
3. Injected code starts P2P communication
Fourteenforty Research Institute, Inc.
18
Rootkit functionsRootkit functionsRootkit functionsRootkit functions
NtQueryDirectoryFile
• Storm Worm hooks three Native APIs
– NtQueryDirectoryFile, NtEnumerateKey, NtEnumerateValueKey
• API Index of SSDT is different for each NtBuildNumber
• Storm Worm has index number tables for build 2195(2k), 2600(XP) and
3790(2k3)
IndexNumberTableOf
NtQueryDirectoryFile
SSDT
NtBuildNumber == 2600
NtBuildNumber == 2195
NtBuildNumber == 3790
Fourteenforty Research Institute, Inc.
19
Rootkit functions (cont.)Rootkit functions (cont.)Rootkit functions (cont.)Rootkit functions (cont.)
• It hooks the IRP_DEVICE_CONTROL routine by patching the TCP
DriverObject's IRP table ("¥¥Device¥¥Tcp")
• Hide connections from netstat
But is this KOH?
YES: It modifies the IRP Table contained within the DriverObject
NO: Many people know about the existence of IRP tables
Fourteenforty Research Institute, Inc.
20
Code injection functionCode injection functionCode injection functionCode injection function
kernel land
user land
services.exe
malcode
Executable
driver(packed)
driver
malcode
(packed)
1. CreateService()
2. StartService()
1. ZwQuerySystemInformation()
2. ZwOpenProcess()
3. ZwAllocateVirtualMemory()
4. (Copy the malcode)
5. (patch to thread object)
6. KeInitializeApc()
7. KeInsertQueueApc()
Fourteenforty Research Institute, Inc.
21
2.2.2.2. Review of subversive techniques in kernel spaceReview of subversive techniques in kernel spaceReview of subversive techniques in kernel spaceReview of subversive techniques in kernel space
Fourteenforty Research Institute, Inc.
22
What we have to consider "Virtualization"What we have to consider "Virtualization"What we have to consider "Virtualization"What we have to consider "Virtualization"
• CPU Virtualization
– Some registers should be reserved for VMM and each VM.
GDTR, LDTR, IDTR, CR0-4, DR0-7, MSR, Segment Register, etc
– Exceptions
• Memory Virtualization
– should separate VMM memory space and each VM's memory space
• Device Virtualization
– Interrupt, I/O instructions, MMIO, DMA access
Fourteenforty Research Institute, Inc.
23
Virtual Address to Physical AddressVirtual Address to Physical AddressVirtual Address to Physical AddressVirtual Address to Physical Address
CR3
1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 1 0 0 0 1 1 0 0 0 0 1 1
PD PT Page
VA : 0x802398c3
11
PA : 0x00f928c3
Fourteenforty Research Institute, Inc.
24
To simplify...To simplify...To simplify...To simplify...
PAVA
PT
Guest
VA
Guest
PT
PT in VMM
Guest
PA
(Real) Host
PA
CR3
CR3
Who translates this?
TLB
Fourteenforty Research Institute, Inc.
25
Memory virtualizationMemory virtualizationMemory virtualizationMemory virtualization
• If the processor supports EPT (Extended Page Table), this 2-stages
translation is automatically done by the MMU
– EPT is not implemented yet
• VMM should implement this translation as software using Shadow Paging
Fourteenforty Research Institute, Inc.
26
Shadow PagingShadow PagingShadow PagingShadow Paging
Guest
VA
Guest
PA
Guest
VMM
Host
PA
Guest
VA
Shadow Page Table
• VMM updates SPT on #PF in the guest
– and also emulates TLB flush caused by MOV to CR3 and INVLPG
TLBCR3
Fourteenforty Research Institute, Inc.
27
Intel VTIntel VTIntel VTIntel VT
• Intel VT is the Intel VT-* family's generic name
– VT-x, virtualization for x86/64
– VT-d, virtualization for device (Directed I/O)
– VT-i, virtualization for Itanium
• Key factors
– VMX mode
• VMX root-operations(ring0-3)
• VMX non-root-operations(ring0-3)
– VMCS (Virtual Machine Control Structure)
– VMX Instructions set
• VMXON, VMXOFF, VMLAUNCH, VMRESUME, VMCALL,
VMWRITE, VMREAD, VMCLEAR, VMPTRLD, VMPTRST
Fourteenforty Research Institute, Inc.
28
How Intel VT works:How Intel VT works:How Intel VT works:How Intel VT works:
VMM
Guest
(Current) VMCS
Guest State Area
Host State Area
VM-execution control field
VM-entry control fields
VM-exit control fields
VM-exit information fields
GDTR IDTR ・・・
GDTR IDTR ・・・
Excpt
bitmap
IO
bitmap
・・・
Exit
Reason
VM-exit
VM-exit control
for MSR ・・・
Event Injection ・・・
Exit
Qualification ・・・
VM-entry
process the event
Fourteenforty Research Institute, Inc.
29
enum EXIT_REASON {enum EXIT_REASON {enum EXIT_REASON {enum EXIT_REASON {
• Specific instructions
– CPUID, INVD, INVLPG, RDTSC, RDPMC, HLT, etc.
– All VMX Instructions
• I/O Instructions
– IN, OUT, etc.
• Exceptions
• Access to CR0-CR4, DR0-DR7, MSR
• etc.
};
Fourteenforty Research Institute, Inc.
30
Steps to launch the VMM and VMSteps to launch the VMM and VMSteps to launch the VMM and VMSteps to launch the VMM and VM
• Confirm that the processor supports VMX operations
– CPUID
• Confirm that VMX operations are not disabled in the BIOS
– MSR_IA32_FEATURE_CONTROL
• Set the CR4.VMXE bit
• Allocate and Initialize VMXON region
– Write lower 32 bits value of VMX_BASIC_MSR to VMXON region
• Execute VMXON
– CR0.PE, CR0.PG, and CR4.VME must be set.
Fourteenforty Research Institute, Inc.
31
Steps to launch the VM and VMM (cont.)Steps to launch the VM and VMM (cont.)Steps to launch the VM and VMM (cont.)Steps to launch the VM and VMM (cont.)
• Allocate VMCS regions
• Execute VMPTRLD to set Current VMCS
• Initialize Current VMCS using VMREAD and VMWRITE
– VMCS contains the EP of VMM, and Guest IP after VMLAUNCH
• Execute VMLAUNCH
– Continue to execute the guest from IP is contained in VMCS
• When VM-exit occurred, IP and other registers are switched to VMM
ones.
Fourteenforty Research Institute, Inc.
32
3. Viton, Hypervisor IPS3. Viton, Hypervisor IPS3. Viton, Hypervisor IPS3. Viton, Hypervisor IPS
Fourteenforty Research Institute, Inc.
33
VitonVitonVitonViton
• IPS, which runs outside the guest
• Just a PoC, tested on Windows XP SP2 only
• Force immutability to persistent system resources
• Observe control/system registers modification,
and VMX instructions are raised in the guest
• Offer the extensibility for monitoring the guest activity
• It is based on BitvisorBitvisorBitvisorBitvisor
Fourteenforty Research Institute, Inc.
34
BitvisorBitvisorBitvisorBitvisor ---- http://www.securevm.orghttp://www.securevm.orghttp://www.securevm.orghttp://www.securevm.org
• The Bitvisor VMM software is developed by the Secure VM project
centered around Tsukuba Univ. in Japan
• Features:
– Open source, BSD License
– Semi-path through model
– Type I VMM (Hypervisor model, like Xen)
– Full scratched, pure domestic production
– Support for 32/64 bits architecture in VMM
– Support for Multi-core/processor in VMM and Guest
– Can run Windows XP/Vista as Guests without modification
– Support for PAE in the Guest
– Support for Real-mode emulation
Fourteenforty Research Institute, Inc.
35
How Bitvisor works: Launch processHow Bitvisor works: Launch processHow Bitvisor works: Launch processHow Bitvisor works: Launch process
GRUB Bitvisor
BIOS
Windows
Switch to protect-mode(enable paging),
Enter VMX-mode
Launch the VMM and VM
Bitvisor emulates real-mode operations,
return after BIOS is executed
NTLDR
Fourteenforty Research Institute, Inc.
36
What Viton protects/detects:What Viton protects/detects:What Viton protects/detects:What Viton protects/detects:
• Instructions
– Detect and block all VMX Instructions
• Registers
– Watchdog for IDTR
– Locking the MSR[SYSTENR_EIP]
– Locking the CR0.WP Bit
• Memory
– Protect from modification
• All code sections (R-X) in ntoskrnl.exe
• IDT
• SDT
• SDT.ST (SSDT)
Fourteenforty Research Institute, Inc.
37
How to protect the guest memory modificationHow to protect the guest memory modificationHow to protect the guest memory modificationHow to protect the guest memory modification
Host
PA
Guest
VA
SPT
• Viton clears the WR bit in a SPT entry
– If CR0.WP is set, even the kernel cannot modify the page
Page number P
W
R
U
S
P
W
T
P
C
D
ADOS R
Fourteenforty Research Institute, Inc.
38
How to recognize the guest memory layoutHow to recognize the guest memory layoutHow to recognize the guest memory layoutHow to recognize the guest memory layout
0x00000000
0x80000000
0xffffffff
Guest
IDTR
IDT
ntoskrnl.exe
N pages
"MZ"
"PE¥0¥0"
.edata
.text
...
We can implement GetNtoskrnlSymbolAddr()
to parse the .edata section in guest VA space.
Fourteenforty Research Institute, Inc.
39
GuestGuestGuestGuest activity monitoringactivity monitoringactivity monitoringactivity monitoring
• When we use the Viton, no one can modify the kernel code,
excluding the Viton.
• Viton can monitor the guest's activity by hooking the code
1. Allocate memory for detours in the guest VA space
2. Setup the detours buffer
3. Hook the target function
Fourteenforty Research Institute, Inc.
40
How to allocate memory in guest VA spaceHow to allocate memory in guest VA spaceHow to allocate memory in guest VA spaceHow to allocate memory in guest VA space
Guest Viton
int3
push 0x1000
push 0x0
call ExAllocatePool
int 3
some function
mov edi, edi
push ebp
...
Save the original code
Fourteenforty Research Institute, Inc.
41
How to allocate memory in guest VA spaceHow to allocate memory in guest VA spaceHow to allocate memory in guest VA spaceHow to allocate memory in guest VA space
Guest Viton
int3
push 0x1000
push 0x0
call ExAllocatePool
int 3
some function
VM-exit Save the general purpose
register's values
Add EIP(skip int3 inst.)VM-entry
VM-exit
Retrieve allocated memory
address (EAX holds it)
Fourteenforty Research Institute, Inc.
42
How to allocate memory in guest VA spaceHow to allocate memory in guest VA spaceHow to allocate memory in guest VA spaceHow to allocate memory in guest VA space
Guest Viton
some function
mov edi, edi
push ebp
...
Restore the original code,
return to the func EP.
(Viton can control EIP/ESP)
VM-entry
Fourteenforty Research Institute, Inc.
43
How to hook the guest codeHow to hook the guest codeHow to hook the guest codeHow to hook the guest code
xor eax, eax
...
target function
detours_buf
Guest Viton
jmp detours_buf
hook_code
original code
jmp caller_func
When the target function is called,
1. jump to the detours_buf
2. Execute our hook_code
3. Execute original code which
is overwritten by "jmp detours_buf"
4. jump to the next code
of overwritten one
Fourteenforty Research Institute, Inc.
44
What can Viton do hooking the guest code ?What can Viton do hooking the guest code ?What can Viton do hooking the guest code ?What can Viton do hooking the guest code ?
• Viton can retrieve the guest information in hook_code
– int3 and other inst. that cause VM-exit are useful
• So, Wouldn't you hook below functions ?
– ZwCreateProcess/ZwTerminateProcess
– ZwLoadDriver
• Then, Viton understands process, driver and other guest system
resource information.
Fourteenforty Research Institute, Inc.
45
DemoDemoDemoDemo
Fourteenforty Research Institute, Inc.
46
DemoDemoDemoDemo
Fourteenforty Research Institute, Inc.
47
DemoDemoDemoDemo
Fourteenforty Research Institute, Inc.
48
VMM
dbgsh (Bitvisor's debuging function)dbgsh (Bitvisor's debuging function)dbgsh (Bitvisor's debuging function)dbgsh (Bitvisor's debuging function)
log buffer
Guest
VMCALL
VM-exit
VM-entry
log message
through general purpose register
Fourteenforty Research Institute, Inc.
49
DemoDemoDemoDemo
ro_list: read only list
Fourteenforty Research Institute, Inc.
50
DemoDemoDemoDemo
Fourteenforty Research Institute, Inc.
51
DemoDemoDemoDemo
Fourteenforty Research Institute, Inc.
52
DemoDemoDemoDemo
Fourteenforty Research Institute, Inc.
53
DemoDemoDemoDemo
Fourteenforty Research Institute, Inc.
54
Viton vs.Viton vs.Viton vs.Viton vs.
• Type I
– Easy
• Type II
– DKOM: Difficult, but possible
– KOH: Difficult, we need more research, and breakthrough
• Type III
– Easy (First come, first served)
Fourteenforty Research Institute, Inc.
55
4. Conclusions4. Conclusions4. Conclusions4. Conclusions
• Virtualization Technology becomes a help to protect the kernel
• However, it is not a silver bullet
– Foundation for existing security solutions
Fourteenforty Research Institute, Inc.
5656
Thank you!
Fourteenforty Research Institute, Inc.
http://www.fourteenforty.jp
Senior Research Engineer
Junichi Murakami <murakami@fourteenforty.jp>

Más contenido relacionado

La actualidad más candente

Detect Kernel-Mode Rootkits via Real Time Logging & Controlling Memory Access
Detect Kernel-Mode Rootkits via Real Time Logging & Controlling Memory AccessDetect Kernel-Mode Rootkits via Real Time Logging & Controlling Memory Access
Detect Kernel-Mode Rootkits via Real Time Logging & Controlling Memory AccessIgor Korkin
 
Two Challenges of Stealthy Hypervisors Detection: Time Cheating and Data Fluc...
Two Challenges of Stealthy Hypervisors Detection: Time Cheating and Data Fluc...Two Challenges of Stealthy Hypervisors Detection: Time Cheating and Data Fluc...
Two Challenges of Stealthy Hypervisors Detection: Time Cheating and Data Fluc...Igor Korkin
 
How to drive a malware analyst crazy
How to drive a malware analyst crazyHow to drive a malware analyst crazy
How to drive a malware analyst crazyMichael Boman
 
Shusei tomonaga pac_sec_20171026
Shusei tomonaga pac_sec_20171026Shusei tomonaga pac_sec_20171026
Shusei tomonaga pac_sec_20171026PacSecJP
 
Advanced SOHO Router Exploitation XCON
Advanced SOHO Router Exploitation XCONAdvanced SOHO Router Exploitation XCON
Advanced SOHO Router Exploitation XCONLyon Yang
 
CODE BLUE 2014 : DeviceDisEnabler : A hypervisor which hides devices to prote...
CODE BLUE 2014 : DeviceDisEnabler : A hypervisor which hides devices to prote...CODE BLUE 2014 : DeviceDisEnabler : A hypervisor which hides devices to prote...
CODE BLUE 2014 : DeviceDisEnabler : A hypervisor which hides devices to prote...CODE BLUE
 
Nikita Abdullin - Reverse-engineering of embedded MIPS devices. Case Study - ...
Nikita Abdullin - Reverse-engineering of embedded MIPS devices. Case Study - ...Nikita Abdullin - Reverse-engineering of embedded MIPS devices. Case Study - ...
Nikita Abdullin - Reverse-engineering of embedded MIPS devices. Case Study - ...DefconRussia
 
44CON London - Attacking VxWorks: from Stone Age to Interstellar
44CON London - Attacking VxWorks: from Stone Age to Interstellar44CON London - Attacking VxWorks: from Stone Age to Interstellar
44CON London - Attacking VxWorks: from Stone Age to Interstellar44CON
 
Appearances are deceiving: Novel offensive techniques in Windows 10/11 on ARM
Appearances are deceiving: Novel offensive techniques in Windows 10/11 on ARMAppearances are deceiving: Novel offensive techniques in Windows 10/11 on ARM
Appearances are deceiving: Novel offensive techniques in Windows 10/11 on ARMFFRI, Inc.
 
IDA Vulnerabilities and Bug Bounty  by Masaaki Chida
IDA Vulnerabilities and Bug Bounty  by Masaaki ChidaIDA Vulnerabilities and Bug Bounty  by Masaaki Chida
IDA Vulnerabilities and Bug Bounty  by Masaaki ChidaCODE BLUE
 
Introduction of ShinoBOT (Black Hat USA 2013 Arsenal)
Introduction of ShinoBOT (Black Hat USA 2013 Arsenal)Introduction of ShinoBOT (Black Hat USA 2013 Arsenal)
Introduction of ShinoBOT (Black Hat USA 2013 Arsenal)Shota Shinogi
 
Lucas apa pacsec slides
Lucas apa pacsec slidesLucas apa pacsec slides
Lucas apa pacsec slidesPacSecJP
 
A Security Barrier Device That Can Protect Critical Data Regardless of OS or ...
A Security Barrier Device That Can Protect Critical Data Regardless of OS or ...A Security Barrier Device That Can Protect Critical Data Regardless of OS or ...
A Security Barrier Device That Can Protect Critical Data Regardless of OS or ...CODE BLUE
 
Hardware Reverse Engineering: From Boot to Root
Hardware Reverse Engineering: From Boot to RootHardware Reverse Engineering: From Boot to Root
Hardware Reverse Engineering: From Boot to RootYashin Mehaboobe
 
Predicting and Abusing WPA2/802.11 Group Keys
Predicting and Abusing WPA2/802.11 Group KeysPredicting and Abusing WPA2/802.11 Group Keys
Predicting and Abusing WPA2/802.11 Group Keysvanhoefm
 
Applying Memory Forensics to Rootkit Detection
Applying Memory Forensics to Rootkit DetectionApplying Memory Forensics to Rootkit Detection
Applying Memory Forensics to Rootkit DetectionIgor Korkin
 
Fuzzing 101 Webinar on Zero Day Management
Fuzzing 101 Webinar on Zero Day ManagementFuzzing 101 Webinar on Zero Day Management
Fuzzing 101 Webinar on Zero Day ManagementCodenomicon
 
TENTACLE: Environment-Sensitive Malware Palpation(PacSec 2014)
TENTACLE: Environment-Sensitive Malware Palpation(PacSec 2014)TENTACLE: Environment-Sensitive Malware Palpation(PacSec 2014)
TENTACLE: Environment-Sensitive Malware Palpation(PacSec 2014)FFRI, Inc.
 
PyTriage: A malware analysis framework
PyTriage: A malware analysis frameworkPyTriage: A malware analysis framework
PyTriage: A malware analysis frameworkYashin Mehaboobe
 

La actualidad más candente (20)

Detect Kernel-Mode Rootkits via Real Time Logging & Controlling Memory Access
Detect Kernel-Mode Rootkits via Real Time Logging & Controlling Memory AccessDetect Kernel-Mode Rootkits via Real Time Logging & Controlling Memory Access
Detect Kernel-Mode Rootkits via Real Time Logging & Controlling Memory Access
 
Two Challenges of Stealthy Hypervisors Detection: Time Cheating and Data Fluc...
Two Challenges of Stealthy Hypervisors Detection: Time Cheating and Data Fluc...Two Challenges of Stealthy Hypervisors Detection: Time Cheating and Data Fluc...
Two Challenges of Stealthy Hypervisors Detection: Time Cheating and Data Fluc...
 
How to drive a malware analyst crazy
How to drive a malware analyst crazyHow to drive a malware analyst crazy
How to drive a malware analyst crazy
 
Shusei tomonaga pac_sec_20171026
Shusei tomonaga pac_sec_20171026Shusei tomonaga pac_sec_20171026
Shusei tomonaga pac_sec_20171026
 
Advanced SOHO Router Exploitation XCON
Advanced SOHO Router Exploitation XCONAdvanced SOHO Router Exploitation XCON
Advanced SOHO Router Exploitation XCON
 
CODE BLUE 2014 : DeviceDisEnabler : A hypervisor which hides devices to prote...
CODE BLUE 2014 : DeviceDisEnabler : A hypervisor which hides devices to prote...CODE BLUE 2014 : DeviceDisEnabler : A hypervisor which hides devices to prote...
CODE BLUE 2014 : DeviceDisEnabler : A hypervisor which hides devices to prote...
 
Nikita Abdullin - Reverse-engineering of embedded MIPS devices. Case Study - ...
Nikita Abdullin - Reverse-engineering of embedded MIPS devices. Case Study - ...Nikita Abdullin - Reverse-engineering of embedded MIPS devices. Case Study - ...
Nikita Abdullin - Reverse-engineering of embedded MIPS devices. Case Study - ...
 
44CON London - Attacking VxWorks: from Stone Age to Interstellar
44CON London - Attacking VxWorks: from Stone Age to Interstellar44CON London - Attacking VxWorks: from Stone Age to Interstellar
44CON London - Attacking VxWorks: from Stone Age to Interstellar
 
Appearances are deceiving: Novel offensive techniques in Windows 10/11 on ARM
Appearances are deceiving: Novel offensive techniques in Windows 10/11 on ARMAppearances are deceiving: Novel offensive techniques in Windows 10/11 on ARM
Appearances are deceiving: Novel offensive techniques in Windows 10/11 on ARM
 
IDA Vulnerabilities and Bug Bounty  by Masaaki Chida
IDA Vulnerabilities and Bug Bounty  by Masaaki ChidaIDA Vulnerabilities and Bug Bounty  by Masaaki Chida
IDA Vulnerabilities and Bug Bounty  by Masaaki Chida
 
Introduction of ShinoBOT (Black Hat USA 2013 Arsenal)
Introduction of ShinoBOT (Black Hat USA 2013 Arsenal)Introduction of ShinoBOT (Black Hat USA 2013 Arsenal)
Introduction of ShinoBOT (Black Hat USA 2013 Arsenal)
 
Lucas apa pacsec slides
Lucas apa pacsec slidesLucas apa pacsec slides
Lucas apa pacsec slides
 
A Security Barrier Device That Can Protect Critical Data Regardless of OS or ...
A Security Barrier Device That Can Protect Critical Data Regardless of OS or ...A Security Barrier Device That Can Protect Critical Data Regardless of OS or ...
A Security Barrier Device That Can Protect Critical Data Regardless of OS or ...
 
Hardware Reverse Engineering: From Boot to Root
Hardware Reverse Engineering: From Boot to RootHardware Reverse Engineering: From Boot to Root
Hardware Reverse Engineering: From Boot to Root
 
Fuzzing
FuzzingFuzzing
Fuzzing
 
Predicting and Abusing WPA2/802.11 Group Keys
Predicting and Abusing WPA2/802.11 Group KeysPredicting and Abusing WPA2/802.11 Group Keys
Predicting and Abusing WPA2/802.11 Group Keys
 
Applying Memory Forensics to Rootkit Detection
Applying Memory Forensics to Rootkit DetectionApplying Memory Forensics to Rootkit Detection
Applying Memory Forensics to Rootkit Detection
 
Fuzzing 101 Webinar on Zero Day Management
Fuzzing 101 Webinar on Zero Day ManagementFuzzing 101 Webinar on Zero Day Management
Fuzzing 101 Webinar on Zero Day Management
 
TENTACLE: Environment-Sensitive Malware Palpation(PacSec 2014)
TENTACLE: Environment-Sensitive Malware Palpation(PacSec 2014)TENTACLE: Environment-Sensitive Malware Palpation(PacSec 2014)
TENTACLE: Environment-Sensitive Malware Palpation(PacSec 2014)
 
PyTriage: A malware analysis framework
PyTriage: A malware analysis frameworkPyTriage: A malware analysis framework
PyTriage: A malware analysis framework
 

Destacado

Connect.Tech- Enhancing Your Workflow With Xcode Source Editor Extensions
Connect.Tech- Enhancing Your Workflow With Xcode Source Editor ExtensionsConnect.Tech- Enhancing Your Workflow With Xcode Source Editor Extensions
Connect.Tech- Enhancing Your Workflow With Xcode Source Editor Extensionsstable|kernel
 
Purchasing power parity a unit root, cointegration and var analysis in emergi...
Purchasing power parity a unit root, cointegration and var analysis in emergi...Purchasing power parity a unit root, cointegration and var analysis in emergi...
Purchasing power parity a unit root, cointegration and var analysis in emergi...Giwrgos Loukopoulos
 
How to create a jQuery Modal Window
How to create a jQuery Modal WindowHow to create a jQuery Modal Window
How to create a jQuery Modal WindowLikno Software
 
EQUITY MARKET INTEGRATION IN SELECTED MARKETS: EVIDENCE FROM UNIT ROOT AND CO...
EQUITY MARKET INTEGRATION IN SELECTED MARKETS: EVIDENCE FROM UNIT ROOT AND CO...EQUITY MARKET INTEGRATION IN SELECTED MARKETS: EVIDENCE FROM UNIT ROOT AND CO...
EQUITY MARKET INTEGRATION IN SELECTED MARKETS: EVIDENCE FROM UNIT ROOT AND CO...akjsk10
 
Creational pattern
Creational patternCreational pattern
Creational patternHimanshu
 
Representational State Transfer (REST)
Representational State Transfer (REST)Representational State Transfer (REST)
Representational State Transfer (REST)Abhay Ananda Shukla
 
1.Buffer Overflows
1.Buffer Overflows1.Buffer Overflows
1.Buffer Overflowsphanleson
 
Intrinsic Encounter - Cognitive Load Theory
Intrinsic Encounter - Cognitive Load TheoryIntrinsic Encounter - Cognitive Load Theory
Intrinsic Encounter - Cognitive Load TheoryDylan Grace
 
Web design trends for 2010
Web design trends for 2010Web design trends for 2010
Web design trends for 2010Tijs Vrolix
 
Minimize Cognitive Load + Maximize Conversions : 10 Tips
Minimize Cognitive Load + Maximize Conversions : 10 TipsMinimize Cognitive Load + Maximize Conversions : 10 Tips
Minimize Cognitive Load + Maximize Conversions : 10 TipsLucid Smart Pill
 
Buffer overflow and other software vulnerabilities: theory and practice of pr...
Buffer overflow and other software vulnerabilities: theory and practice of pr...Buffer overflow and other software vulnerabilities: theory and practice of pr...
Buffer overflow and other software vulnerabilities: theory and practice of pr...Roman Oliynykov
 
Representational State Transfer (REST)
Representational State Transfer (REST)Representational State Transfer (REST)
Representational State Transfer (REST)David Krmpotic
 
Hardware support for efficient virtualization
Hardware support for efficient virtualizationHardware support for efficient virtualization
Hardware support for efficient virtualizationLennox Wu
 
Xcode, Basics and Beyond
Xcode, Basics and BeyondXcode, Basics and Beyond
Xcode, Basics and Beyondrsebbe
 
How to Run a 1,000,000 VU Load Test using Apache JMeter and BlazeMeter
How to Run a 1,000,000 VU Load Test using Apache JMeter and BlazeMeterHow to Run a 1,000,000 VU Load Test using Apache JMeter and BlazeMeter
How to Run a 1,000,000 VU Load Test using Apache JMeter and BlazeMeterAlon Girmonsky
 
Load-testing 101 for Startups with Artillery.io
Load-testing 101 for Startups with Artillery.ioLoad-testing 101 for Startups with Artillery.io
Load-testing 101 for Startups with Artillery.ioHassy Veldstra
 

Destacado (20)

Lampiran unit root test
Lampiran unit root testLampiran unit root test
Lampiran unit root test
 
Connect.Tech- Enhancing Your Workflow With Xcode Source Editor Extensions
Connect.Tech- Enhancing Your Workflow With Xcode Source Editor ExtensionsConnect.Tech- Enhancing Your Workflow With Xcode Source Editor Extensions
Connect.Tech- Enhancing Your Workflow With Xcode Source Editor Extensions
 
Design patterns
Design patternsDesign patterns
Design patterns
 
Purchasing power parity a unit root, cointegration and var analysis in emergi...
Purchasing power parity a unit root, cointegration and var analysis in emergi...Purchasing power parity a unit root, cointegration and var analysis in emergi...
Purchasing power parity a unit root, cointegration and var analysis in emergi...
 
How to create a jQuery Modal Window
How to create a jQuery Modal WindowHow to create a jQuery Modal Window
How to create a jQuery Modal Window
 
EQUITY MARKET INTEGRATION IN SELECTED MARKETS: EVIDENCE FROM UNIT ROOT AND CO...
EQUITY MARKET INTEGRATION IN SELECTED MARKETS: EVIDENCE FROM UNIT ROOT AND CO...EQUITY MARKET INTEGRATION IN SELECTED MARKETS: EVIDENCE FROM UNIT ROOT AND CO...
EQUITY MARKET INTEGRATION IN SELECTED MARKETS: EVIDENCE FROM UNIT ROOT AND CO...
 
Creational pattern
Creational patternCreational pattern
Creational pattern
 
Representational State Transfer (REST)
Representational State Transfer (REST)Representational State Transfer (REST)
Representational State Transfer (REST)
 
1.Buffer Overflows
1.Buffer Overflows1.Buffer Overflows
1.Buffer Overflows
 
Intrinsic Encounter - Cognitive Load Theory
Intrinsic Encounter - Cognitive Load TheoryIntrinsic Encounter - Cognitive Load Theory
Intrinsic Encounter - Cognitive Load Theory
 
Web design trends for 2010
Web design trends for 2010Web design trends for 2010
Web design trends for 2010
 
Minimize Cognitive Load + Maximize Conversions : 10 Tips
Minimize Cognitive Load + Maximize Conversions : 10 TipsMinimize Cognitive Load + Maximize Conversions : 10 Tips
Minimize Cognitive Load + Maximize Conversions : 10 Tips
 
Buffer overflow and other software vulnerabilities: theory and practice of pr...
Buffer overflow and other software vulnerabilities: theory and practice of pr...Buffer overflow and other software vulnerabilities: theory and practice of pr...
Buffer overflow and other software vulnerabilities: theory and practice of pr...
 
Representational State Transfer (REST)
Representational State Transfer (REST)Representational State Transfer (REST)
Representational State Transfer (REST)
 
Lecture 13
Lecture 13Lecture 13
Lecture 13
 
Buffer overflow
Buffer overflowBuffer overflow
Buffer overflow
 
Hardware support for efficient virtualization
Hardware support for efficient virtualizationHardware support for efficient virtualization
Hardware support for efficient virtualization
 
Xcode, Basics and Beyond
Xcode, Basics and BeyondXcode, Basics and Beyond
Xcode, Basics and Beyond
 
How to Run a 1,000,000 VU Load Test using Apache JMeter and BlazeMeter
How to Run a 1,000,000 VU Load Test using Apache JMeter and BlazeMeterHow to Run a 1,000,000 VU Load Test using Apache JMeter and BlazeMeter
How to Run a 1,000,000 VU Load Test using Apache JMeter and BlazeMeter
 
Load-testing 101 for Startups with Artillery.io
Load-testing 101 for Startups with Artillery.ioLoad-testing 101 for Startups with Artillery.io
Load-testing 101 for Startups with Artillery.io
 

Similar a A Hypervisor IPS based on Hardware Assisted Virtualization Technology

"egg" - A stealth fine grained code analyzer
"egg" - A stealth fine grained code analyzer"egg" - A stealth fine grained code analyzer
"egg" - A stealth fine grained code analyzerFFRI, Inc.
 
TRITON: How it Disrupted Safety Systems and Changed the Threat Landscape of I...
TRITON: How it Disrupted Safety Systems and Changed the Threat Landscape of I...TRITON: How it Disrupted Safety Systems and Changed the Threat Landscape of I...
TRITON: How it Disrupted Safety Systems and Changed the Threat Landscape of I...Priyanka Aash
 
From Thousands of Hours to a Couple of Minutes: Automating Exploit Generation...
From Thousands of Hours to a Couple of Minutes: Automating Exploit Generation...From Thousands of Hours to a Couple of Minutes: Automating Exploit Generation...
From Thousands of Hours to a Couple of Minutes: Automating Exploit Generation...Priyanka Aash
 
Freeze Drying for Capturing Environment-Sensitive Malware Alive
Freeze Drying for Capturing Environment-Sensitive Malware AliveFreeze Drying for Capturing Environment-Sensitive Malware Alive
Freeze Drying for Capturing Environment-Sensitive Malware AliveFFRI, Inc.
 
IoT Device Hacking and New Direction of IoT Security Evaluation Using Common ...
IoT Device Hacking and New Direction of IoT Security Evaluation Using Common ...IoT Device Hacking and New Direction of IoT Security Evaluation Using Common ...
IoT Device Hacking and New Direction of IoT Security Evaluation Using Common ...Seungjoo Kim
 
Your Peripheral Has Planted Malware—An Exploit of NXP SOCs Vulnerability
Your Peripheral Has Planted Malware—An Exploit of NXP SOCs VulnerabilityYour Peripheral Has Planted Malware—An Exploit of NXP SOCs Vulnerability
Your Peripheral Has Planted Malware—An Exploit of NXP SOCs VulnerabilityPriyanka Aash
 
2018 02 20-jeg_index
2018 02 20-jeg_index2018 02 20-jeg_index
2018 02 20-jeg_indexChester Chen
 
FFR GreenKiller - Automatic kernel-mode malware analysis system
FFR GreenKiller - Automatic kernel-mode malware analysis systemFFR GreenKiller - Automatic kernel-mode malware analysis system
FFR GreenKiller - Automatic kernel-mode malware analysis systemFFRI, Inc.
 
IRJET - Analysis of Virtual Machine in Digital Forensics
IRJET -  	  Analysis of Virtual Machine in Digital ForensicsIRJET -  	  Analysis of Virtual Machine in Digital Forensics
IRJET - Analysis of Virtual Machine in Digital ForensicsIRJET Journal
 
Super Easy Memory Forensics
Super Easy Memory ForensicsSuper Easy Memory Forensics
Super Easy Memory ForensicsIIJ
 
KazHackStan Doing The IoT Penetration Testing - Yogesh Ojha
KazHackStan Doing The IoT Penetration Testing - Yogesh OjhaKazHackStan Doing The IoT Penetration Testing - Yogesh Ojha
KazHackStan Doing The IoT Penetration Testing - Yogesh OjhaYogesh Ojha
 
Slide used at ACM-SAC 2014 by Suzaki
Slide used at ACM-SAC 2014 by SuzakiSlide used at ACM-SAC 2014 by Suzaki
Slide used at ACM-SAC 2014 by SuzakiKuniyasu Suzaki
 
DEFCON 23 - Ian Latter - remote access the apt
DEFCON 23 - Ian Latter - remote access the aptDEFCON 23 - Ian Latter - remote access the apt
DEFCON 23 - Ian Latter - remote access the aptFelipe Prado
 
Attacking Embedded Devices (No Axe Required)
Attacking Embedded Devices (No Axe Required)Attacking Embedded Devices (No Axe Required)
Attacking Embedded Devices (No Axe Required)Security Weekly
 
Webinar: Code Faster on Kubernetes
Webinar: Code Faster on KubernetesWebinar: Code Faster on Kubernetes
Webinar: Code Faster on KubernetesAmbassador Labs
 
Demystifying Binary Reverse Engineering - Pixels Camp
Demystifying Binary Reverse Engineering - Pixels CampDemystifying Binary Reverse Engineering - Pixels Camp
Demystifying Binary Reverse Engineering - Pixels CampAndré Baptista
 
TDC2016SP - Trilha Linux Embarcado
TDC2016SP - Trilha Linux EmbarcadoTDC2016SP - Trilha Linux Embarcado
TDC2016SP - Trilha Linux Embarcadotdc-globalcode
 

Similar a A Hypervisor IPS based on Hardware Assisted Virtualization Technology (20)

"egg" - A stealth fine grained code analyzer
"egg" - A stealth fine grained code analyzer"egg" - A stealth fine grained code analyzer
"egg" - A stealth fine grained code analyzer
 
TRITON: How it Disrupted Safety Systems and Changed the Threat Landscape of I...
TRITON: How it Disrupted Safety Systems and Changed the Threat Landscape of I...TRITON: How it Disrupted Safety Systems and Changed the Threat Landscape of I...
TRITON: How it Disrupted Safety Systems and Changed the Threat Landscape of I...
 
IOT Exploitation
IOT Exploitation	IOT Exploitation
IOT Exploitation
 
From Thousands of Hours to a Couple of Minutes: Automating Exploit Generation...
From Thousands of Hours to a Couple of Minutes: Automating Exploit Generation...From Thousands of Hours to a Couple of Minutes: Automating Exploit Generation...
From Thousands of Hours to a Couple of Minutes: Automating Exploit Generation...
 
Freeze Drying for Capturing Environment-Sensitive Malware Alive
Freeze Drying for Capturing Environment-Sensitive Malware AliveFreeze Drying for Capturing Environment-Sensitive Malware Alive
Freeze Drying for Capturing Environment-Sensitive Malware Alive
 
IoT Device Hacking and New Direction of IoT Security Evaluation Using Common ...
IoT Device Hacking and New Direction of IoT Security Evaluation Using Common ...IoT Device Hacking and New Direction of IoT Security Evaluation Using Common ...
IoT Device Hacking and New Direction of IoT Security Evaluation Using Common ...
 
Your Peripheral Has Planted Malware—An Exploit of NXP SOCs Vulnerability
Your Peripheral Has Planted Malware—An Exploit of NXP SOCs VulnerabilityYour Peripheral Has Planted Malware—An Exploit of NXP SOCs Vulnerability
Your Peripheral Has Planted Malware—An Exploit of NXP SOCs Vulnerability
 
2018 02 20-jeg_index
2018 02 20-jeg_index2018 02 20-jeg_index
2018 02 20-jeg_index
 
FFR GreenKiller - Automatic kernel-mode malware analysis system
FFR GreenKiller - Automatic kernel-mode malware analysis systemFFR GreenKiller - Automatic kernel-mode malware analysis system
FFR GreenKiller - Automatic kernel-mode malware analysis system
 
IRJET - Analysis of Virtual Machine in Digital Forensics
IRJET -  	  Analysis of Virtual Machine in Digital ForensicsIRJET -  	  Analysis of Virtual Machine in Digital Forensics
IRJET - Analysis of Virtual Machine in Digital Forensics
 
Super Easy Memory Forensics
Super Easy Memory ForensicsSuper Easy Memory Forensics
Super Easy Memory Forensics
 
KazHackStan Doing The IoT Penetration Testing - Yogesh Ojha
KazHackStan Doing The IoT Penetration Testing - Yogesh OjhaKazHackStan Doing The IoT Penetration Testing - Yogesh Ojha
KazHackStan Doing The IoT Penetration Testing - Yogesh Ojha
 
Slide used at ACM-SAC 2014 by Suzaki
Slide used at ACM-SAC 2014 by SuzakiSlide used at ACM-SAC 2014 by Suzaki
Slide used at ACM-SAC 2014 by Suzaki
 
Tapping into the core
Tapping into the coreTapping into the core
Tapping into the core
 
DEFCON 23 - Ian Latter - remote access the apt
DEFCON 23 - Ian Latter - remote access the aptDEFCON 23 - Ian Latter - remote access the apt
DEFCON 23 - Ian Latter - remote access the apt
 
Attacking Embedded Devices (No Axe Required)
Attacking Embedded Devices (No Axe Required)Attacking Embedded Devices (No Axe Required)
Attacking Embedded Devices (No Axe Required)
 
Webinar: Code Faster on Kubernetes
Webinar: Code Faster on KubernetesWebinar: Code Faster on Kubernetes
Webinar: Code Faster on Kubernetes
 
Demystifying Binary Reverse Engineering - Pixels Camp
Demystifying Binary Reverse Engineering - Pixels CampDemystifying Binary Reverse Engineering - Pixels Camp
Demystifying Binary Reverse Engineering - Pixels Camp
 
TDC2016SP - Trilha Linux Embarcado
TDC2016SP - Trilha Linux EmbarcadoTDC2016SP - Trilha Linux Embarcado
TDC2016SP - Trilha Linux Embarcado
 
Threat Hunting
Threat HuntingThreat Hunting
Threat Hunting
 

Más de FFRI, Inc.

Appearances are deceiving: Novel offensive techniques in Windows 10/11 on ARM
Appearances are deceiving: Novel offensive techniques in Windows 10/11 on ARMAppearances are deceiving: Novel offensive techniques in Windows 10/11 on ARM
Appearances are deceiving: Novel offensive techniques in Windows 10/11 on ARMFFRI, Inc.
 
TrustZone use case and trend (FFRI Monthly Research Mar 2017)
TrustZone use case and trend (FFRI Monthly Research Mar 2017) TrustZone use case and trend (FFRI Monthly Research Mar 2017)
TrustZone use case and trend (FFRI Monthly Research Mar 2017) FFRI, Inc.
 
Android Things Security Research in Developer Preview 2 (FFRI Monthly Researc...
Android Things Security Research in Developer Preview 2 (FFRI Monthly Researc...Android Things Security Research in Developer Preview 2 (FFRI Monthly Researc...
Android Things Security Research in Developer Preview 2 (FFRI Monthly Researc...FFRI, Inc.
 
An Overview of the Android Things Security (FFRI Monthly Research Jan 2017)
An Overview of the Android Things Security (FFRI Monthly Research Jan 2017) An Overview of the Android Things Security (FFRI Monthly Research Jan 2017)
An Overview of the Android Things Security (FFRI Monthly Research Jan 2017) FFRI, Inc.
 
Black Hat Europe 2016 Survey Report (FFRI Monthly Research Dec 2016)
Black Hat Europe 2016 Survey Report (FFRI Monthly Research Dec 2016) Black Hat Europe 2016 Survey Report (FFRI Monthly Research Dec 2016)
Black Hat Europe 2016 Survey Report (FFRI Monthly Research Dec 2016) FFRI, Inc.
 
An Example of use the Threat Modeling Tool (FFRI Monthly Research Nov 2016)
An Example of use the Threat Modeling Tool (FFRI Monthly Research Nov 2016)An Example of use the Threat Modeling Tool (FFRI Monthly Research Nov 2016)
An Example of use the Threat Modeling Tool (FFRI Monthly Research Nov 2016)FFRI, Inc.
 
STRIDE Variants and Security Requirements-based Threat Analysis (FFRI Monthly...
STRIDE Variants and Security Requirements-based Threat Analysis (FFRI Monthly...STRIDE Variants and Security Requirements-based Threat Analysis (FFRI Monthly...
STRIDE Variants and Security Requirements-based Threat Analysis (FFRI Monthly...FFRI, Inc.
 
Introduction of Threat Analysis Methods(FFRI Monthly Research 2016.9)
Introduction of Threat Analysis Methods(FFRI Monthly Research 2016.9)Introduction of Threat Analysis Methods(FFRI Monthly Research 2016.9)
Introduction of Threat Analysis Methods(FFRI Monthly Research 2016.9)FFRI, Inc.
 
Black Hat USA 2016 Survey Report (FFRI Monthly Research 2016.8)
Black Hat USA 2016  Survey Report (FFRI Monthly Research 2016.8)Black Hat USA 2016  Survey Report (FFRI Monthly Research 2016.8)
Black Hat USA 2016 Survey Report (FFRI Monthly Research 2016.8)FFRI, Inc.
 
About security assessment framework “CHIPSEC” (FFRI Monthly Research 2016.7)
About security assessment framework “CHIPSEC” (FFRI Monthly Research 2016.7) About security assessment framework “CHIPSEC” (FFRI Monthly Research 2016.7)
About security assessment framework “CHIPSEC” (FFRI Monthly Research 2016.7) FFRI, Inc.
 
Black Hat USA 2016 Pre-Survey (FFRI Monthly Research 2016.6)
Black Hat USA 2016 Pre-Survey (FFRI Monthly Research 2016.6)Black Hat USA 2016 Pre-Survey (FFRI Monthly Research 2016.6)
Black Hat USA 2016 Pre-Survey (FFRI Monthly Research 2016.6)FFRI, Inc.
 
Black Hat Asia 2016 Survey Report (FFRI Monthly Research 2016.4)
Black Hat Asia 2016 Survey Report (FFRI Monthly Research 2016.4)Black Hat Asia 2016 Survey Report (FFRI Monthly Research 2016.4)
Black Hat Asia 2016 Survey Report (FFRI Monthly Research 2016.4)FFRI, Inc.
 
ARMv8-M TrustZone: A New Security Feature for Embedded Systems (FFRI Monthly ...
ARMv8-M TrustZone: A New Security Feature for Embedded Systems (FFRI Monthly ...ARMv8-M TrustZone: A New Security Feature for Embedded Systems (FFRI Monthly ...
ARMv8-M TrustZone: A New Security Feature for Embedded Systems (FFRI Monthly ...FFRI, Inc.
 
CODE BLUE 2015 Report (FFRI Monthly Research 2015.11)
CODE BLUE 2015 Report (FFRI Monthly Research 2015.11)CODE BLUE 2015 Report (FFRI Monthly Research 2015.11)
CODE BLUE 2015 Report (FFRI Monthly Research 2015.11)FFRI, Inc.
 
Latest Security Reports of Automobile and Vulnerability Assessment by CVSS v3...
Latest Security Reports of Automobile and Vulnerability Assessment by CVSS v3...Latest Security Reports of Automobile and Vulnerability Assessment by CVSS v3...
Latest Security Reports of Automobile and Vulnerability Assessment by CVSS v3...FFRI, Inc.
 
Black Hat USA 2015 Survey Report (FFRI Monthly Research 201508)
Black Hat USA 2015 Survey Report (FFRI Monthly Research 201508)Black Hat USA 2015 Survey Report (FFRI Monthly Research 201508)
Black Hat USA 2015 Survey Report (FFRI Monthly Research 201508)FFRI, Inc.
 
A Survey of Threats in OS X and iOS(FFRI Monthly Research 201507)
A Survey of Threats in OS X and iOS(FFRI Monthly Research 201507)A Survey of Threats in OS X and iOS(FFRI Monthly Research 201507)
A Survey of Threats in OS X and iOS(FFRI Monthly Research 201507)FFRI, Inc.
 
Security of Windows 10 IoT Core(FFRI Monthly Research 201506)
Security of Windows 10 IoT Core(FFRI Monthly Research 201506)Security of Windows 10 IoT Core(FFRI Monthly Research 201506)
Security of Windows 10 IoT Core(FFRI Monthly Research 201506)FFRI, Inc.
 
Trend of Next-Gen In-Vehicle Network Standard and Current State of Security(F...
Trend of Next-Gen In-Vehicle Network Standard and Current State of Security(F...Trend of Next-Gen In-Vehicle Network Standard and Current State of Security(F...
Trend of Next-Gen In-Vehicle Network Standard and Current State of Security(F...FFRI, Inc.
 
Malwarem armed with PowerShell
Malwarem armed with PowerShellMalwarem armed with PowerShell
Malwarem armed with PowerShellFFRI, Inc.
 

Más de FFRI, Inc. (20)

Appearances are deceiving: Novel offensive techniques in Windows 10/11 on ARM
Appearances are deceiving: Novel offensive techniques in Windows 10/11 on ARMAppearances are deceiving: Novel offensive techniques in Windows 10/11 on ARM
Appearances are deceiving: Novel offensive techniques in Windows 10/11 on ARM
 
TrustZone use case and trend (FFRI Monthly Research Mar 2017)
TrustZone use case and trend (FFRI Monthly Research Mar 2017) TrustZone use case and trend (FFRI Monthly Research Mar 2017)
TrustZone use case and trend (FFRI Monthly Research Mar 2017)
 
Android Things Security Research in Developer Preview 2 (FFRI Monthly Researc...
Android Things Security Research in Developer Preview 2 (FFRI Monthly Researc...Android Things Security Research in Developer Preview 2 (FFRI Monthly Researc...
Android Things Security Research in Developer Preview 2 (FFRI Monthly Researc...
 
An Overview of the Android Things Security (FFRI Monthly Research Jan 2017)
An Overview of the Android Things Security (FFRI Monthly Research Jan 2017) An Overview of the Android Things Security (FFRI Monthly Research Jan 2017)
An Overview of the Android Things Security (FFRI Monthly Research Jan 2017)
 
Black Hat Europe 2016 Survey Report (FFRI Monthly Research Dec 2016)
Black Hat Europe 2016 Survey Report (FFRI Monthly Research Dec 2016) Black Hat Europe 2016 Survey Report (FFRI Monthly Research Dec 2016)
Black Hat Europe 2016 Survey Report (FFRI Monthly Research Dec 2016)
 
An Example of use the Threat Modeling Tool (FFRI Monthly Research Nov 2016)
An Example of use the Threat Modeling Tool (FFRI Monthly Research Nov 2016)An Example of use the Threat Modeling Tool (FFRI Monthly Research Nov 2016)
An Example of use the Threat Modeling Tool (FFRI Monthly Research Nov 2016)
 
STRIDE Variants and Security Requirements-based Threat Analysis (FFRI Monthly...
STRIDE Variants and Security Requirements-based Threat Analysis (FFRI Monthly...STRIDE Variants and Security Requirements-based Threat Analysis (FFRI Monthly...
STRIDE Variants and Security Requirements-based Threat Analysis (FFRI Monthly...
 
Introduction of Threat Analysis Methods(FFRI Monthly Research 2016.9)
Introduction of Threat Analysis Methods(FFRI Monthly Research 2016.9)Introduction of Threat Analysis Methods(FFRI Monthly Research 2016.9)
Introduction of Threat Analysis Methods(FFRI Monthly Research 2016.9)
 
Black Hat USA 2016 Survey Report (FFRI Monthly Research 2016.8)
Black Hat USA 2016  Survey Report (FFRI Monthly Research 2016.8)Black Hat USA 2016  Survey Report (FFRI Monthly Research 2016.8)
Black Hat USA 2016 Survey Report (FFRI Monthly Research 2016.8)
 
About security assessment framework “CHIPSEC” (FFRI Monthly Research 2016.7)
About security assessment framework “CHIPSEC” (FFRI Monthly Research 2016.7) About security assessment framework “CHIPSEC” (FFRI Monthly Research 2016.7)
About security assessment framework “CHIPSEC” (FFRI Monthly Research 2016.7)
 
Black Hat USA 2016 Pre-Survey (FFRI Monthly Research 2016.6)
Black Hat USA 2016 Pre-Survey (FFRI Monthly Research 2016.6)Black Hat USA 2016 Pre-Survey (FFRI Monthly Research 2016.6)
Black Hat USA 2016 Pre-Survey (FFRI Monthly Research 2016.6)
 
Black Hat Asia 2016 Survey Report (FFRI Monthly Research 2016.4)
Black Hat Asia 2016 Survey Report (FFRI Monthly Research 2016.4)Black Hat Asia 2016 Survey Report (FFRI Monthly Research 2016.4)
Black Hat Asia 2016 Survey Report (FFRI Monthly Research 2016.4)
 
ARMv8-M TrustZone: A New Security Feature for Embedded Systems (FFRI Monthly ...
ARMv8-M TrustZone: A New Security Feature for Embedded Systems (FFRI Monthly ...ARMv8-M TrustZone: A New Security Feature for Embedded Systems (FFRI Monthly ...
ARMv8-M TrustZone: A New Security Feature for Embedded Systems (FFRI Monthly ...
 
CODE BLUE 2015 Report (FFRI Monthly Research 2015.11)
CODE BLUE 2015 Report (FFRI Monthly Research 2015.11)CODE BLUE 2015 Report (FFRI Monthly Research 2015.11)
CODE BLUE 2015 Report (FFRI Monthly Research 2015.11)
 
Latest Security Reports of Automobile and Vulnerability Assessment by CVSS v3...
Latest Security Reports of Automobile and Vulnerability Assessment by CVSS v3...Latest Security Reports of Automobile and Vulnerability Assessment by CVSS v3...
Latest Security Reports of Automobile and Vulnerability Assessment by CVSS v3...
 
Black Hat USA 2015 Survey Report (FFRI Monthly Research 201508)
Black Hat USA 2015 Survey Report (FFRI Monthly Research 201508)Black Hat USA 2015 Survey Report (FFRI Monthly Research 201508)
Black Hat USA 2015 Survey Report (FFRI Monthly Research 201508)
 
A Survey of Threats in OS X and iOS(FFRI Monthly Research 201507)
A Survey of Threats in OS X and iOS(FFRI Monthly Research 201507)A Survey of Threats in OS X and iOS(FFRI Monthly Research 201507)
A Survey of Threats in OS X and iOS(FFRI Monthly Research 201507)
 
Security of Windows 10 IoT Core(FFRI Monthly Research 201506)
Security of Windows 10 IoT Core(FFRI Monthly Research 201506)Security of Windows 10 IoT Core(FFRI Monthly Research 201506)
Security of Windows 10 IoT Core(FFRI Monthly Research 201506)
 
Trend of Next-Gen In-Vehicle Network Standard and Current State of Security(F...
Trend of Next-Gen In-Vehicle Network Standard and Current State of Security(F...Trend of Next-Gen In-Vehicle Network Standard and Current State of Security(F...
Trend of Next-Gen In-Vehicle Network Standard and Current State of Security(F...
 
Malwarem armed with PowerShell
Malwarem armed with PowerShellMalwarem armed with PowerShell
Malwarem armed with PowerShell
 

Último

04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 

Último (20)

04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 

A Hypervisor IPS based on Hardware Assisted Virtualization Technology

  • 1. Fourteenforty Research Institute, Inc. 11 Fourteenforty Research Institute, Inc. A Hypervisor IPS based on Hardware Assisted Virtualization Technology Fourteenforty Research Institute, Inc. http://www.fourteenforty.jp Senior Research Engineer Junichi Murakami
  • 2. Fourteenforty Research Institute, Inc. 2 Presentation OutlinePresentation OutlinePresentation OutlinePresentation Outline 1. Review of subversive techniques in kernel space 2. Review of Virtualization Technology 3. Viton, Hypervisor IPS 4. Conclusion
  • 3. Fourteenforty Research Institute, Inc. 3 • 1. Review of subversive techniques in kernel space
  • 4. Fourteenforty Research Institute, Inc. 4 Remember Joanna's classificationRemember Joanna's classificationRemember Joanna's classificationRemember Joanna's classification • Joanna Rutkowska proposed stealth malware taxonomy in November, 2006. http://invisiblethings.org/papers/malware-taxonomy.pdf • Type 0 • standalone malware, which never changes any system resources • Type I • changes the persistent system resources • Type II • changes the non-persistent system resources • Type III • malware runs outside the system
  • 5. Fourteenforty Research Institute, Inc. 5 Type I: Overview of Hooking PointsType I: Overview of Hooking PointsType I: Overview of Hooking PointsType I: Overview of Hooking Points IDTR MSR[176h] SDT (ntoskrnl.exe) SDT Shadow (win32k.sys) IDT ・ ・ ・ ・ ・ ・ other interrupt handlers KiSystemService Nt* APIs Nt* APIs (User/GDI) SSDT SSDT
  • 6. Fourteenforty Research Institute, Inc. 6 Type I: Overview of Hooking PointsType I: Overview of Hooking PointsType I: Overview of Hooking PointsType I: Overview of Hooking Points IDTR MSR[176h] SDT (ntoskrnl.exe) SDT Shadow (win32k.sys) IDT ・ ・ ・ ・ ・ ・ KiSystemService Nt* APIs Nt* APIs (User/GDI) SSDT SSDT System Registers other interrupt handlers
  • 7. Fourteenforty Research Institute, Inc. 7 Type I: Overview of Hooking PointsType I: Overview of Hooking PointsType I: Overview of Hooking PointsType I: Overview of Hooking Points IDTR MSR[176h] SDT (ntoskrnl.exe) SDT Shadow (win32k.sys) IDT ・ ・ ・ ・ ・ ・ KiSystemService Nt* APIs Nt* APIs (User/GDI) SSDT SSDT Well known && persistent function pointers other interrupt handlers
  • 8. Fourteenforty Research Institute, Inc. 8 Type I: Overview of Hooking PointsType I: Overview of Hooking PointsType I: Overview of Hooking PointsType I: Overview of Hooking Points IDTR MSR[176h] SDT (ntoskrnl.exe) SDT Shadow (win32k.sys) IDT ・ ・ ・ ・ ・ ・ KiSystemService Nt* APIs Nt* APIs (User/GDI) SSDT SSDT Code area, really persistent other interrupt handlers
  • 9. Fourteenforty Research Institute, Inc. 9 Type IType IType IType I • It is easy to detect • PatchGuard in Vista(x64) is a countermeasure for this type • Many rootkit detectors have been released for this type
  • 10. Fourteenforty Research Institute, Inc. 10 Type IIType IIType IIType II • Malware changes the non-persistent system resources • Hooking point might be modified by the regular execution path • DKOM(Direct Kernel Object Manipulation) – by http://www.blackhat.com/presentations/win-usa-04/bh-win-04- butler.pdf • KOH(Kernel Object Hooking) – by Greg Hoglund in Jan, 2006 http://www.rootkit.com/newsread.php?newsid=501
  • 11. Fourteenforty Research Institute, Inc. 11 DKOM(Direct Kernel Object Manipulation)DKOM(Direct Kernel Object Manipulation)DKOM(Direct Kernel Object Manipulation)DKOM(Direct Kernel Object Manipulation) • Malware manipulates the process list, tokens and other kernel objects directly • For example: – Unlink target process from process list – Add/remove priviledges to tokens • DKOM's possibilities are limited – Whether information hiding can be done depends on the implementation of process that deals with the data
  • 12. Fourteenforty Research Institute, Inc. 12 KOH(Kernel Object Hooking)KOH(Kernel Object Hooking)KOH(Kernel Object Hooking)KOH(Kernel Object Hooking) • Remember the SDT, SSDT and other well known && persistent function pointers? • Do you know how many such patching points are there in kernel space? – They might or might not be persistent – It depends on each kernel object • Detector has to understand all function pointers • is_within_own_memory_range(PVOID Address) is useful, but not enough
  • 13. Fourteenforty Research Institute, Inc. 13 is_within_own_memory_range(PVOID Addr)is_within_own_memory_range(PVOID Addr)is_within_own_memory_range(PVOID Addr)is_within_own_memory_range(PVOID Addr) foo.sys bar.sys ntoskrnl.exe
  • 14. Fourteenforty Research Institute, Inc. 14 Type IIIType IIIType IIIType III • No malware exists in the system(guest) • Malware (ab)uses Virtualization Technology • SMM Rootkit and Firmware Rootkit might also fall into this category (a problem of taxonomy that is not important for our cause) • BluePill – Original BP was presented by Joanna Rutkowska in BH-US-2006. – (Current) New BP supports both Intel VT and AMD-v technologies, and is also capable of on the fly loading and unloading – BP doesn't modify any system resources on the guest • From a technical view, BP patches the guest's PTE to hide its loaded virtual memory from the guest • However this doesn't really help detecting it
  • 15. Fourteenforty Research Institute, Inc. 15 Type III (cont.)Type III (cont.)Type III (cont.)Type III (cont.) • Vitriol – Presented by Dino Dai Zovi, Black Hat US 2006 – VT-x rootkit, closed source • VMM Rootkit Framework – Posted by Shawn Embleton, Aug, 2007 http://www.rootkit.com/newsread.php?newsid=758 – This is really good start point for learning for how to create VMM
  • 16. Fourteenforty Research Institute, Inc. 16 Case Study: Storm WormCase Study: Storm WormCase Study: Storm WormCase Study: Storm Worm • The Storm Worm first appeared in Fall, 2006 • Some variants have rootkit functions to hide from AV products • As of Jan 2008 we can see "Happy New Year 2008" variants • When a user clicks onto the executable,
  • 17. Fourteenforty Research Institute, Inc. 17 Storm WormStorm WormStorm WormStorm Worm 1. Executable drops the system driver (.sys), and loads it into the kernel using Service Control Manager (SCM) 2. Driver has two functions shown below • Rootkit functions Hide files, registry entries and connections using SSDT and IRP hooking • Code Injection function Inject malicious code (not DLL) into process context of services.exe and execute it 3. Injected code starts P2P communication
  • 18. Fourteenforty Research Institute, Inc. 18 Rootkit functionsRootkit functionsRootkit functionsRootkit functions NtQueryDirectoryFile • Storm Worm hooks three Native APIs – NtQueryDirectoryFile, NtEnumerateKey, NtEnumerateValueKey • API Index of SSDT is different for each NtBuildNumber • Storm Worm has index number tables for build 2195(2k), 2600(XP) and 3790(2k3) IndexNumberTableOf NtQueryDirectoryFile SSDT NtBuildNumber == 2600 NtBuildNumber == 2195 NtBuildNumber == 3790
  • 19. Fourteenforty Research Institute, Inc. 19 Rootkit functions (cont.)Rootkit functions (cont.)Rootkit functions (cont.)Rootkit functions (cont.) • It hooks the IRP_DEVICE_CONTROL routine by patching the TCP DriverObject's IRP table ("¥¥Device¥¥Tcp") • Hide connections from netstat But is this KOH? YES: It modifies the IRP Table contained within the DriverObject NO: Many people know about the existence of IRP tables
  • 20. Fourteenforty Research Institute, Inc. 20 Code injection functionCode injection functionCode injection functionCode injection function kernel land user land services.exe malcode Executable driver(packed) driver malcode (packed) 1. CreateService() 2. StartService() 1. ZwQuerySystemInformation() 2. ZwOpenProcess() 3. ZwAllocateVirtualMemory() 4. (Copy the malcode) 5. (patch to thread object) 6. KeInitializeApc() 7. KeInsertQueueApc()
  • 21. Fourteenforty Research Institute, Inc. 21 2.2.2.2. Review of subversive techniques in kernel spaceReview of subversive techniques in kernel spaceReview of subversive techniques in kernel spaceReview of subversive techniques in kernel space
  • 22. Fourteenforty Research Institute, Inc. 22 What we have to consider "Virtualization"What we have to consider "Virtualization"What we have to consider "Virtualization"What we have to consider "Virtualization" • CPU Virtualization – Some registers should be reserved for VMM and each VM. GDTR, LDTR, IDTR, CR0-4, DR0-7, MSR, Segment Register, etc – Exceptions • Memory Virtualization – should separate VMM memory space and each VM's memory space • Device Virtualization – Interrupt, I/O instructions, MMIO, DMA access
  • 23. Fourteenforty Research Institute, Inc. 23 Virtual Address to Physical AddressVirtual Address to Physical AddressVirtual Address to Physical AddressVirtual Address to Physical Address CR3 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 1 0 0 0 1 1 0 0 0 0 1 1 PD PT Page VA : 0x802398c3 11 PA : 0x00f928c3
  • 24. Fourteenforty Research Institute, Inc. 24 To simplify...To simplify...To simplify...To simplify... PAVA PT Guest VA Guest PT PT in VMM Guest PA (Real) Host PA CR3 CR3 Who translates this? TLB
  • 25. Fourteenforty Research Institute, Inc. 25 Memory virtualizationMemory virtualizationMemory virtualizationMemory virtualization • If the processor supports EPT (Extended Page Table), this 2-stages translation is automatically done by the MMU – EPT is not implemented yet • VMM should implement this translation as software using Shadow Paging
  • 26. Fourteenforty Research Institute, Inc. 26 Shadow PagingShadow PagingShadow PagingShadow Paging Guest VA Guest PA Guest VMM Host PA Guest VA Shadow Page Table • VMM updates SPT on #PF in the guest – and also emulates TLB flush caused by MOV to CR3 and INVLPG TLBCR3
  • 27. Fourteenforty Research Institute, Inc. 27 Intel VTIntel VTIntel VTIntel VT • Intel VT is the Intel VT-* family's generic name – VT-x, virtualization for x86/64 – VT-d, virtualization for device (Directed I/O) – VT-i, virtualization for Itanium • Key factors – VMX mode • VMX root-operations(ring0-3) • VMX non-root-operations(ring0-3) – VMCS (Virtual Machine Control Structure) – VMX Instructions set • VMXON, VMXOFF, VMLAUNCH, VMRESUME, VMCALL, VMWRITE, VMREAD, VMCLEAR, VMPTRLD, VMPTRST
  • 28. Fourteenforty Research Institute, Inc. 28 How Intel VT works:How Intel VT works:How Intel VT works:How Intel VT works: VMM Guest (Current) VMCS Guest State Area Host State Area VM-execution control field VM-entry control fields VM-exit control fields VM-exit information fields GDTR IDTR ・・・ GDTR IDTR ・・・ Excpt bitmap IO bitmap ・・・ Exit Reason VM-exit VM-exit control for MSR ・・・ Event Injection ・・・ Exit Qualification ・・・ VM-entry process the event
  • 29. Fourteenforty Research Institute, Inc. 29 enum EXIT_REASON {enum EXIT_REASON {enum EXIT_REASON {enum EXIT_REASON { • Specific instructions – CPUID, INVD, INVLPG, RDTSC, RDPMC, HLT, etc. – All VMX Instructions • I/O Instructions – IN, OUT, etc. • Exceptions • Access to CR0-CR4, DR0-DR7, MSR • etc. };
  • 30. Fourteenforty Research Institute, Inc. 30 Steps to launch the VMM and VMSteps to launch the VMM and VMSteps to launch the VMM and VMSteps to launch the VMM and VM • Confirm that the processor supports VMX operations – CPUID • Confirm that VMX operations are not disabled in the BIOS – MSR_IA32_FEATURE_CONTROL • Set the CR4.VMXE bit • Allocate and Initialize VMXON region – Write lower 32 bits value of VMX_BASIC_MSR to VMXON region • Execute VMXON – CR0.PE, CR0.PG, and CR4.VME must be set.
  • 31. Fourteenforty Research Institute, Inc. 31 Steps to launch the VM and VMM (cont.)Steps to launch the VM and VMM (cont.)Steps to launch the VM and VMM (cont.)Steps to launch the VM and VMM (cont.) • Allocate VMCS regions • Execute VMPTRLD to set Current VMCS • Initialize Current VMCS using VMREAD and VMWRITE – VMCS contains the EP of VMM, and Guest IP after VMLAUNCH • Execute VMLAUNCH – Continue to execute the guest from IP is contained in VMCS • When VM-exit occurred, IP and other registers are switched to VMM ones.
  • 32. Fourteenforty Research Institute, Inc. 32 3. Viton, Hypervisor IPS3. Viton, Hypervisor IPS3. Viton, Hypervisor IPS3. Viton, Hypervisor IPS
  • 33. Fourteenforty Research Institute, Inc. 33 VitonVitonVitonViton • IPS, which runs outside the guest • Just a PoC, tested on Windows XP SP2 only • Force immutability to persistent system resources • Observe control/system registers modification, and VMX instructions are raised in the guest • Offer the extensibility for monitoring the guest activity • It is based on BitvisorBitvisorBitvisorBitvisor
  • 34. Fourteenforty Research Institute, Inc. 34 BitvisorBitvisorBitvisorBitvisor ---- http://www.securevm.orghttp://www.securevm.orghttp://www.securevm.orghttp://www.securevm.org • The Bitvisor VMM software is developed by the Secure VM project centered around Tsukuba Univ. in Japan • Features: – Open source, BSD License – Semi-path through model – Type I VMM (Hypervisor model, like Xen) – Full scratched, pure domestic production – Support for 32/64 bits architecture in VMM – Support for Multi-core/processor in VMM and Guest – Can run Windows XP/Vista as Guests without modification – Support for PAE in the Guest – Support for Real-mode emulation
  • 35. Fourteenforty Research Institute, Inc. 35 How Bitvisor works: Launch processHow Bitvisor works: Launch processHow Bitvisor works: Launch processHow Bitvisor works: Launch process GRUB Bitvisor BIOS Windows Switch to protect-mode(enable paging), Enter VMX-mode Launch the VMM and VM Bitvisor emulates real-mode operations, return after BIOS is executed NTLDR
  • 36. Fourteenforty Research Institute, Inc. 36 What Viton protects/detects:What Viton protects/detects:What Viton protects/detects:What Viton protects/detects: • Instructions – Detect and block all VMX Instructions • Registers – Watchdog for IDTR – Locking the MSR[SYSTENR_EIP] – Locking the CR0.WP Bit • Memory – Protect from modification • All code sections (R-X) in ntoskrnl.exe • IDT • SDT • SDT.ST (SSDT)
  • 37. Fourteenforty Research Institute, Inc. 37 How to protect the guest memory modificationHow to protect the guest memory modificationHow to protect the guest memory modificationHow to protect the guest memory modification Host PA Guest VA SPT • Viton clears the WR bit in a SPT entry – If CR0.WP is set, even the kernel cannot modify the page Page number P W R U S P W T P C D ADOS R
  • 38. Fourteenforty Research Institute, Inc. 38 How to recognize the guest memory layoutHow to recognize the guest memory layoutHow to recognize the guest memory layoutHow to recognize the guest memory layout 0x00000000 0x80000000 0xffffffff Guest IDTR IDT ntoskrnl.exe N pages "MZ" "PE¥0¥0" .edata .text ... We can implement GetNtoskrnlSymbolAddr() to parse the .edata section in guest VA space.
  • 39. Fourteenforty Research Institute, Inc. 39 GuestGuestGuestGuest activity monitoringactivity monitoringactivity monitoringactivity monitoring • When we use the Viton, no one can modify the kernel code, excluding the Viton. • Viton can monitor the guest's activity by hooking the code 1. Allocate memory for detours in the guest VA space 2. Setup the detours buffer 3. Hook the target function
  • 40. Fourteenforty Research Institute, Inc. 40 How to allocate memory in guest VA spaceHow to allocate memory in guest VA spaceHow to allocate memory in guest VA spaceHow to allocate memory in guest VA space Guest Viton int3 push 0x1000 push 0x0 call ExAllocatePool int 3 some function mov edi, edi push ebp ... Save the original code
  • 41. Fourteenforty Research Institute, Inc. 41 How to allocate memory in guest VA spaceHow to allocate memory in guest VA spaceHow to allocate memory in guest VA spaceHow to allocate memory in guest VA space Guest Viton int3 push 0x1000 push 0x0 call ExAllocatePool int 3 some function VM-exit Save the general purpose register's values Add EIP(skip int3 inst.)VM-entry VM-exit Retrieve allocated memory address (EAX holds it)
  • 42. Fourteenforty Research Institute, Inc. 42 How to allocate memory in guest VA spaceHow to allocate memory in guest VA spaceHow to allocate memory in guest VA spaceHow to allocate memory in guest VA space Guest Viton some function mov edi, edi push ebp ... Restore the original code, return to the func EP. (Viton can control EIP/ESP) VM-entry
  • 43. Fourteenforty Research Institute, Inc. 43 How to hook the guest codeHow to hook the guest codeHow to hook the guest codeHow to hook the guest code xor eax, eax ... target function detours_buf Guest Viton jmp detours_buf hook_code original code jmp caller_func When the target function is called, 1. jump to the detours_buf 2. Execute our hook_code 3. Execute original code which is overwritten by "jmp detours_buf" 4. jump to the next code of overwritten one
  • 44. Fourteenforty Research Institute, Inc. 44 What can Viton do hooking the guest code ?What can Viton do hooking the guest code ?What can Viton do hooking the guest code ?What can Viton do hooking the guest code ? • Viton can retrieve the guest information in hook_code – int3 and other inst. that cause VM-exit are useful • So, Wouldn't you hook below functions ? – ZwCreateProcess/ZwTerminateProcess – ZwLoadDriver • Then, Viton understands process, driver and other guest system resource information.
  • 45. Fourteenforty Research Institute, Inc. 45 DemoDemoDemoDemo
  • 46. Fourteenforty Research Institute, Inc. 46 DemoDemoDemoDemo
  • 47. Fourteenforty Research Institute, Inc. 47 DemoDemoDemoDemo
  • 48. Fourteenforty Research Institute, Inc. 48 VMM dbgsh (Bitvisor's debuging function)dbgsh (Bitvisor's debuging function)dbgsh (Bitvisor's debuging function)dbgsh (Bitvisor's debuging function) log buffer Guest VMCALL VM-exit VM-entry log message through general purpose register
  • 49. Fourteenforty Research Institute, Inc. 49 DemoDemoDemoDemo ro_list: read only list
  • 50. Fourteenforty Research Institute, Inc. 50 DemoDemoDemoDemo
  • 51. Fourteenforty Research Institute, Inc. 51 DemoDemoDemoDemo
  • 52. Fourteenforty Research Institute, Inc. 52 DemoDemoDemoDemo
  • 53. Fourteenforty Research Institute, Inc. 53 DemoDemoDemoDemo
  • 54. Fourteenforty Research Institute, Inc. 54 Viton vs.Viton vs.Viton vs.Viton vs. • Type I – Easy • Type II – DKOM: Difficult, but possible – KOH: Difficult, we need more research, and breakthrough • Type III – Easy (First come, first served)
  • 55. Fourteenforty Research Institute, Inc. 55 4. Conclusions4. Conclusions4. Conclusions4. Conclusions • Virtualization Technology becomes a help to protect the kernel • However, it is not a silver bullet – Foundation for existing security solutions
  • 56. Fourteenforty Research Institute, Inc. 5656 Thank you! Fourteenforty Research Institute, Inc. http://www.fourteenforty.jp Senior Research Engineer Junichi Murakami <murakami@fourteenforty.jp>