SlideShare uma empresa Scribd logo
1 de 57
www.ernw.de
General Pr0ken File System
Hacking IBM‘s GPFS
Felix Wilhelm & Florian Grunow
www.ernw.de
Agenda
¬ Technology Overview
¬ Digging in the Guts of GPFS
¬ Remote View
¬ Getting to the Core
¬ Q&A
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #2
www.ernw.de
Technology Overview
¬ IBM‘s General Parallel File System
¬ Cluster File System
¬ Claims to be …
 Fast
 Simple
 Scalable
¬ Multiple nodes interconnected, sharing their data
¬ Two main operation modes
 Nodes connected to SAN
 Network shared disks, connected to only some of the nodes
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #3
www.ernw.de
Technology Overview
¬ Different Operating Systems supported (NIX, Linux, Windows)
 We look at GPFS 3.5 on Linux
¬ Really long history
 tsXX (Tiger Shark File System, from 1993)
 mmfsXX (Multi Media File System)
¬ Who uses it?
 Many supercomputers
 Widely used in cluster architectures
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #4
www.ernw.de
Technology Overview - Components
¬ User Space Utilities:
 More than 200 binaries / shell scripts
 Symlinked or plain copies
 Some setuid binaries
¬ Communication Daemon:
 Running on all hosts (mmfsd)
 Proprietary communication protocol via TCP
¬ Kernel Module:
 Kernel module, binary only
 Wrapper module with available source code
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #5
www.ernw.de
Remember this
Structure for the Talk
…
¬ User Space Utilities
¬ Communication Daemon
¬ Kernel Module
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #6
www.ernw.de
Digging in the Guts of GPFS
Local User Space Attack
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #7
www.ernw.de
Userspace Utilities [flo@localhost bin]# ./tsstatus
The file system daemon is running.
[flo@localhost bin]# ./tsstatus AAA
mmcommon: File system AAA is not known
to the GPFS cluster.
[flo@localhost bin]# ./tsstatus %x
mmcommon: File system ffffffff is not
known to the GPFS cluster.
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #8
www.ernw.de
Digging in the Guts of GPFS
[flo@localhost bin]# ./tsstatus %x.%x
mmcommon: File system ffffffff.65747379 is not known to the GPFS
cluster.
[flo@localhost bin]# ./tsstatus %n
Segmentation fault
[flo@localhost bin]# ./tsstatus %s
Lost connection to file system daemon.
 Crash of mmfsd
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #9
www.ernw.de
First Blood
¬ Pretty standard format string
vulnerability
 Should be exploitable
 .. but why did the file system daemon
crash?
 Reported to vendor but no exploit
(just a PoC)
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #10
www.ernw.de
IBM General Parallel File System denial-of-service vulnerability
(CVE-2014-0834)
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #11
www.ernw.de
IBM General Parallel File System denial-of-service vulnerability
(CVE-2014-0834)
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #12
www.ernw.de
IBM General Parallel File System denial-of-service vulnerability
(CVE-2014-0834)
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #13
www.ernw.de
Research Time (gdb) run %n
Starting program:
/usr/lpp/mmfs/bin/tsstatus %n
Program received signal SIGSEGV,
Segmentation fault.
0x00000033270466f8 in vfprintf ()
from /lib64/libc.so.6
 It is a format string bug. But why can we
crash mmfsd?
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #14
www.ernw.de
tsstatus walkthrough (strace)
1. User calls tsstatus ABC.
2. tsstatus binds to a random TCP port (on all interfaces).
3. tsstatus sends port number and user input using a local
message queue.
4. mmfsd connects to the port and sends the result back.
5. tsstatus prints the results.
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #15
www.ernw.de
But Wait!
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #16
www.ernw.de
Walkthrough
1. User calls tsstatus ABC.
2. tsstatus binds to a port (on all interfaces).
3. tsstatus sends port number and user input using a
message queue.
4. mmfsd connects to local port and sends the result back.
 Result is returned as a format string + stack
 Stack creation by mmfsd does not support %s
5. tsstatus parses and prints the results.
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #17
www.ernw.de
Ideas for the Attack
¬ What happens if we connect to the tsstatus binary instead
of mmfsd?
¬ We can send our own format strings with a completely
controlled stack  Code Execution should be possible.
¬ Two challenges:
 Speed
 Which port?
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #18
www.ernw.de
Exploit
¬ Random Port
 Can be controlled using environment variable
“GPFSCMDPORTRANGE=31337”
¬ Race Condition
 Have to be faster than mmfsd. Race is easy to win on multi core
systems (thanks Frank ).
¬ Authentication?
 Looking at the binary shows a cookie value.
 Attaching a debugger and educated guessing  It’s the PID of
tsstatus
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #19
www.ernw.de
Exploit
¬ First Part:
 Set port using environment variable
 Win race
 Send PID of tsstatus
¬ Second Part:
 Get Code Execution working
 Should be easy … 
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #20
www.ernw.de
Exploit
¬ Format String + Controlled Stack:
 Arbitrary Write to Arbitrary Address using %n modifier.
 Binary is not PIE enabled (constant addresses).
 All system libraries + stack/heap addresses are randomized.
 Infoleak not possible  It is our stack!
¬ What to overwrite?
 Function pointer (DTOR, GOT)
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #21
www.ernw.de
Exploit
¬ Function Pointer
 Global Offset Table library functions.
 Find a library function that is called after the format string is triggered,
overwrite function pointer with starting address of ROP chain.
¬ Problem:
 Small binary, no usable stack pivot to start ROP-chain.
¬ Alternative:
 Just overwrite library function with a different one
 “printf” with “system”
 No compatible library functions found.
 Looks harder now! 
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #22
www.ernw.de
Alternative Approach
¬ Different kind of messages types can be sent by mmfsd
(and handled by the command line tools):
 Display Message (that’s what we used until now)
 General Error
 Edit Message
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #23
www.ernw.de
Edit Message for Fun and Profit!
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #24
¬ Server sends edit message
with arbitrary text content.
¬ CLI tool writes content into
a temp file, drops privileges
and opens editor specified
in EDITOR environment
variable.
¬ User can edit file. Closes
the editor  Data is sent
back to the server.
www.ernw.de
Exploiting Edit Message
¬ First two messages trigger format string vulnerability:
 Overwrite setgid() and setuid() with the address of a “ret”
instruction.
¬ Third message triggers “edit message” function
 EDITOR environment variable is set to “/usr/bin/perl”
 Content is something like this:
use POSIX qw(setuid setgid);
$ENV{"PATH"} = "/usr/bin:/bin";
setuid(0);
setgid(0);
system("/bin/bash");
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #25
www.ernw.de
Demo
Local Privilege Escalation
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #26
www.ernw.de
User Space Utilities – CVSS++
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #27
www.ernw.de
Remember this
Structure for the Talk
…
¬ User Space Utilities
 Local privilege escalation via format
string, sort of …
¬ Communication Daemon
¬ Kernel Module
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #28
www.ernw.de
WAT? ¬ This was a local exploit. What about
other systems in the cluster?
¬ Well….
¬ Cluster Nodes have to be able to
communicate using public key SSH
(or rsh).
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #29
www.ernw.de
Built-in functionality 
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #30
www.ernw.de
Built-in functionality 
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #31
www.ernw.de
Outside View
What if we don’t have access to a cluster node?
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #32
www.ernw.de
Remote Attack Surface: mmfsd
¬ Main network daemon of GPFS
¬ Listens on TCP port 1191 on every interface 
¬ Used for:
 Cluster communication
 State synchronization
 Network shared disks
