SlideShare une entreprise Scribd logo
1  sur  58
Télécharger pour lire hors ligne
Shooting the OS X El Capitan Kernel
Like a Sniper
Liang Chen @chenliang0817
Qidan He @flanker_hqd
About us
• Liang	Chen
• Senior	Security	Researcher
• Main	focus:	browser	vulnerability	research,	OS	X	kernel,	Android	Root
• Qidan He
• Senior	Security	Researcher
• Main	focus: Sandbox	escape,	mobile	security,	Kernel	research
• Tencent Security	Team	Sniper	(KeenLab and	PC	Manager)	won	Master	
of	Pwn in	this	year’s	Pwn2Own
Agenda
• OS X kernel exploitation mitigation recap
• New approach to exploit kernel under sandboxed process
• Demo
OS X kernel mitigation
• kASLR
• kslide is	assigned	upon	booting.	(Kexts and	kernel	share	the	same	slide)
• DEP
• Disallow kernel RWX
• SMEP
• Disallow kernel code execution from userland address space
Mitigation introduced by El Capitan
• SMAP
• Disallow memory access from userland address space
• Enabled only on supported CPU architecture
• From unsupported architecture
• Supported architecture
Mitigation introduced by El Capitan
• OOL leak mitigation 1: Structure change in vm_map_copy
After El CapitanBefore El Capitan
Kdata pointer is	good	 candidate	for	AAR	with	overflow	
vulnerability
Kdata pointer	is	removed
Mitigation introduced by El Capitan
• OOL leak mitigation 1: Structure change in vm_map_copy
• Still	able	to	achieve	limited	OOB	read,	by	increasing	size	field
• “OS	X	kernel	is	as	strong	as	its	weakest	part”:
http://powerofcommunity.net/poc2015/liang.pdf
• “Free to other zone” approach by @qwertyoruiop:	
• “Attacking	the	XNU	Kernel	in	El	Capitan”:	https://www.blackhat.com/docs/eu-
15/materials/eu-15-Todesco-Attacking-The-XNU-Kernal-In-El-Capitain.pdf
Mitigation introduced by El Capitan
• OOL leak mitigation 2
• Introducedin 10.11.1
• Changing size field can lead to panic when reading/receiving OOL data
Mitigation introduced by El Capitan
• OOL leak mitigation 2:What happened
mach_msg_ool_descriptor_t vm_map_copy
Two	redundant	size	fields
Mitigation introduced by El Capitan
• OOL leak mitigation 2
• Check	mach_msg_ool_descriptor_t.size ==	mach_msg_ool_descriptor_t.address.size
Panic	if	size	mismatch
What	if	copy->size	is	
modified	 in	between?
TOCTTOU?	Ah!
Mitigation introduced by El Capitan
• OOL leak mitigation
• Make	general	info	leak	approach	harder
• Still	vulnerable
• TOCTTOU	issue	exists	(Although	very	small	time	window)
• Other	approaches
• Effective	mitigation
• Harder	kernel	exploitation
• Even	for	perfect	overflow	vulnerability	(length	+	content	both	controllable)
OS X kernel exploitation requirement
• Leak	kslide
• vm_map_copy followed	by	vtable object	- Mitigated
• Leak	address	pointer	of	controllable	data
• Bypass	SMAP/SMEP
• Needed	by	both	ROP	approach	and	AAR/AAW	primitive	approach
• mach_port_kobject – Mitigated
• Even	worse	thing	is…
• We	need	perfect	overflow	bug	to	achieve	those
• Many	bugs/exploitation	approach	are	not	reachable	from	remote	attack	
surface	(Safari	browser)
How about non-perfect write? Even harder…
Remind me the hard time of IE exploitation in 2012...
Memory Spraying
• Heap spraying concept on browsers
• Helpful to exploitation development (Extremely useful before we got info leak)
• Widely used on 32bit systems
• Effective when memory is larger than address space
• On 64bit systems, less effective
Run the code three times:
Result in:
256 *	4G memory to reliably fill specific data at target address
Memory Spraying in Kernel
• OOL vm_map_copy is still good candidate for memory spraying
• OOL data keeping in kernel before receiving
• But…
• OS X Kernel is 64bit
• Address space larger than physical memory
• Seems hard?
Memory Spraying in Kernel
• Question?
• Is OS X Kernel address space really large (than physical address) ?
• kalloc random?
Memory Spraying in Kernel
• Kernel/Kext text	base
• Fixed	base	+	kslide
• Kslide range	:	(0x00	– 0xff)<<21,	max	0x1fe0	0000
• Address	coverage	less	than	512MB	+	Kernel	+	Kext size
• Much	smaller	than	physical	memory	size
• Kernel/Kext data base
• Fixed	base	+	kslide
• Much	smaller	than	physical	memory	size also
Memory Spraying in Kernel
• How about kalloc zone address
• zone_map->hdr.links.start
• Heavily dependent on kslide
• Not too far away from the end of kernel
• Allocationstarts from low to high
zone_map.hdr.start kslide zone_map.hdr.start - kslide
0xffffff803b1d4000 0x1c400000 0xffffff801edd4000
0xffffff802071e000 0x1800000 0xffffff801ef1e000
0xffffff80247cc000 0x6a00000 0xffffff801ddcc000
0xffffff803610c000 0x18200000 0xffffff801df0c000
Memory Spraying in Kernel
• Conclusion
• Spray with OOL approach
• With more than 512 MB *	2
• Reliable (Controllabledata at fixed address)
Memory Spraying in Kernel
Memory Spraying in Kernel
• Why spraying?
• A	good	workaround	to	leak	some	kalloc-ed address
• Locate	kernel	ROP	chain	to	bypass	SMAP/SMEP,	thanks	to	OOL’s	spraying	
feature
• Other	good	features	to	help	our	“Sniper”
• Sniper	means	remotely	(from	browser),	faraway	(address),	but	reliable
Case Study
CVE-2016-1815 – ‘Blit’zard - our P2O
bug
• This	bug	lies	in	IOAcceleratorFamily
• A	vector	write	goes	out-of-bound	under	certain	carefully	prepared	
situations	(8	IOkit calls)	in	a	newly	allocated	kalloc.48	block
• Finally	goes	into	IGVector::add	lead	to	OOB	write
0x28 0x1 size capa storage deadbeefsize capa storage size capa storage
IGV ector
48′
block controlled 48′
block
Fake IGV ector Fake IGV ector
• rect_pair_t is	pair	of	two	rectangles,	totally	8	floats,	in	range	[-0xffff,	0xffff](hex)
• Overwrite	starts	at	storage	+	24,	ends	at	storage
• In	IEEE.754	representation	the	float	is	in	range	[0x3f800000,	0x477fff00],	[0xbf800000,	0xc77fff00]
• We	will	not	discuss	about	the	detailed	reason	of	this	vulnerability	here
Found a write-something vulnerability?
• Write	anything	anywhere	– piece	of	cake
• Write	*more*	*restricted*	something	anywhere?
• What	if	you	can	only	write	eight	floats	continuously	in	range	[-0xffff,	
0xffff]?
• Translate	to	range	
• 0x3f800000	3f800000	- 0x477fff00	477fff00
• 0xbf800000	bf800000	- 0xc77fff00	c77fff00
Challenges
• How	to	turn	it	into	RIP	control?
• Write	where?	Write	what?	Stability?	Must	Sandbox	reachable!
• How	to	defeat	kASLR?
• Pwn the	Apple	with	a	single	bug?
Hard, but not impossible!
Challenge #1
• Overwriting	vm_map_copy length?
• Apple	fixed	that	in	10.11.1
• Still	have	ways	to	bypass...
• Not	applicable	to	our	vulnerability
• Why?
• Adjacent	write
• Write	value	qword	not	good
• 0x3f....3f....
• 0xbf....bf....
• Overwriting	some	address?
0xffffff80 81abcdef
HIGH
LOW
IOUserClient
Object
bf
80
00
00
bf
80
00
00
ff
ff
ff
80
81
ab
cd
ef
0xffffff80 81abcdef
HIGH
LOW
IOUserClient
Object
bf
80
00
00
bf
80
00
00
ff
ff
ff
80
81
ab
cd
ef
RAX	RSI	controllable
• Why	not	overwrite	vptr at	head	of	userclients?
• High	bytes	are	0xffffff7f,	address	content	not	controllable
• Except	RootDomainUserClient
• But	size	too	small	…	problems?
• N*PAGE_SIZE	allocations	are	more	reliable	and	predictable
• Speed	issues
• Spray	Speed	decreases	as	userclient count	increases
• Why?
• Child	IOUserClient need	to	link	to	their	parent	IOService
IORegistryEntry::attachToParent
IORegistryEntry::attachToChild (child	already	contains	refs	to	
parent,	No	need	to	call	attachToParent again
`links`	is	OSArray
arrayMember performs	linear
search
Oh	man	…	Total	time	complexity	here:	O(N^2)
setObject in	makeLinks
Freeing,	allocating	and	copying…
0
50
100
150
200
250
300
350
400
450
500
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
Total	Spray	Time
0
5
10
15
20
25
30
35
40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
Average	Spray	Time
It’s	in	2016	and	we	still	have	a	O(N^2)	time
complexity	function	in	the	core	of	a	modern	
operating	system…
(X	axis	multiply	by	0x500*5,	y	axis	in	second)
Hey man check your accelerator
• Nearly	all	IOAcceleratorFamily2	userclients have	a	`service`	pointer	
associated
• Point	to	IntelAccelerator
• Virtual	function	calls
• Heap	location	starts	with	0xffffff80	yeah
• Overwrite	it	and	point	it	to	controllable	memory!
• We	cannot	directly	call	the	fake	`service`’s virtual	function
• Header	of	vm_map_copy cannot	be	controlled
• An	indirect	virtual	function	call	is	needed
• Selector	0x0	(context_finish)	is	our	superstar
• Virtual	function	invoked	on	service->mEventMachine
Preparing memory
• Spray	0x50,000	ool_msgs,	pushing	heap	covering	0xffffff80	bf800000	
(B)	with	controlled	content	(ool)
• kASLR will	push	heap	location	up	or	pull	heap	down	at	each	boot
• This	is	a	stable	fixpointaddress	reachable	in	spraying
• Higher	addresses	not	applicable
• free	middle	parts	of	ool,	fill	with	IGAccelVideoContext covering	
0xffffff80	62388000 (A)
• Perform	write	at	A- 4		+	0x528	descending
• Call	each	IGAccelVideoContext’s externalMethod and	detect	
corruption
(the	offset	was	0x1230	in	10.11.3,	changed	afterwards)
For	the	record
• Now	we	have	known	address	A	covered	with	IGAccelVideoContext.
• Known	address	B	covered	with	vm_map_copy content	controlled.
• With	these	in	minds	lets	move	further	to	infoleak
Selector	0x100	of	IGAccelVideoContext
AppleIntelBDWGraphics::get_hw_steppings come	to	rescue!
Leaking strategy
• By	spraying	we	can	ensure	0xf…	62388000(A)	(lies	an	
IGAccelVideoContext
• And	0xf...	Bf800000(B)	lies	an	vm_map_copy	with	size	0x2000
• Overwrite	the	service	pointer	to	B,	point	to	controlled	vm_map_copy	
filled	with	0x4141414141414141	(at	0x1288	set	to	A	- 0xD0)
• Test	for	0x41414141	by	calling	get_hw_steppings on	sprayed	
userclients
• If	match,	we	get	the	index	of	userclient	being	corrupted
• a2[4]	returns	a	byte	at	A!
IGAccelVideoCont
ext
IGAccelVideoCont
ext
vm_map_copy vm_map_copy
…
0xff… 62388000
service field
0xff… bf800000
IntelAccelerator …
KALLOC.8192 ZONE
+0x528
IGAccelVideoCont
ext
IGAccelVideoCont
ext
vm_map_copy vm_map_copy…
0xff… 62388000
service field
0xff… bf800000
IntelAccelerator …
KALLOC.8192 ZONE
+0x528
IGAccelVideoCont
ext
IGAccelVideoCont
ext
vm_map_copy vm_map_copy
…
0xff… 62388000 0xff… bf800000
IntelAccelerator …
+0x528
vm_map_copy… …
vm_map_copy …
KALLOC.8192 ZONE
bf800000
bf801000
vm_map_copy header
+0x1140
niddle(filled 0x41414141) filled with 0x41414141
+0x1288
IGAccelVideoCont
ext
IGAccelVideoCont
ext
vm_map_copy vm_map_copy…
0xff… 62388000 0xff… bf800000
IntelAccelerator …
+0x528
vm_map_copy …
Leaking strategy?
• Wait…	what	if	the	predict	address	fall	at	the	1st	page	instead	of	0th?
• Middle	of	userclients	- 50%	chance
• Middle	of	vm_map_copy		- 50%	chance
• Write	twice	to	ensure	100%	success	rate
• OOB	write	at	A	and	A+0x1000
• A	- 0xD0	both	at	0x1288	and	0x288 for	vm_map_copy
+0x1000	lies	0
KALLOC.8192 ZONE
bf800000
bf801000
vm_map_copy header
+0x1140
niddle(filled 0x41414141) filled with 0x41414141
+0x1288
IGAccelVideoCont
ext
IGAccelVideoCont
ext
vm_map_copy vm_map_copy…
0xff… 62388000 0xff… bf800000
IntelAccelerator …
+0x528
vm_map_copy …
KALLOC.8192 ZONE
vm_map_copy header
+0x1140
niddle(filled 0x41414141) filled with 0x41414141
+0x1288
IGAccelVideoCont
ext
IGAccelVideoCont
ext
vm_map_copy vm_map_copy…
0xff… 62388000
0xff… bf800000
IntelAccelerator …
+0x1528
vm_map_copy …
0xff… bf801000
0xff… 62389000
+0x528
+0x288
0xff… bf800000
vm_map_copy
0xff… bf7ff000
+0x140
0xff… 6238a000
KALLOC.8192 ZONE
vm_map_copy header
+0x1140
niddle(filled 0x41414141) filled with 0x41414141
+0x1288
IGAccelVideoCont
ext
IGAccelVideoCont
ext
vm_map_copy vm_map_copy…
0xff… 62388000
0xff… bf800000
IntelAccelerator …
+0x1528
vm_map_copy …
0xff… bf801000
0xff… 62389000
+0x528
+0x288
0xff… bf800000
vm_map_copy
0xff… bf7ff000
+0x140
0xff… 6238a000
Replace with …N
+1000
Fill ool_msg with service offset point to
0xf… …N
Trigger IOConnect
Call
Leaked byte zero?
let N=N+1, free
and refill ool_msgs
KEXT vptr leaked
8 bytes all leaked?
kernel offset
leaked
redo with vptr value
Leaking strategy
• We	can	use	an	additional	read	to	determine	if	the	address	is	at	A	or	
A+0x1000
• If	we	try	A	but	its	actually	at	A+0x1000,	we	will	read	byte	at	+0x1000	of	
IGAccelVideoContext,	which	is	0,	then	we	can	try	again	with	A+0x1000	to	read	
the	correct	value
• Free	and	fill	the	vm_map_copy living	at	B	to	increment	the	location	to	
read	by	1	byte
• Free	and	fill	vm_map_copy ,	modified	with	leaked	vptr to	leak	kernel	
section	offset,	thus	kslide
• Better	way exists	- exercise	for	readers	J
Final workflow
• Spray	0x50000	ool_msgs with	data	size	0x2000	(2GB),	taint	with	
0x41414141,	write	A	at	0x1288	and	0x288	offset
• Free	middle	parts	of	ool_msgs,	fill	in	IGAccelVideoContext
• Trigger	oob write	at	A	- 0x4	+	0x528	and	A	-4	+	0x528	+0x1000
• Iterate	all	opened	IGAccelVideoContext	userclients,	call	get_hw_steppings	
and	look	for	4141,	adjust	0x1288	and	0x288	if	needed
• Change	to	A+0x1000	if	0	got
• Advance	read	location	1byte	by	1,	read	out	KEXT	vtable	address	and	then	
kern	address	offset
• Refill	ool_msgs	bundled	with	ROP	chain,	call	context_finish
• Pwn
Conclusion
• We	discussed	previous	exploitation	techniques	and	their	exploitations
• We	present	a	new	generalized	exploitation	technique	working	even	
on	restricted	OOB	write	abstracted	from	our	`blitzard`	exploitation
Credits
• Marco	Grassi
• Qoobee
• Wushi
• Windknown
• qwertyoruiop
• Ufotalent
Demo	&&	Questions?
• POC	will	be	available	at	https://github.com/flankerhqd/blitzard/in	a	
few	weeks
• We	will	talk	about	the	`blitzard`	itself	internals	at	Las	Vegas	Blackhat
USA	2016,	see	you	there	J
Recon2016 shooting the_osx_el_capitan_kernel_like_a_sniper_chen_he

Contenu connexe

Tendances

Windows Kernel Exploitation : This Time Font hunt you down in 4 bytes
Windows Kernel Exploitation : This Time Font hunt you down in 4 bytesWindows Kernel Exploitation : This Time Font hunt you down in 4 bytes
Windows Kernel Exploitation : This Time Font hunt you down in 4 bytesPeter Hlavaty
 
Injection on Steroids: Codeless code injection and 0-day techniques
Injection on Steroids: Codeless code injection and 0-day techniquesInjection on Steroids: Codeless code injection and 0-day techniques
Injection on Steroids: Codeless code injection and 0-day techniquesenSilo
 
Bypassing patchguard on Windows 8.1 and Windows 10
Bypassing patchguard on Windows 8.1 and Windows 10Bypassing patchguard on Windows 8.1 and Windows 10
Bypassing patchguard on Windows 8.1 and Windows 10Honorary_BoT
 
Security research over Windows #defcon china
Security research over Windows #defcon chinaSecurity research over Windows #defcon china
Security research over Windows #defcon chinaPeter Hlavaty
 
Process injection - Malware style
Process injection - Malware styleProcess injection - Malware style
Process injection - Malware styleSander Demeester
 
DeathNote of Microsoft Windows Kernel
DeathNote of Microsoft Windows KernelDeathNote of Microsoft Windows Kernel
DeathNote of Microsoft Windows KernelPeter Hlavaty
 
英文【Xu hao chen xiaobo】find your_own_ios_kernel_bug
英文【Xu hao chen xiaobo】find your_own_ios_kernel_bug英文【Xu hao chen xiaobo】find your_own_ios_kernel_bug
英文【Xu hao chen xiaobo】find your_own_ios_kernel_bugWang Hao Lee
 
Targeting the iOS kernel
Targeting the iOS kernelTargeting the iOS kernel
Targeting the iOS kernelSeguridad Apple
 
Java Deserialization Vulnerabilities - The Forgotten Bug Class (DeepSec Edition)
Java Deserialization Vulnerabilities - The Forgotten Bug Class (DeepSec Edition)Java Deserialization Vulnerabilities - The Forgotten Bug Class (DeepSec Edition)
Java Deserialization Vulnerabilities - The Forgotten Bug Class (DeepSec Edition)CODE WHITE GmbH
 
Captain Hook: Pirating AVs to Bypass Exploit Mitigations
Captain Hook: Pirating AVs to Bypass Exploit MitigationsCaptain Hook: Pirating AVs to Bypass Exploit Mitigations
Captain Hook: Pirating AVs to Bypass Exploit MitigationsenSilo
 
Steelcon 2014 - Process Injection with Python
Steelcon 2014 - Process Injection with PythonSteelcon 2014 - Process Injection with Python
Steelcon 2014 - Process Injection with Pythoninfodox
 
50 Shades of Fuzzing by Peter Hlavaty & Marco Grassi
50 Shades of Fuzzing by Peter Hlavaty & Marco Grassi50 Shades of Fuzzing by Peter Hlavaty & Marco Grassi
50 Shades of Fuzzing by Peter Hlavaty & Marco GrassiShakacon
 
Java Deserialization Vulnerabilities - The Forgotten Bug Class
Java Deserialization Vulnerabilities - The Forgotten Bug ClassJava Deserialization Vulnerabilities - The Forgotten Bug Class
Java Deserialization Vulnerabilities - The Forgotten Bug ClassCODE WHITE GmbH
 
When is something overflowing
When is something overflowingWhen is something overflowing
When is something overflowingPeter Hlavaty
 
Fun With Dr Brown
Fun With Dr BrownFun With Dr Brown
Fun With Dr BrownzeroSteiner
 
Surviving the Java Deserialization Apocalypse // OWASP AppSecEU 2016
Surviving the Java Deserialization Apocalypse // OWASP AppSecEU 2016Surviving the Java Deserialization Apocalypse // OWASP AppSecEU 2016
Surviving the Java Deserialization Apocalypse // OWASP AppSecEU 2016Christian Schneider
 
Serial Killer - Silently Pwning your Java Endpoints // OWASP BeNeLux Day 2016
Serial Killer - Silently Pwning your Java Endpoints // OWASP BeNeLux Day 2016Serial Killer - Silently Pwning your Java Endpoints // OWASP BeNeLux Day 2016
Serial Killer - Silently Pwning your Java Endpoints // OWASP BeNeLux Day 2016Christian Schneider
 
How Safe is your Link ?
How Safe is your Link ?How Safe is your Link ?
How Safe is your Link ?Peter Hlavaty
 

Tendances (20)

Windows Kernel Exploitation : This Time Font hunt you down in 4 bytes
Windows Kernel Exploitation : This Time Font hunt you down in 4 bytesWindows Kernel Exploitation : This Time Font hunt you down in 4 bytes
Windows Kernel Exploitation : This Time Font hunt you down in 4 bytes
 
Injection on Steroids: Codeless code injection and 0-day techniques
Injection on Steroids: Codeless code injection and 0-day techniquesInjection on Steroids: Codeless code injection and 0-day techniques
Injection on Steroids: Codeless code injection and 0-day techniques
 
Bypassing patchguard on Windows 8.1 and Windows 10
Bypassing patchguard on Windows 8.1 and Windows 10Bypassing patchguard on Windows 8.1 and Windows 10
Bypassing patchguard on Windows 8.1 and Windows 10
 
Security research over Windows #defcon china
Security research over Windows #defcon chinaSecurity research over Windows #defcon china
Security research over Windows #defcon china
 
Attack on the Core
Attack on the CoreAttack on the Core
Attack on the Core
 
Process injection - Malware style
Process injection - Malware styleProcess injection - Malware style
Process injection - Malware style
 
DeathNote of Microsoft Windows Kernel
DeathNote of Microsoft Windows KernelDeathNote of Microsoft Windows Kernel
DeathNote of Microsoft Windows Kernel
 
英文【Xu hao chen xiaobo】find your_own_ios_kernel_bug
英文【Xu hao chen xiaobo】find your_own_ios_kernel_bug英文【Xu hao chen xiaobo】find your_own_ios_kernel_bug
英文【Xu hao chen xiaobo】find your_own_ios_kernel_bug
 
Targeting the iOS kernel
Targeting the iOS kernelTargeting the iOS kernel
Targeting the iOS kernel
 
Java Deserialization Vulnerabilities - The Forgotten Bug Class (DeepSec Edition)
Java Deserialization Vulnerabilities - The Forgotten Bug Class (DeepSec Edition)Java Deserialization Vulnerabilities - The Forgotten Bug Class (DeepSec Edition)
Java Deserialization Vulnerabilities - The Forgotten Bug Class (DeepSec Edition)
 
Captain Hook: Pirating AVs to Bypass Exploit Mitigations
Captain Hook: Pirating AVs to Bypass Exploit MitigationsCaptain Hook: Pirating AVs to Bypass Exploit Mitigations
Captain Hook: Pirating AVs to Bypass Exploit Mitigations
 
Steelcon 2014 - Process Injection with Python
Steelcon 2014 - Process Injection with PythonSteelcon 2014 - Process Injection with Python
Steelcon 2014 - Process Injection with Python
 
50 Shades of Fuzzing by Peter Hlavaty & Marco Grassi
50 Shades of Fuzzing by Peter Hlavaty & Marco Grassi50 Shades of Fuzzing by Peter Hlavaty & Marco Grassi
50 Shades of Fuzzing by Peter Hlavaty & Marco Grassi
 
Java Deserialization Vulnerabilities - The Forgotten Bug Class
Java Deserialization Vulnerabilities - The Forgotten Bug ClassJava Deserialization Vulnerabilities - The Forgotten Bug Class
Java Deserialization Vulnerabilities - The Forgotten Bug Class
 
When is something overflowing
When is something overflowingWhen is something overflowing
When is something overflowing
 
Fun With Dr Brown
Fun With Dr BrownFun With Dr Brown
Fun With Dr Brown
 
Code Injection in Windows
Code Injection in WindowsCode Injection in Windows
Code Injection in Windows
 
Surviving the Java Deserialization Apocalypse // OWASP AppSecEU 2016
Surviving the Java Deserialization Apocalypse // OWASP AppSecEU 2016Surviving the Java Deserialization Apocalypse // OWASP AppSecEU 2016
Surviving the Java Deserialization Apocalypse // OWASP AppSecEU 2016
 
Serial Killer - Silently Pwning your Java Endpoints // OWASP BeNeLux Day 2016
Serial Killer - Silently Pwning your Java Endpoints // OWASP BeNeLux Day 2016Serial Killer - Silently Pwning your Java Endpoints // OWASP BeNeLux Day 2016
Serial Killer - Silently Pwning your Java Endpoints // OWASP BeNeLux Day 2016
 
How Safe is your Link ?
How Safe is your Link ?How Safe is your Link ?
How Safe is your Link ?
 

En vedette

A brief look at my work ...
A brief look at my work ...A brief look at my work ...
A brief look at my work ...erinmburke
 
3 diferencia entre aritmetica y algebra
3 diferencia entre aritmetica  y algebra3 diferencia entre aritmetica  y algebra
3 diferencia entre aritmetica y algebraOROREAL111
 
DIDAR: Database Intrusion Detection with Automated Recovery
DIDAR: Database Intrusion Detection with Automated RecoveryDIDAR: Database Intrusion Detection with Automated Recovery
DIDAR: Database Intrusion Detection with Automated RecoveryAsankhaya Sharma
 
FM training program
FM training program FM training program
FM training program Eric Etapa
 
Rúbrica de evaluación para la participación en foros
Rúbrica de evaluación para la participación en forosRúbrica de evaluación para la participación en foros
Rúbrica de evaluación para la participación en forosmgoc1210
 
SplunkLive! Analytics with Splunk Enterprise
SplunkLive! Analytics with Splunk EnterpriseSplunkLive! Analytics with Splunk Enterprise
SplunkLive! Analytics with Splunk EnterpriseSplunk
 
Why is asbestos so dangerous ?
Why is asbestos so dangerous ?Why is asbestos so dangerous ?
Why is asbestos so dangerous ?SharpLaw
 
interiordesign20112
interiordesign20112interiordesign20112
interiordesign20112Celina Lugo
 
Emeging Leader's Insitute
Emeging Leader's InsituteEmeging Leader's Insitute
Emeging Leader's InsituteAustin Mckain
 
20 Times Square renderings
20 Times Square renderings20 Times Square renderings
20 Times Square renderingsbreakfastagency
 
Verified Subtyping with Traits and Mixins
Verified Subtyping with Traits and MixinsVerified Subtyping with Traits and Mixins
Verified Subtyping with Traits and MixinsAsankhaya Sharma
 
Untitled Presentation
Untitled PresentationUntitled Presentation
Untitled PresentationOROREAL111
 
Foros LupitaOrozco
Foros LupitaOrozcoForos LupitaOrozco
Foros LupitaOrozcomgoc1210
 
Déroulement journée type
Déroulement journée typeDéroulement journée type
Déroulement journée typeYvon Brasseur
 

En vedette (20)

A brief look at my work ...
A brief look at my work ...A brief look at my work ...
A brief look at my work ...
 
3 diferencia entre aritmetica y algebra
3 diferencia entre aritmetica  y algebra3 diferencia entre aritmetica  y algebra
3 diferencia entre aritmetica y algebra
 
Brochure Costamare
Brochure Costamare Brochure Costamare
Brochure Costamare
 
DIDAR: Database Intrusion Detection with Automated Recovery
DIDAR: Database Intrusion Detection with Automated RecoveryDIDAR: Database Intrusion Detection with Automated Recovery
DIDAR: Database Intrusion Detection with Automated Recovery
 
Promote Chamber
Promote ChamberPromote Chamber
Promote Chamber
 
FM training program
FM training program FM training program
FM training program
 
Rúbrica de evaluación para la participación en foros
Rúbrica de evaluación para la participación en forosRúbrica de evaluación para la participación en foros
Rúbrica de evaluación para la participación en foros
 
SplunkLive! Analytics with Splunk Enterprise
SplunkLive! Analytics with Splunk EnterpriseSplunkLive! Analytics with Splunk Enterprise
SplunkLive! Analytics with Splunk Enterprise
 
Metro
MetroMetro
Metro
 
Why is asbestos so dangerous ?
Why is asbestos so dangerous ?Why is asbestos so dangerous ?
Why is asbestos so dangerous ?
 
interiordesign20112
interiordesign20112interiordesign20112
interiordesign20112
 
Emeging Leader's Insitute
Emeging Leader's InsituteEmeging Leader's Insitute
Emeging Leader's Insitute
 
Hq pixton nte rm
Hq pixton nte rmHq pixton nte rm
Hq pixton nte rm
 
20 Times Square renderings
20 Times Square renderings20 Times Square renderings
20 Times Square renderings
 
Verified Subtyping with Traits and Mixins
Verified Subtyping with Traits and MixinsVerified Subtyping with Traits and Mixins
Verified Subtyping with Traits and Mixins
 
Untitled Presentation
Untitled PresentationUntitled Presentation
Untitled Presentation
 
Foros LupitaOrozco
Foros LupitaOrozcoForos LupitaOrozco
Foros LupitaOrozco
 
SayCheese Ad
SayCheese AdSayCheese Ad
SayCheese Ad
 
Déroulement journée type
Déroulement journée typeDéroulement journée type
Déroulement journée type
 
FM Leadership Issue
FM Leadership IssueFM Leadership Issue
FM Leadership Issue
 

Similaire à Recon2016 shooting the_osx_el_capitan_kernel_like_a_sniper_chen_he

Metasploit & Windows Kernel Exploitation
Metasploit & Windows Kernel ExploitationMetasploit & Windows Kernel Exploitation
Metasploit & Windows Kernel ExploitationzeroSteiner
 
Pipiot - the double-architecture shellcode constructor
Pipiot - the double-architecture shellcode constructorPipiot - the double-architecture shellcode constructor
Pipiot - the double-architecture shellcode constructorMoshe Zioni
 
Brief Introduction to Parallella
Brief Introduction to ParallellaBrief Introduction to Parallella
Brief Introduction to ParallellaSomnath Mazumdar
 
Practical Windows Kernel Exploitation
Practical Windows Kernel ExploitationPractical Windows Kernel Exploitation
Practical Windows Kernel ExploitationzeroSteiner
 
Ceph: Open Source Storage Software Optimizations on Intel® Architecture for C...
Ceph: Open Source Storage Software Optimizations on Intel® Architecture for C...Ceph: Open Source Storage Software Optimizations on Intel® Architecture for C...
Ceph: Open Source Storage Software Optimizations on Intel® Architecture for C...Odinot Stanislas
 
Ice Age melting down: Intel features considered usefull!
Ice Age melting down: Intel features considered usefull!Ice Age melting down: Intel features considered usefull!
Ice Age melting down: Intel features considered usefull!Peter Hlavaty
 
Final draft intel core i5 processors architecture
Final draft intel core i5 processors architectureFinal draft intel core i5 processors architecture
Final draft intel core i5 processors architectureJawid Ahmad Baktash
 
IMCSummit 2015 - Day 2 IT Business Track - 4 Myths about In-Memory Databases ...
IMCSummit 2015 - Day 2 IT Business Track - 4 Myths about In-Memory Databases ...IMCSummit 2015 - Day 2 IT Business Track - 4 Myths about In-Memory Databases ...
IMCSummit 2015 - Day 2 IT Business Track - 4 Myths about In-Memory Databases ...In-Memory Computing Summit
 
[OpenStack Days Korea 2016] Track1 - All flash CEPH 구성 및 최적화
[OpenStack Days Korea 2016] Track1 - All flash CEPH 구성 및 최적화[OpenStack Days Korea 2016] Track1 - All flash CEPH 구성 및 최적화
[OpenStack Days Korea 2016] Track1 - All flash CEPH 구성 및 최적화OpenStack Korea Community
 
One Shellcode to Rule Them All: Cross-Platform Exploitation
One Shellcode to Rule Them All: Cross-Platform ExploitationOne Shellcode to Rule Them All: Cross-Platform Exploitation
One Shellcode to Rule Them All: Cross-Platform ExploitationQuinn Wilton
 
From L3 to seL4: What have we learnt in 20 years of L4 microkernels
From L3 to seL4: What have we learnt in 20 years of L4 microkernelsFrom L3 to seL4: What have we learnt in 20 years of L4 microkernels
From L3 to seL4: What have we learnt in 20 years of L4 microkernelsmicrokerneldude
 
Engage 2020 - Kubernetes for HCL Connections Component Pack - Build or Buy?
Engage 2020 - Kubernetes for HCL Connections Component Pack - Build or Buy?Engage 2020 - Kubernetes for HCL Connections Component Pack - Build or Buy?
Engage 2020 - Kubernetes for HCL Connections Component Pack - Build or Buy?panagenda
 
Kubernetes for HCL Connections Component Pack - Build or Buy?
Kubernetes for HCL Connections Component Pack - Build or Buy?Kubernetes for HCL Connections Component Pack - Build or Buy?
Kubernetes for HCL Connections Component Pack - Build or Buy?Martin Schmidt
 
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
 
Everything I Ever Learned About JVM Performance Tuning @Twitter
Everything I Ever Learned About JVM Performance Tuning @TwitterEverything I Ever Learned About JVM Performance Tuning @Twitter
Everything I Ever Learned About JVM Performance Tuning @TwitterAttila Szegedi
 
The Quest for the Perfect API
The Quest for the Perfect APIThe Quest for the Perfect API
The Quest for the Perfect APImicrokerneldude
 
Patching Windows Executables with the Backdoor Factory | DerbyCon 2013
Patching Windows Executables with the Backdoor Factory | DerbyCon 2013Patching Windows Executables with the Backdoor Factory | DerbyCon 2013
Patching Windows Executables with the Backdoor Factory | DerbyCon 2013midnite_runr
 

Similaire à Recon2016 shooting the_osx_el_capitan_kernel_like_a_sniper_chen_he (20)

Metasploit & Windows Kernel Exploitation
Metasploit & Windows Kernel ExploitationMetasploit & Windows Kernel Exploitation
Metasploit & Windows Kernel Exploitation
 
Pipiot - the double-architecture shellcode constructor
Pipiot - the double-architecture shellcode constructorPipiot - the double-architecture shellcode constructor
Pipiot - the double-architecture shellcode constructor
 
Brief Introduction to Parallella
Brief Introduction to ParallellaBrief Introduction to Parallella
Brief Introduction to Parallella
 
Practical Windows Kernel Exploitation
Practical Windows Kernel ExploitationPractical Windows Kernel Exploitation
Practical Windows Kernel Exploitation
 
Ceph: Open Source Storage Software Optimizations on Intel® Architecture for C...
Ceph: Open Source Storage Software Optimizations on Intel® Architecture for C...Ceph: Open Source Storage Software Optimizations on Intel® Architecture for C...
Ceph: Open Source Storage Software Optimizations on Intel® Architecture for C...
 
Ceph
CephCeph
Ceph
 
Ice Age melting down: Intel features considered usefull!
Ice Age melting down: Intel features considered usefull!Ice Age melting down: Intel features considered usefull!
Ice Age melting down: Intel features considered usefull!
 
Final draft intel core i5 processors architecture
Final draft intel core i5 processors architectureFinal draft intel core i5 processors architecture
Final draft intel core i5 processors architecture
 
IMCSummit 2015 - Day 2 IT Business Track - 4 Myths about In-Memory Databases ...
IMCSummit 2015 - Day 2 IT Business Track - 4 Myths about In-Memory Databases ...IMCSummit 2015 - Day 2 IT Business Track - 4 Myths about In-Memory Databases ...
IMCSummit 2015 - Day 2 IT Business Track - 4 Myths about In-Memory Databases ...
 
Ehcache 3 @ BruJUG
Ehcache 3 @ BruJUGEhcache 3 @ BruJUG
Ehcache 3 @ BruJUG
 
[OpenStack Days Korea 2016] Track1 - All flash CEPH 구성 및 최적화
[OpenStack Days Korea 2016] Track1 - All flash CEPH 구성 및 최적화[OpenStack Days Korea 2016] Track1 - All flash CEPH 구성 및 최적화
[OpenStack Days Korea 2016] Track1 - All flash CEPH 구성 및 최적화
 
One Shellcode to Rule Them All: Cross-Platform Exploitation
One Shellcode to Rule Them All: Cross-Platform ExploitationOne Shellcode to Rule Them All: Cross-Platform Exploitation
One Shellcode to Rule Them All: Cross-Platform Exploitation
 
From L3 to seL4: What have we learnt in 20 years of L4 microkernels
From L3 to seL4: What have we learnt in 20 years of L4 microkernelsFrom L3 to seL4: What have we learnt in 20 years of L4 microkernels
From L3 to seL4: What have we learnt in 20 years of L4 microkernels
 
Eusecwest
EusecwestEusecwest
Eusecwest
 
Engage 2020 - Kubernetes for HCL Connections Component Pack - Build or Buy?
Engage 2020 - Kubernetes for HCL Connections Component Pack - Build or Buy?Engage 2020 - Kubernetes for HCL Connections Component Pack - Build or Buy?
Engage 2020 - Kubernetes for HCL Connections Component Pack - Build or Buy?
 
Kubernetes for HCL Connections Component Pack - Build or Buy?
Kubernetes for HCL Connections Component Pack - Build or Buy?Kubernetes for HCL Connections Component Pack - Build or Buy?
Kubernetes for HCL Connections Component Pack - Build or Buy?
 
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 - ...
 
Everything I Ever Learned About JVM Performance Tuning @Twitter
Everything I Ever Learned About JVM Performance Tuning @TwitterEverything I Ever Learned About JVM Performance Tuning @Twitter
Everything I Ever Learned About JVM Performance Tuning @Twitter
 
The Quest for the Perfect API
The Quest for the Perfect APIThe Quest for the Perfect API
The Quest for the Perfect API
 
Patching Windows Executables with the Backdoor Factory | DerbyCon 2013
Patching Windows Executables with the Backdoor Factory | DerbyCon 2013Patching Windows Executables with the Backdoor Factory | DerbyCon 2013
Patching Windows Executables with the Backdoor Factory | DerbyCon 2013
 

Dernier

Elevate Your Business with Our IT Expertise in New Orleans
Elevate Your Business with Our IT Expertise in New OrleansElevate Your Business with Our IT Expertise in New Orleans
Elevate Your Business with Our IT Expertise in New Orleanscorenetworkseo
 
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一Fs
 
Contact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New DelhiContact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New Delhimiss dipika
 
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作ys8omjxb
 
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一Fs
 
Git and Github workshop GDSC MLRITM
Git and Github  workshop GDSC MLRITMGit and Github  workshop GDSC MLRITM
Git and Github workshop GDSC MLRITMgdsc13
 
Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Paul Calvano
 
Q4-1-Illustrating-Hypothesis-Testing.pptx
Q4-1-Illustrating-Hypothesis-Testing.pptxQ4-1-Illustrating-Hypothesis-Testing.pptx
Q4-1-Illustrating-Hypothesis-Testing.pptxeditsforyah
 
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书zdzoqco
 
Film cover research (1).pptxsdasdasdasdasdasa
Film cover research (1).pptxsdasdasdasdasdasaFilm cover research (1).pptxsdasdasdasdasdasa
Film cover research (1).pptxsdasdasdasdasdasa494f574xmv
 
SCM Symposium PPT Format Customer loyalty is predi
SCM Symposium PPT Format Customer loyalty is prediSCM Symposium PPT Format Customer loyalty is predi
SCM Symposium PPT Format Customer loyalty is predieusebiomeyer
 
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书rnrncn29
 
Magic exist by Marta Loveguard - presentation.pptx
Magic exist by Marta Loveguard - presentation.pptxMagic exist by Marta Loveguard - presentation.pptx
Magic exist by Marta Loveguard - presentation.pptxMartaLoveguard
 
『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书
『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书
『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书rnrncn29
 
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170Sonam Pathan
 
Call Girls Near The Suryaa Hotel New Delhi 9873777170
Call Girls Near The Suryaa Hotel New Delhi 9873777170Call Girls Near The Suryaa Hotel New Delhi 9873777170
Call Girls Near The Suryaa Hotel New Delhi 9873777170Sonam Pathan
 
Top 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptxTop 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptxDyna Gilbert
 
NSX-T and Service Interfaces presentation
NSX-T and Service Interfaces presentationNSX-T and Service Interfaces presentation
NSX-T and Service Interfaces presentationMarko4394
 

Dernier (20)

Elevate Your Business with Our IT Expertise in New Orleans
Elevate Your Business with Our IT Expertise in New OrleansElevate Your Business with Our IT Expertise in New Orleans
Elevate Your Business with Our IT Expertise in New Orleans
 
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
 
Contact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New DelhiContact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New Delhi
 
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
 
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
 
Git and Github workshop GDSC MLRITM
Git and Github  workshop GDSC MLRITMGit and Github  workshop GDSC MLRITM
Git and Github workshop GDSC MLRITM
 
Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24
 
Q4-1-Illustrating-Hypothesis-Testing.pptx
Q4-1-Illustrating-Hypothesis-Testing.pptxQ4-1-Illustrating-Hypothesis-Testing.pptx
Q4-1-Illustrating-Hypothesis-Testing.pptx
 
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
 
Film cover research (1).pptxsdasdasdasdasdasa
Film cover research (1).pptxsdasdasdasdasdasaFilm cover research (1).pptxsdasdasdasdasdasa
Film cover research (1).pptxsdasdasdasdasdasa
 
SCM Symposium PPT Format Customer loyalty is predi
SCM Symposium PPT Format Customer loyalty is prediSCM Symposium PPT Format Customer loyalty is predi
SCM Symposium PPT Format Customer loyalty is predi
 
young call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Service
young call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Serviceyoung call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Service
young call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Service
 
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书
 
Magic exist by Marta Loveguard - presentation.pptx
Magic exist by Marta Loveguard - presentation.pptxMagic exist by Marta Loveguard - presentation.pptx
Magic exist by Marta Loveguard - presentation.pptx
 
『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书
『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书
『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书
 
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
 
Call Girls Near The Suryaa Hotel New Delhi 9873777170
Call Girls Near The Suryaa Hotel New Delhi 9873777170Call Girls Near The Suryaa Hotel New Delhi 9873777170
Call Girls Near The Suryaa Hotel New Delhi 9873777170
 
Top 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptxTop 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptx
 
NSX-T and Service Interfaces presentation
NSX-T and Service Interfaces presentationNSX-T and Service Interfaces presentation
NSX-T and Service Interfaces presentation
 
Hot Sexy call girls in Rk Puram 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in  Rk Puram 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in  Rk Puram 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Rk Puram 🔝 9953056974 🔝 Delhi escort Service
 

Recon2016 shooting the_osx_el_capitan_kernel_like_a_sniper_chen_he