Breaking Down the Walls of Mutual Distrust B. Hicks, S. Rueda, T
Download
Report
Transcript Breaking Down the Walls of Mutual Distrust B. Hicks, S. Rueda, T
Finding Name Resolution
Vulnerabilities in Programs
Hayawardh Vijayakumar, Joshua Schiffman and Trent Jaeger
Name Resolution Attacks
Programs require system resources (e.g.,
files, sockets) to function.
Improper Binding Attack
Programs retrieve resources from
operating system (OS) namespaces
through the process of name resolution.
Adversary processes attack victim
processes by modifying shared
namespaces in unexpected ways [detail].
Improper Resource Attack
Programmers insert security checks to
protect against attacks but do not know
about system deployment (access control
policy, local adversaries, environment),
and thus get these security checks wrong.
Problem
Given a program and its system
deployment, can we precisely locate
vulnerable name resolutions in the
program?
Challenge
Solution
Runtime analysis with active adversary
modeled by OS to eliminate false
positives. We call the system STING.
Active adversary uses permissions from
system’s access control policy (we model
DAC, MAC)
Analyses limited by false positives
Design
Attack Phase: OS changes changes
namespace and tests attack scenarios.
Detection Phase: OS detects if program
is vulnerable to attack, or has proper
checks.
Adversary-Specific Namespace View:
Each victim process has a different view of
the namespace depending on adversary.
Static analysis has no knowledge of
system deployment (adversary
accessibility to name resolutions).
Runtime analysis does not know if
programs perform right checks.
No standard checks exist.
Results
Implemented STING for Linux 3.2 and
ran tests on Fedora and Ubuntu.
Publications
[1] H. Vijayakumar, J. Schiffman, and
T. Jaeger. STING: Finding Name
Resolution Vulnerabilities in Programs.
Technical Report NAS-TR-0157-2012.
Found 21 previously-unknown
vulnerabilities across 17 programs and
scripts in Fedora and Ubuntu
[2] H. Vijayakumar, J. Schiffman and
T. Jaeger, "A Rose by Any Other Name
or an Insane Root? Adventures in
Name Resolution", EC2ND 2011.
5 were in Ubuntu-specific scripts
Only 1% (Fedora) and 3% (Ubuntu) of
total name resolutions were vulnerable
[3] H. Vijayakumar, et al., "Integrity
Walls: Finding Attack Surfaces from
Mandatory Access Control Policies",
ASIACCS 2012.
Sponsored by NSF CNS-0905343