¬ Cluster nodes open multiple persistent TCP connections.
¬ Mainly heartbeat messages + file synchronization (for network
shared disks).
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #33
www.ernw.de
Cluster Communication – Not Encrypted by Default
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #34
www.ernw.de
Remote Attack Surface: mmfsd
¬ Possibly no sensitive data on network shared disks.
¬ Communication over private interfaces.
 Direct attack against mmfsd would be great. 
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #35
www.ernw.de
GPFS Protocol Analysis
¬ Stateful Protocol
 Persistent connection
 Has to start with hello packet
 Exchange of data packets afterwards
 SSL possible
¬ Simple replay of something captured during an
established connection won’t have an effect.
 We need to send a valid hello packet.
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #36
www.ernw.de
Message Format – hello Packet
F3 68 90 38 AC 10 6C 82 AC 10 6C 83 00 00 05 1C
00 00 05 19 00 00 00 48 00 00 00 00 00 00 00 02
00 00 00 10 00 00 00 08 00 00 00 00 02 00 00 40
00 00 00 00 03 98 B3 93 54 3E 6A 7D 00 00 00 00
00 00 00 00 54 5B 78 31 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 05 00 00 00 28 00 01 86 9F
00 00 05 19 00 00 00 08 00 00 00 00 00 00 00 00
00 00 00 00 00 00 FF FF AC 10 6C 82 00 00 00 00
00 00 00 00 00 00 FF FF AC 10 6C 83
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #37
www.ernw.de
Message Format ¬ Magic constant
¬ IP addresses of source and
destination node
 Inside the TCP payload!
¬ Timestamps
¬ Cluster ID
¬ Variation of type, length, value
 Message type
 Length of next field
 Value content
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #38
F3 68 90 38
AC 10 6C 82
AC 10 6C 83
www.ernw.de
Authentication?
¬ Only allow communication from
nodes in the cluster
¬ Check is performed based on IP
addresses in the payload…
¬ Spoof valid node addresses  We
can communicate as part of the
cluster.
 LARGE Attack Surface
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #39
www.ernw.de
Remote Command Execution
¬ Search for interesting message types
 … some hours later
 “handleCCMsgMMRemote” message handler for message type
0xC
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #40
www.ernw.de
Remote Command Execution
¬ Passes message payload as argument to one of three
command line tools
 mmremote
 mmrts
 mmhelp
¬ Really old feature, mmremote is the only tool still
remaining.
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #41
www.ernw.de
Remote Command Execution
¬ mmremote:
 Bash Script 
 4k lines of code
 Surprisingly good quality
 By design very powerful (mounting, unmounting, uninstall … )
¬ Command Injection:
/usr/lpp/mmfs/bin/mmremote onbehalf2 a b c d
../../../../../bin/touch /tmp/pwn
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #42
www.ernw.de
Demo
Remote Command Execution
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #43
www.ernw.de
Communication Daemon – Lesson Learned?
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #44
www.ernw.de
Remember this
Structure for the Talk
… ¬ User Space Utilities
 Local privilege escalation via format
string, sort of …
¬ Communication Daemon
 Insufficient authentication
 Command injection
¬ Kernel Module
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #45
www.ernw.de
/dev/ss0
¬ Interface for communication between user space tools and
kernel over IOCTLs
 GPFS core libraries directly talk to this device  No global
permission check
¬ Checks are needed for each single IOCTL call
 Large Attack Surface (=~ 150 IOCTL defined)
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #46
www.ernw.de
Getting to the Core
Kernel Space Invaders
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #47
www.ernw.de
Kernel Modules
¬ GPFS loads three kernel modules
 mmfslinux
 mmfs26
 tracedev
¬ mmfslinux is a small GPL wrapper around mmfs26.
 Source Code available 
¬ Auditing IOCTL handler leads to interesting results.
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #48
www.ernw.de
kernelWaitForFlock
¬ IOCTL call 39
¬ No privilege checks 
¬ Called with user controlled arguments
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #49
Arbitrary Write! 
www.ernw.de
Kernel Module – Lesson Learned? Nope.
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #50
www.ernw.de
Got root?
1) Use arbitrary write to write address of our shellcode into
unused entry of the IOCTL handler table
2) Call backdoored IOCTL
3) Kernel executes shellcode and changes privileges of
current process to root
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #51
www.ernw.de
Demo
Invading Kernel Space
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #52
www.ernw.de
Remember this
Structure for the Talk
… ¬ User Space Utilities
 Local privilege escalation via format
string, sort of …
¬ Communication Daemon
 Insufficient authentication
 Command Injection
¬ Kernel Module
 Arbitrary write, code execution
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #53
www.ernw.de
IBM’s Response
¬ Professional handling
¬ „Optimistic“ estimation of exploitability
¬ Patches for all three bugs
 on Sunday! 
¬ Time-to-Patch ~30 days
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #54
www.ernw.de
Countermeasures
¬ Apply vendor patches
 Patches do not mitigate remote issue, only SSL helps …
¬ Additional hardening:
 All nodes should be fully trusted!
 Enable SSL!
 Firewall non-GPFS interfaces on port 1191!
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #55
www.ernw.de
Lessons Learned
¬ Attack surface is key!
 Attacker has more options available
 Countermeasures will fail more often
¬ Complexity kills!
¬ Old design/architecture always bears risks
¬ Never give up!
 If time is no issue  There will be a way
 Think out of the box  Creativity & Curiosity
 Have someone pressure you with a talk for Troopers … ;)
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #56
www.ernw.de
Q&A
6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #57

Mais conteúdo relacionado

Mais procurados

Stupid iptables tricks
Stupid iptables tricksStupid iptables tricks
Stupid iptables tricksJim MacLeod
 
Manual tarjeta timer hptdc8 driver v345.
Manual tarjeta timer hptdc8 driver v345.Manual tarjeta timer hptdc8 driver v345.
Manual tarjeta timer hptdc8 driver v345.Benjamin Montoya
 
10 step-to-configure-cisco-call-manager-express
10 step-to-configure-cisco-call-manager-express10 step-to-configure-cisco-call-manager-express
10 step-to-configure-cisco-call-manager-expressNguyen Thanh
 
Sdcch 12704657711474-phpapp02
Sdcch 12704657711474-phpapp02Sdcch 12704657711474-phpapp02
Sdcch 12704657711474-phpapp02Tapiwa Munetsi
 
BPF - All your packets belong to me
BPF - All your packets belong to meBPF - All your packets belong to me
BPF - All your packets belong to me_xhr_
 
Tcp ack or syn+ack coming to fwsm running tp mode when session is not in the ...
Tcp ack or syn+ack coming to fwsm running tp mode when session is not in the ...Tcp ack or syn+ack coming to fwsm running tp mode when session is not in the ...
Tcp ack or syn+ack coming to fwsm running tp mode when session is not in the ...IT Tech
 
Chap 27 next generation i pv6
Chap 27 next generation i pv6Chap 27 next generation i pv6
Chap 27 next generation i pv6Noctorous Jamal
 
Networking Tutorial Goes to Basic PPP Configuration
Networking Tutorial Goes to Basic PPP ConfigurationNetworking Tutorial Goes to Basic PPP Configuration
Networking Tutorial Goes to Basic PPP Configuration3Anetwork com
 
1unit2ndpart
1unit2ndpart1unit2ndpart
1unit2ndpartprksh89
 

Mais procurados (17)

Stupid iptables tricks
Stupid iptables tricksStupid iptables tricks
Stupid iptables tricks
 
Manual tarjeta timer hptdc8 driver v345.
Manual tarjeta timer hptdc8 driver v345.Manual tarjeta timer hptdc8 driver v345.
Manual tarjeta timer hptdc8 driver v345.
 
10 step-to-configure-cisco-call-manager-express
10 step-to-configure-cisco-call-manager-express10 step-to-configure-cisco-call-manager-express
10 step-to-configure-cisco-call-manager-express
 
Chap 09 icmp
Chap 09 icmpChap 09 icmp
Chap 09 icmp
 
Sdcch 12704657711474-phpapp02
Sdcch 12704657711474-phpapp02Sdcch 12704657711474-phpapp02
Sdcch 12704657711474-phpapp02
 
Slim Server Practical
Slim Server PracticalSlim Server Practical
Slim Server Practical
 
Beta kate
Beta kateBeta kate
Beta kate
 
Chap 17 dns
Chap 17 dnsChap 17 dns
Chap 17 dns
 
BPF - All your packets belong to me
BPF - All your packets belong to meBPF - All your packets belong to me
BPF - All your packets belong to me
 
Chap 19 ftp & tftp
Chap 19 ftp & tftpChap 19 ftp & tftp
Chap 19 ftp & tftp
 
Tcp ack or syn+ack coming to fwsm running tp mode when session is not in the ...
Tcp ack or syn+ack coming to fwsm running tp mode when session is not in the ...Tcp ack or syn+ack coming to fwsm running tp mode when session is not in the ...
Tcp ack or syn+ack coming to fwsm running tp mode when session is not in the ...
 
Chap 27 next generation i pv6
Chap 27 next generation i pv6Chap 27 next generation i pv6
Chap 27 next generation i pv6
 
Debugging 2013- Jesper Brouer
Debugging 2013- Jesper BrouerDebugging 2013- Jesper Brouer
Debugging 2013- Jesper Brouer
 
Networking Tutorial Goes to Basic PPP Configuration
Networking Tutorial Goes to Basic PPP ConfigurationNetworking Tutorial Goes to Basic PPP Configuration
Networking Tutorial Goes to Basic PPP Configuration
 
1unit2ndpart
1unit2ndpart1unit2ndpart
1unit2ndpart
 
Day2
Day2Day2
Day2
 
Chap 11 udp
Chap 11 udpChap 11 udp
Chap 11 udp
 

Destaque

Spectrum scale-external-unified-file object
Spectrum scale-external-unified-file objectSpectrum scale-external-unified-file object
Spectrum scale-external-unified-file objectSandeep Patil
 
Ibm spectrum scale fundamentals workshop for americas part 5 spectrum scale_c...
Ibm spectrum scale fundamentals workshop for americas part 5 spectrum scale_c...Ibm spectrum scale fundamentals workshop for americas part 5 spectrum scale_c...
Ibm spectrum scale fundamentals workshop for americas part 5 spectrum scale_c...xKinAnx
 
S cv0879 cloud-storage-options-edge2015-v4
S cv0879 cloud-storage-options-edge2015-v4S cv0879 cloud-storage-options-edge2015-v4
S cv0879 cloud-storage-options-edge2015-v4Tony Pearson
 
Implementing an NDMP backup solution using EMC NetWorker on IBM Storwize V700...
Implementing an NDMP backup solution using EMC NetWorker on IBM Storwize V700...Implementing an NDMP backup solution using EMC NetWorker on IBM Storwize V700...
Implementing an NDMP backup solution using EMC NetWorker on IBM Storwize V700...IBM India Smarter Computing
 
Ibm spectrum scale fundamentals workshop for americas part 8 spectrumscale ba...
Ibm spectrum scale fundamentals workshop for americas part 8 spectrumscale ba...Ibm spectrum scale fundamentals workshop for americas part 8 spectrumscale ba...
Ibm spectrum scale fundamentals workshop for americas part 8 spectrumscale ba...xKinAnx
 
Ibm spectrum scale fundamentals workshop for americas part 7 spectrumscale el...
Ibm spectrum scale fundamentals workshop for americas part 7 spectrumscale el...Ibm spectrum scale fundamentals workshop for americas part 7 spectrumscale el...
Ibm spectrum scale fundamentals workshop for americas part 7 spectrumscale el...xKinAnx
 
Ibm spectrum scale fundamentals workshop for americas part 2 IBM Spectrum Sca...
Ibm spectrum scale fundamentals workshop for americas part 2 IBM Spectrum Sca...Ibm spectrum scale fundamentals workshop for americas part 2 IBM Spectrum Sca...
Ibm spectrum scale fundamentals workshop for americas part 2 IBM Spectrum Sca...xKinAnx
 
Ibm spectrum scale fundamentals workshop for americas part 4 Replication, Str...
Ibm spectrum scale fundamentals workshop for americas part 4 Replication, Str...Ibm spectrum scale fundamentals workshop for americas part 4 Replication, Str...
Ibm spectrum scale fundamentals workshop for americas part 4 Replication, Str...xKinAnx
 
Ibm spectrum scale fundamentals workshop for americas part 6 spectrumscale el...
Ibm spectrum scale fundamentals workshop for americas part 6 spectrumscale el...Ibm spectrum scale fundamentals workshop for americas part 6 spectrumscale el...
Ibm spectrum scale fundamentals workshop for americas part 6 spectrumscale el...xKinAnx
 
Ibm spectrum scale fundamentals workshop for americas part 4 spectrum scale_r...
Ibm spectrum scale fundamentals workshop for americas part 4 spectrum scale_r...Ibm spectrum scale fundamentals workshop for americas part 4 spectrum scale_r...
Ibm spectrum scale fundamentals workshop for americas part 4 spectrum scale_r...xKinAnx
 
Ibm spectrum scale fundamentals workshop for americas part 3 Information Life...
Ibm spectrum scale fundamentals workshop for americas part 3 Information Life...Ibm spectrum scale fundamentals workshop for americas part 3 Information Life...
Ibm spectrum scale fundamentals workshop for americas part 3 Information Life...xKinAnx
 
IBM Spectrum Scale Overview november 2015
IBM Spectrum Scale Overview november 2015IBM Spectrum Scale Overview november 2015
IBM Spectrum Scale Overview november 2015Doug O'Flaherty
 
IBM Spectrum Scale for File and Object Storage
IBM Spectrum Scale for File and Object StorageIBM Spectrum Scale for File and Object Storage
IBM Spectrum Scale for File and Object StorageTony Pearson
 
Ibm spectrum scale fundamentals workshop for americas part 5 ess gnr-usecases...
Ibm spectrum scale fundamentals workshop for americas part 5 ess gnr-usecases...Ibm spectrum scale fundamentals workshop for americas part 5 ess gnr-usecases...
Ibm spectrum scale fundamentals workshop for americas part 5 ess gnr-usecases...xKinAnx
 
Ibm spectrum scale fundamentals workshop for americas part 1 components archi...
Ibm spectrum scale fundamentals workshop for americas part 1 components archi...Ibm spectrum scale fundamentals workshop for americas part 1 components archi...
Ibm spectrum scale fundamentals workshop for americas part 1 components archi...xKinAnx
 
Spectrum Scale final
Spectrum Scale finalSpectrum Scale final
Spectrum Scale finalJoe Krotz
 
Building highly available architectures with WAS and MQ
Building highly available architectures with WAS and MQBuilding highly available architectures with WAS and MQ
Building highly available architectures with WAS and MQMatthew White
 
Practical Problem Solving with Apache Hadoop & Pig
Practical Problem Solving with Apache Hadoop & PigPractical Problem Solving with Apache Hadoop & Pig
Practical Problem Solving with Apache Hadoop & PigMilind Bhandarkar
 

Destaque (20)

Spectrum scale-external-unified-file object
Spectrum scale-external-unified-file objectSpectrum scale-external-unified-file object
Spectrum scale-external-unified-file object
 
Ibm spectrum scale fundamentals workshop for americas part 5 spectrum scale_c...
Ibm spectrum scale fundamentals workshop for americas part 5 spectrum scale_c...Ibm spectrum scale fundamentals workshop for americas part 5 spectrum scale_c...
Ibm spectrum scale fundamentals workshop for americas part 5 spectrum scale_c...
 
S cv0879 cloud-storage-options-edge2015-v4
S cv0879 cloud-storage-options-edge2015-v4S cv0879 cloud-storage-options-edge2015-v4
S cv0879 cloud-storage-options-edge2015-v4
 
Implementing an NDMP backup solution using EMC NetWorker on IBM Storwize V700...
Implementing an NDMP backup solution using EMC NetWorker on IBM Storwize V700...Implementing an NDMP backup solution using EMC NetWorker on IBM Storwize V700...
Implementing an NDMP backup solution using EMC NetWorker on IBM Storwize V700...
 
Ibm spectrum scale fundamentals workshop for americas part 8 spectrumscale ba...
Ibm spectrum scale fundamentals workshop for americas part 8 spectrumscale ba...Ibm spectrum scale fundamentals workshop for americas part 8 spectrumscale ba...
Ibm spectrum scale fundamentals workshop for americas part 8 spectrumscale ba...
 
Ibm spectrum scale fundamentals workshop for americas part 7 spectrumscale el...
Ibm spectrum scale fundamentals workshop for americas part 7 spectrumscale el...Ibm spectrum scale fundamentals workshop for americas part 7 spectrumscale el...
Ibm spectrum scale fundamentals workshop for americas part 7 spectrumscale el...
 
Ibm spectrum scale fundamentals workshop for americas part 2 IBM Spectrum Sca...
Ibm spectrum scale fundamentals workshop for americas part 2 IBM Spectrum Sca...Ibm spectrum scale fundamentals workshop for americas part 2 IBM Spectrum Sca...
Ibm spectrum scale fundamentals workshop for americas part 2 IBM Spectrum Sca...
 
Ibm spectrum scale fundamentals workshop for americas part 4 Replication, Str...
Ibm spectrum scale fundamentals workshop for americas part 4 Replication, Str...Ibm spectrum scale fundamentals workshop for americas part 4 Replication, Str...
Ibm spectrum scale fundamentals workshop for americas part 4 Replication, Str...
 
FAST VP Deep Dive
FAST VP Deep DiveFAST VP Deep Dive
FAST VP Deep Dive
 
Ibm spectrum scale fundamentals workshop for americas part 6 spectrumscale el...
Ibm spectrum scale fundamentals workshop for americas part 6 spectrumscale el...Ibm spectrum scale fundamentals workshop for americas part 6 spectrumscale el...
Ibm spectrum scale fundamentals workshop for americas part 6 spectrumscale el...
 
Ibm spectrum scale fundamentals workshop for americas part 4 spectrum scale_r...
Ibm spectrum scale fundamentals workshop for americas part 4 spectrum scale_r...Ibm spectrum scale fundamentals workshop for americas part 4 spectrum scale_r...
Ibm spectrum scale fundamentals workshop for americas part 4 spectrum scale_r...
 
Ibm spectrum scale fundamentals workshop for americas part 3 Information Life...
Ibm spectrum scale fundamentals workshop for americas part 3 Information Life...Ibm spectrum scale fundamentals workshop for americas part 3 Information Life...
Ibm spectrum scale fundamentals workshop for americas part 3 Information Life...
 
IBM Spectrum Scale Overview november 2015
IBM Spectrum Scale Overview november 2015IBM Spectrum Scale Overview november 2015
IBM Spectrum Scale Overview november 2015
 
Contoh Refleksi Assignment IPG
Contoh Refleksi Assignment IPGContoh Refleksi Assignment IPG
Contoh Refleksi Assignment IPG
 
IBM Spectrum Scale for File and Object Storage
IBM Spectrum Scale for File and Object StorageIBM Spectrum Scale for File and Object Storage
IBM Spectrum Scale for File and Object Storage
 
Ibm spectrum scale fundamentals workshop for americas part 5 ess gnr-usecases...
Ibm spectrum scale fundamentals workshop for americas part 5 ess gnr-usecases...Ibm spectrum scale fundamentals workshop for americas part 5 ess gnr-usecases...
Ibm spectrum scale fundamentals workshop for americas part 5 ess gnr-usecases...
 
Ibm spectrum scale fundamentals workshop for americas part 1 components archi...
Ibm spectrum scale fundamentals workshop for americas part 1 components archi...Ibm spectrum scale fundamentals workshop for americas part 1 components archi...
Ibm spectrum scale fundamentals workshop for americas part 1 components archi...
 
Spectrum Scale final
Spectrum Scale finalSpectrum Scale final
Spectrum Scale final
 
Building highly available architectures with WAS and MQ
Building highly available architectures with WAS and MQBuilding highly available architectures with WAS and MQ
Building highly available architectures with WAS and MQ
 
Practical Problem Solving with Apache Hadoop & Pig
Practical Problem Solving with Apache Hadoop & PigPractical Problem Solving with Apache Hadoop & Pig
Practical Problem Solving with Apache Hadoop & Pig
 

Semelhante a General Pr0ken File System

Packet Sniffer
Packet Sniffer Packet Sniffer
Packet Sniffer vilss
 
CONFidence 2017: Escaping the (sand)box: The promises and pitfalls of modern ...
CONFidence 2017: Escaping the (sand)box: The promises and pitfalls of modern ...CONFidence 2017: Escaping the (sand)box: The promises and pitfalls of modern ...
CONFidence 2017: Escaping the (sand)box: The promises and pitfalls of modern ...PROIDEA
 
2009-03-13 Atlanda System z Council Meeting
2009-03-13 Atlanda System z Council Meeting2009-03-13 Atlanda System z Council Meeting
2009-03-13 Atlanda System z Council MeetingShawn Wells
 
P4+ONOS SRv6 tutorial.pptx
P4+ONOS SRv6 tutorial.pptxP4+ONOS SRv6 tutorial.pptx
P4+ONOS SRv6 tutorial.pptxtampham61268
 
Tesla Hacking to FreedomEV
Tesla Hacking to FreedomEVTesla Hacking to FreedomEV
Tesla Hacking to FreedomEVJasper Nuyens
 
Exploiting Network Protocols To Exhaust Bandwidth Links 2008 Final
Exploiting Network Protocols To Exhaust Bandwidth Links 2008 FinalExploiting Network Protocols To Exhaust Bandwidth Links 2008 Final
Exploiting Network Protocols To Exhaust Bandwidth Links 2008 Finalmasoodnt10
 
Linux Security and How Web Browser Sandboxes Really Work (NDC Oslo 2017)
Linux Security  and How Web Browser Sandboxes Really Work (NDC Oslo 2017)Linux Security  and How Web Browser Sandboxes Really Work (NDC Oslo 2017)
Linux Security and How Web Browser Sandboxes Really Work (NDC Oslo 2017)Patricia Aas
 
Asa pixfwsm multicast tips and common problems
Asa pixfwsm multicast tips and common problemsAsa pixfwsm multicast tips and common problems
Asa pixfwsm multicast tips and common problemsIT Tech
 
Forti gate troubleshooting_guide_v0.10
Forti gate troubleshooting_guide_v0.10Forti gate troubleshooting_guide_v0.10
Forti gate troubleshooting_guide_v0.10Phong Nguyễn
 
Android 5.0 Lollipop platform change investigation report
Android 5.0 Lollipop platform change investigation reportAndroid 5.0 Lollipop platform change investigation report
Android 5.0 Lollipop platform change investigation reporthidenorly
 
LF_DPDK17_GRO/GSO Libraries: Bring Significant Performance Gains to DPDK-base...
LF_DPDK17_GRO/GSO Libraries: Bring Significant Performance Gains to DPDK-base...LF_DPDK17_GRO/GSO Libraries: Bring Significant Performance Gains to DPDK-base...
LF_DPDK17_GRO/GSO Libraries: Bring Significant Performance Gains to DPDK-base...LF_DPDK
 
Gluster Cloud Night in Tokyo 2013 -- Tips for getting started
Gluster Cloud Night in Tokyo 2013 -- Tips for getting startedGluster Cloud Night in Tokyo 2013 -- Tips for getting started
Gluster Cloud Night in Tokyo 2013 -- Tips for getting startedKeisuke Takahashi
 
[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdf
[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdf[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdf
[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdfSteve Caron
 
OperatingSystemChp3
OperatingSystemChp3OperatingSystemChp3
OperatingSystemChp3Dwight Sabio
 
Отчет Audit report RAPID7
 Отчет Audit report RAPID7 Отчет Audit report RAPID7
Отчет Audit report RAPID7Sergey Yrievich
 
2018 - CertiFUNcation - Helmut Hummel: Hardening TYPO3
2018 - CertiFUNcation - Helmut Hummel: Hardening TYPO32018 - CertiFUNcation - Helmut Hummel: Hardening TYPO3
2018 - CertiFUNcation - Helmut Hummel: Hardening TYPO3TYPO3 CertiFUNcation
 

Semelhante a General Pr0ken File System (20)

Packet Sniffer
Packet Sniffer Packet Sniffer
Packet Sniffer
 
CONFidence 2017: Escaping the (sand)box: The promises and pitfalls of modern ...
CONFidence 2017: Escaping the (sand)box: The promises and pitfalls of modern ...CONFidence 2017: Escaping the (sand)box: The promises and pitfalls of modern ...
CONFidence 2017: Escaping the (sand)box: The promises and pitfalls of modern ...
 
2009-03-13 Atlanda System z Council Meeting
2009-03-13 Atlanda System z Council Meeting2009-03-13 Atlanda System z Council Meeting
2009-03-13 Atlanda System z Council Meeting
 
netLec5.pdf
netLec5.pdfnetLec5.pdf
netLec5.pdf
 
P4+ONOS SRv6 tutorial.pptx
P4+ONOS SRv6 tutorial.pptxP4+ONOS SRv6 tutorial.pptx
P4+ONOS SRv6 tutorial.pptx
 
Tesla Hacking to FreedomEV
Tesla Hacking to FreedomEVTesla Hacking to FreedomEV
Tesla Hacking to FreedomEV
 
Exploiting Network Protocols To Exhaust Bandwidth Links 2008 Final
Exploiting Network Protocols To Exhaust Bandwidth Links 2008 FinalExploiting Network Protocols To Exhaust Bandwidth Links 2008 Final
Exploiting Network Protocols To Exhaust Bandwidth Links 2008 Final
 
Linux Security and How Web Browser Sandboxes Really Work (NDC Oslo 2017)
Linux Security  and How Web Browser Sandboxes Really Work (NDC Oslo 2017)Linux Security  and How Web Browser Sandboxes Really Work (NDC Oslo 2017)
Linux Security and How Web Browser Sandboxes Really Work (NDC Oslo 2017)
 
Asa pixfwsm multicast tips and common problems
Asa pixfwsm multicast tips and common problemsAsa pixfwsm multicast tips and common problems
Asa pixfwsm multicast tips and common problems
 
Forti gate troubleshooting_guide_v0.10
Forti gate troubleshooting_guide_v0.10Forti gate troubleshooting_guide_v0.10
Forti gate troubleshooting_guide_v0.10
 
Android 5.0 Lollipop platform change investigation report
Android 5.0 Lollipop platform change investigation reportAndroid 5.0 Lollipop platform change investigation report
Android 5.0 Lollipop platform change investigation report
 
No More Fraud, Astricon, Las Vegas 2014
No More Fraud, Astricon, Las Vegas 2014No More Fraud, Astricon, Las Vegas 2014
No More Fraud, Astricon, Las Vegas 2014
 
LF_DPDK17_GRO/GSO Libraries: Bring Significant Performance Gains to DPDK-base...
LF_DPDK17_GRO/GSO Libraries: Bring Significant Performance Gains to DPDK-base...LF_DPDK17_GRO/GSO Libraries: Bring Significant Performance Gains to DPDK-base...
LF_DPDK17_GRO/GSO Libraries: Bring Significant Performance Gains to DPDK-base...
 
Gluster Cloud Night in Tokyo 2013 -- Tips for getting started
Gluster Cloud Night in Tokyo 2013 -- Tips for getting startedGluster Cloud Night in Tokyo 2013 -- Tips for getting started
Gluster Cloud Night in Tokyo 2013 -- Tips for getting started
 
[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdf
[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdf[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdf
[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdf
 
Ch3OperSys
Ch3OperSysCh3OperSys
Ch3OperSys
 
OperatingSystemChp3
OperatingSystemChp3OperatingSystemChp3
OperatingSystemChp3
 
Отчет Audit report RAPID7
 Отчет Audit report RAPID7 Отчет Audit report RAPID7
Отчет Audit report RAPID7
 
Report PAPID 7
Report PAPID 7Report PAPID 7
Report PAPID 7
 
2018 - CertiFUNcation - Helmut Hummel: Hardening TYPO3
2018 - CertiFUNcation - Helmut Hummel: Hardening TYPO32018 - CertiFUNcation - Helmut Hummel: Hardening TYPO3
2018 - CertiFUNcation - Helmut Hummel: Hardening TYPO3
 

Mais de Positive Hack Days

Инструмент ChangelogBuilder для автоматической подготовки Release Notes
Инструмент ChangelogBuilder для автоматической подготовки Release NotesИнструмент ChangelogBuilder для автоматической подготовки Release Notes
Инструмент ChangelogBuilder для автоматической подготовки Release NotesPositive Hack Days
 
Как мы собираем проекты в выделенном окружении в Windows Docker
Как мы собираем проекты в выделенном окружении в Windows DockerКак мы собираем проекты в выделенном окружении в Windows Docker
Как мы собираем проекты в выделенном окружении в Windows DockerPositive Hack Days
 
Типовая сборка и деплой продуктов в Positive Technologies
Типовая сборка и деплой продуктов в Positive TechnologiesТиповая сборка и деплой продуктов в Positive Technologies
Типовая сборка и деплой продуктов в Positive TechnologiesPositive Hack Days
 
Аналитика в проектах: TFS + Qlik
Аналитика в проектах: TFS + QlikАналитика в проектах: TFS + Qlik
Аналитика в проектах: TFS + QlikPositive Hack Days
 
Использование анализатора кода SonarQube
Использование анализатора кода SonarQubeИспользование анализатора кода SonarQube
Использование анализатора кода SonarQubePositive Hack Days
 
Развитие сообщества Open DevOps Community
Развитие сообщества Open DevOps CommunityРазвитие сообщества Open DevOps Community
Развитие сообщества Open DevOps CommunityPositive Hack Days
 
Методика определения неиспользуемых ресурсов виртуальных машин и автоматизаци...
Методика определения неиспользуемых ресурсов виртуальных машин и автоматизаци...Методика определения неиспользуемых ресурсов виртуальных машин и автоматизаци...
Методика определения неиспользуемых ресурсов виртуальных машин и автоматизаци...Positive Hack Days
 
Автоматизация построения правил для Approof
Автоматизация построения правил для ApproofАвтоматизация построения правил для Approof
Автоматизация построения правил для ApproofPositive Hack Days
 
Мастер-класс «Трущобы Application Security»
Мастер-класс «Трущобы Application Security»Мастер-класс «Трущобы Application Security»
Мастер-класс «Трущобы Application Security»Positive Hack Days
 
Формальные методы защиты приложений
Формальные методы защиты приложенийФормальные методы защиты приложений
Формальные методы защиты приложенийPositive Hack Days
 
Эвристические методы защиты приложений
Эвристические методы защиты приложенийЭвристические методы защиты приложений
Эвристические методы защиты приложенийPositive Hack Days
 
Теоретические основы Application Security
Теоретические основы Application SecurityТеоретические основы Application Security
Теоретические основы Application SecurityPositive Hack Days
 
От экспериментального программирования к промышленному: путь длиной в 10 лет
От экспериментального программирования к промышленному: путь длиной в 10 летОт экспериментального программирования к промышленному: путь длиной в 10 лет
От экспериментального программирования к промышленному: путь длиной в 10 летPositive Hack Days
 
Уязвимое Android-приложение: N проверенных способов наступить на грабли
Уязвимое Android-приложение: N проверенных способов наступить на граблиУязвимое Android-приложение: N проверенных способов наступить на грабли
Уязвимое Android-приложение: N проверенных способов наступить на граблиPositive Hack Days
 
Требования по безопасности в архитектуре ПО
Требования по безопасности в архитектуре ПОТребования по безопасности в архитектуре ПО
Требования по безопасности в архитектуре ПОPositive Hack Days
 
Формальная верификация кода на языке Си
Формальная верификация кода на языке СиФормальная верификация кода на языке Си
Формальная верификация кода на языке СиPositive Hack Days
 
Механизмы предотвращения атак в ASP.NET Core
Механизмы предотвращения атак в ASP.NET CoreМеханизмы предотвращения атак в ASP.NET Core
Механизмы предотвращения атак в ASP.NET CorePositive Hack Days
 
SOC для КИИ: израильский опыт
SOC для КИИ: израильский опытSOC для КИИ: израильский опыт
SOC для КИИ: израильский опытPositive Hack Days
 
Honeywell Industrial Cyber Security Lab & Services Center
Honeywell Industrial Cyber Security Lab & Services CenterHoneywell Industrial Cyber Security Lab & Services Center
Honeywell Industrial Cyber Security Lab & Services CenterPositive Hack Days
 
Credential stuffing и брутфорс-атаки
Credential stuffing и брутфорс-атакиCredential stuffing и брутфорс-атаки
Credential stuffing и брутфорс-атакиPositive Hack Days
 

Mais de Positive Hack Days (20)

Инструмент ChangelogBuilder для автоматической подготовки Release Notes
Инструмент ChangelogBuilder для автоматической подготовки Release NotesИнструмент ChangelogBuilder для автоматической подготовки Release Notes
Инструмент ChangelogBuilder для автоматической подготовки Release Notes
 
Как мы собираем проекты в выделенном окружении в Windows Docker
Как мы собираем проекты в выделенном окружении в Windows DockerКак мы собираем проекты в выделенном окружении в Windows Docker
Как мы собираем проекты в выделенном окружении в Windows Docker
 
Типовая сборка и деплой продуктов в Positive Technologies
Типовая сборка и деплой продуктов в Positive TechnologiesТиповая сборка и деплой продуктов в Positive Technologies
Типовая сборка и деплой продуктов в Positive Technologies
 
Аналитика в проектах: TFS + Qlik
Аналитика в проектах: TFS + QlikАналитика в проектах: TFS + Qlik
Аналитика в проектах: TFS + Qlik
 
Использование анализатора кода SonarQube
Использование анализатора кода SonarQubeИспользование анализатора кода SonarQube
Использование анализатора кода SonarQube
 
Развитие сообщества Open DevOps Community
Развитие сообщества Open DevOps CommunityРазвитие сообщества Open DevOps Community
Развитие сообщества Open DevOps Community
 
Методика определения неиспользуемых ресурсов виртуальных машин и автоматизаци...
Методика определения неиспользуемых ресурсов виртуальных машин и автоматизаци...Методика определения неиспользуемых ресурсов виртуальных машин и автоматизаци...
Методика определения неиспользуемых ресурсов виртуальных машин и автоматизаци...
 
Автоматизация построения правил для Approof
Автоматизация построения правил для ApproofАвтоматизация построения правил для Approof
Автоматизация построения правил для Approof
 
Мастер-класс «Трущобы Application Security»
Мастер-класс «Трущобы Application Security»Мастер-класс «Трущобы Application Security»
Мастер-класс «Трущобы Application Security»
 
Формальные методы защиты приложений
Формальные методы защиты приложенийФормальные методы защиты приложений
Формальные методы защиты приложений
 
Эвристические методы защиты приложений
Эвристические методы защиты приложенийЭвристические методы защиты приложений
Эвристические методы защиты приложений
 
Теоретические основы Application Security
Теоретические основы Application SecurityТеоретические основы Application Security
Теоретические основы Application Security
 
От экспериментального программирования к промышленному: путь длиной в 10 лет
От экспериментального программирования к промышленному: путь длиной в 10 летОт экспериментального программирования к промышленному: путь длиной в 10 лет
От экспериментального программирования к промышленному: путь длиной в 10 лет
 
Уязвимое Android-приложение: N проверенных способов наступить на грабли
Уязвимое Android-приложение: N проверенных способов наступить на граблиУязвимое Android-приложение: N проверенных способов наступить на грабли
Уязвимое Android-приложение: N проверенных способов наступить на грабли
 
Требования по безопасности в архитектуре ПО
Требования по безопасности в архитектуре ПОТребования по безопасности в архитектуре ПО
Требования по безопасности в архитектуре ПО
 
Формальная верификация кода на языке Си
Формальная верификация кода на языке СиФормальная верификация кода на языке Си
Формальная верификация кода на языке Си
 
Механизмы предотвращения атак в ASP.NET Core
Механизмы предотвращения атак в ASP.NET CoreМеханизмы предотвращения атак в ASP.NET Core
Механизмы предотвращения атак в ASP.NET Core
 
SOC для КИИ: израильский опыт
SOC для КИИ: израильский опытSOC для КИИ: израильский опыт
SOC для КИИ: израильский опыт
 
Honeywell Industrial Cyber Security Lab & Services Center
Honeywell Industrial Cyber Security Lab & Services CenterHoneywell Industrial Cyber Security Lab & Services Center
Honeywell Industrial Cyber Security Lab & Services Center
 
Credential stuffing и брутфорс-атаки
Credential stuffing и брутфорс-атакиCredential stuffing и брутфорс-атаки
Credential stuffing и брутфорс-атаки
 

Último

Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 

Último (20)

Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 

General Pr0ken File System

  • 1. www.ernw.de General Pr0ken File System Hacking IBM‘s GPFS Felix Wilhelm & Florian Grunow
  • 2. www.ernw.de Agenda ¬ Technology Overview ¬ Digging in the Guts of GPFS ¬ Remote View ¬ Getting to the Core ¬ Q&A 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #2
  • 3. www.ernw.de Technology Overview ¬ IBM‘s General Parallel File System ¬ Cluster File System ¬ Claims to be …  Fast  Simple  Scalable ¬ Multiple nodes interconnected, sharing their data ¬ Two main operation modes  Nodes connected to SAN  Network shared disks, connected to only some of the nodes 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #3
  • 4. www.ernw.de Technology Overview ¬ Different Operating Systems supported (NIX, Linux, Windows)  We look at GPFS 3.5 on Linux ¬ Really long history  tsXX (Tiger Shark File System, from 1993)  mmfsXX (Multi Media File System) ¬ Who uses it?  Many supercomputers  Widely used in cluster architectures 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #4
  • 5. www.ernw.de Technology Overview - Components ¬ User Space Utilities:  More than 200 binaries / shell scripts  Symlinked or plain copies  Some setuid binaries ¬ Communication Daemon:  Running on all hosts (mmfsd)  Proprietary communication protocol via TCP ¬ Kernel Module:  Kernel module, binary only  Wrapper module with available source code 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #5
  • 6. www.ernw.de Remember this Structure for the Talk … ¬ User Space Utilities ¬ Communication Daemon ¬ Kernel Module 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #6
  • 7. www.ernw.de Digging in the Guts of GPFS Local User Space Attack 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #7
  • 8. www.ernw.de Userspace Utilities [flo@localhost bin]# ./tsstatus The file system daemon is running. [flo@localhost bin]# ./tsstatus AAA mmcommon: File system AAA is not known to the GPFS cluster. [flo@localhost bin]# ./tsstatus %x mmcommon: File system ffffffff is not known to the GPFS cluster. 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #8
  • 9. www.ernw.de Digging in the Guts of GPFS [flo@localhost bin]# ./tsstatus %x.%x mmcommon: File system ffffffff.65747379 is not known to the GPFS cluster. [flo@localhost bin]# ./tsstatus %n Segmentation fault [flo@localhost bin]# ./tsstatus %s Lost connection to file system daemon.  Crash of mmfsd 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #9
  • 10. www.ernw.de First Blood ¬ Pretty standard format string vulnerability  Should be exploitable  .. but why did the file system daemon crash?  Reported to vendor but no exploit (just a PoC) 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #10
  • 11. www.ernw.de IBM General Parallel File System denial-of-service vulnerability (CVE-2014-0834) 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #11
  • 12. www.ernw.de IBM General Parallel File System denial-of-service vulnerability (CVE-2014-0834) 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #12
  • 13. www.ernw.de IBM General Parallel File System denial-of-service vulnerability (CVE-2014-0834) 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #13
  • 14. www.ernw.de Research Time (gdb) run %n Starting program: /usr/lpp/mmfs/bin/tsstatus %n Program received signal SIGSEGV, Segmentation fault. 0x00000033270466f8 in vfprintf () from /lib64/libc.so.6  It is a format string bug. But why can we crash mmfsd? 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #14
  • 15. www.ernw.de tsstatus walkthrough (strace) 1. User calls tsstatus ABC. 2. tsstatus binds to a random TCP port (on all interfaces). 3. tsstatus sends port number and user input using a local message queue. 4. mmfsd connects to the port and sends the result back. 5. tsstatus prints the results. 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #15
  • 16. www.ernw.de But Wait! 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #16
  • 17. www.ernw.de Walkthrough 1. User calls tsstatus ABC. 2. tsstatus binds to a port (on all interfaces). 3. tsstatus sends port number and user input using a message queue. 4. mmfsd connects to local port and sends the result back.  Result is returned as a format string + stack  Stack creation by mmfsd does not support %s 5. tsstatus parses and prints the results. 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #17
  • 18. www.ernw.de Ideas for the Attack ¬ What happens if we connect to the tsstatus binary instead of mmfsd? ¬ We can send our own format strings with a completely controlled stack  Code Execution should be possible. ¬ Two challenges:  Speed  Which port? 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #18
  • 19. www.ernw.de Exploit ¬ Random Port  Can be controlled using environment variable “GPFSCMDPORTRANGE=31337” ¬ Race Condition  Have to be faster than mmfsd. Race is easy to win on multi core systems (thanks Frank ). ¬ Authentication?  Looking at the binary shows a cookie value.  Attaching a debugger and educated guessing  It’s the PID of tsstatus 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #19
  • 20. www.ernw.de Exploit ¬ First Part:  Set port using environment variable  Win race  Send PID of tsstatus ¬ Second Part:  Get Code Execution working  Should be easy …  6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #20
  • 21. www.ernw.de Exploit ¬ Format String + Controlled Stack:  Arbitrary Write to Arbitrary Address using %n modifier.  Binary is not PIE enabled (constant addresses).  All system libraries + stack/heap addresses are randomized.  Infoleak not possible  It is our stack! ¬ What to overwrite?  Function pointer (DTOR, GOT) 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #21
  • 22. www.ernw.de Exploit ¬ Function Pointer  Global Offset Table library functions.  Find a library function that is called after the format string is triggered, overwrite function pointer with starting address of ROP chain. ¬ Problem:  Small binary, no usable stack pivot to start ROP-chain. ¬ Alternative:  Just overwrite library function with a different one  “printf” with “system”  No compatible library functions found.  Looks harder now!  6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #22
  • 23. www.ernw.de Alternative Approach ¬ Different kind of messages types can be sent by mmfsd (and handled by the command line tools):  Display Message (that’s what we used until now)  General Error  Edit Message 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #23
  • 24. www.ernw.de Edit Message for Fun and Profit! 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #24 ¬ Server sends edit message with arbitrary text content. ¬ CLI tool writes content into a temp file, drops privileges and opens editor specified in EDITOR environment variable. ¬ User can edit file. Closes the editor  Data is sent back to the server.
  • 25. www.ernw.de Exploiting Edit Message ¬ First two messages trigger format string vulnerability:  Overwrite setgid() and setuid() with the address of a “ret” instruction. ¬ Third message triggers “edit message” function  EDITOR environment variable is set to “/usr/bin/perl”  Content is something like this: use POSIX qw(setuid setgid); $ENV{"PATH"} = "/usr/bin:/bin"; setuid(0); setgid(0); system("/bin/bash"); 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #25
  • 26. www.ernw.de Demo Local Privilege Escalation 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #26
  • 27. www.ernw.de User Space Utilities – CVSS++ 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #27
  • 28. www.ernw.de Remember this Structure for the Talk … ¬ User Space Utilities  Local privilege escalation via format string, sort of … ¬ Communication Daemon ¬ Kernel Module 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #28
  • 29. www.ernw.de WAT? ¬ This was a local exploit. What about other systems in the cluster? ¬ Well…. ¬ Cluster Nodes have to be able to communicate using public key SSH (or rsh). 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #29
  • 30. www.ernw.de Built-in functionality  6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #30
  • 31. www.ernw.de Built-in functionality  6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #31
  • 32. www.ernw.de Outside View What if we don’t have access to a cluster node? 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #32
  • 33. www.ernw.de Remote Attack Surface: mmfsd ¬ Main network daemon of GPFS ¬ Listens on TCP port 1191 on every interface  ¬ Used for:  Cluster communication  State synchronization  Network shared disks ¬ Cluster nodes open multiple persistent TCP connections. ¬ Mainly heartbeat messages + file synchronization (for network shared disks). 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #33
  • 34. www.ernw.de Cluster Communication – Not Encrypted by Default 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #34
  • 35. www.ernw.de Remote Attack Surface: mmfsd ¬ Possibly no sensitive data on network shared disks. ¬ Communication over private interfaces.  Direct attack against mmfsd would be great.  6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #35
  • 36. www.ernw.de GPFS Protocol Analysis ¬ Stateful Protocol  Persistent connection  Has to start with hello packet  Exchange of data packets afterwards  SSL possible ¬ Simple replay of something captured during an established connection won’t have an effect.  We need to send a valid hello packet. 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #36
  • 37. www.ernw.de Message Format – hello Packet F3 68 90 38 AC 10 6C 82 AC 10 6C 83 00 00 05 1C 00 00 05 19 00 00 00 48 00 00 00 00 00 00 00 02 00 00 00 10 00 00 00 08 00 00 00 00 02 00 00 40 00 00 00 00 03 98 B3 93 54 3E 6A 7D 00 00 00 00 00 00 00 00 54 5B 78 31 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 05 00 00 00 28 00 01 86 9F 00 00 05 19 00 00 00 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 FF FF AC 10 6C 82 00 00 00 00 00 00 00 00 00 00 FF FF AC 10 6C 83 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #37
  • 38. www.ernw.de Message Format ¬ Magic constant ¬ IP addresses of source and destination node  Inside the TCP payload! ¬ Timestamps ¬ Cluster ID ¬ Variation of type, length, value  Message type  Length of next field  Value content 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #38 F3 68 90 38 AC 10 6C 82 AC 10 6C 83
  • 39. www.ernw.de Authentication? ¬ Only allow communication from nodes in the cluster ¬ Check is performed based on IP addresses in the payload… ¬ Spoof valid node addresses  We can communicate as part of the cluster.  LARGE Attack Surface 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #39
  • 40. www.ernw.de Remote Command Execution ¬ Search for interesting message types  … some hours later  “handleCCMsgMMRemote” message handler for message type 0xC 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #40
  • 41. www.ernw.de Remote Command Execution ¬ Passes message payload as argument to one of three command line tools  mmremote  mmrts  mmhelp ¬ Really old feature, mmremote is the only tool still remaining. 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #41
  • 42. www.ernw.de Remote Command Execution ¬ mmremote:  Bash Script   4k lines of code  Surprisingly good quality  By design very powerful (mounting, unmounting, uninstall … ) ¬ Command Injection: /usr/lpp/mmfs/bin/mmremote onbehalf2 a b c d ../../../../../bin/touch /tmp/pwn 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #42
  • 43. www.ernw.de Demo Remote Command Execution 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #43
  • 44. www.ernw.de Communication Daemon – Lesson Learned? 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #44
  • 45. www.ernw.de Remember this Structure for the Talk … ¬ User Space Utilities  Local privilege escalation via format string, sort of … ¬ Communication Daemon  Insufficient authentication  Command injection ¬ Kernel Module 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #45
  • 46. www.ernw.de /dev/ss0 ¬ Interface for communication between user space tools and kernel over IOCTLs  GPFS core libraries directly talk to this device  No global permission check ¬ Checks are needed for each single IOCTL call  Large Attack Surface (=~ 150 IOCTL defined) 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #46
  • 47. www.ernw.de Getting to the Core Kernel Space Invaders 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #47
  • 48. www.ernw.de Kernel Modules ¬ GPFS loads three kernel modules  mmfslinux  mmfs26  tracedev ¬ mmfslinux is a small GPL wrapper around mmfs26.  Source Code available  ¬ Auditing IOCTL handler leads to interesting results. 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #48
  • 49. www.ernw.de kernelWaitForFlock ¬ IOCTL call 39 ¬ No privilege checks  ¬ Called with user controlled arguments 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #49 Arbitrary Write! 
  • 50. www.ernw.de Kernel Module – Lesson Learned? Nope. 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #50
  • 51. www.ernw.de Got root? 1) Use arbitrary write to write address of our shellcode into unused entry of the IOCTL handler table 2) Call backdoored IOCTL 3) Kernel executes shellcode and changes privileges of current process to root 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #51
  • 52. www.ernw.de Demo Invading Kernel Space 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #52
  • 53. www.ernw.de Remember this Structure for the Talk … ¬ User Space Utilities  Local privilege escalation via format string, sort of … ¬ Communication Daemon  Insufficient authentication  Command Injection ¬ Kernel Module  Arbitrary write, code execution 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #53
  • 54. www.ernw.de IBM’s Response ¬ Professional handling ¬ „Optimistic“ estimation of exploitability ¬ Patches for all three bugs  on Sunday!  ¬ Time-to-Patch ~30 days 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #54
  • 55. www.ernw.de Countermeasures ¬ Apply vendor patches  Patches do not mitigate remote issue, only SSL helps … ¬ Additional hardening:  All nodes should be fully trusted!  Enable SSL!  Firewall non-GPFS interfaces on port 1191! 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #55
  • 56. www.ernw.de Lessons Learned ¬ Attack surface is key!  Attacker has more options available  Countermeasures will fail more often ¬ Complexity kills! ¬ Old design/architecture always bears risks ¬ Never give up!  If time is no issue  There will be a way  Think out of the box  Creativity & Curiosity  Have someone pressure you with a talk for Troopers … ;) 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #56
  • 57. www.ernw.de Q&A 6/3/2015 GPFS – Felix Wilhelm && Florian Grunow #57

Notas do Editor

  1. How it works, what the components are Attacker‘s view local Remote, communication Check if there are some lessons learned out of the previous two
  2. Precursor tiger shark
  3. We encountered GPFS during a penetration test at a customer‘s site
  4. Anybody see the problem?
  5. Find out how to talk to the mmfsd
  6. Even if attack seems not feasible  most likely not exploitable