Paladin: Helping Programs Help Themselves with Internal System Call Interposition

نویسندگان

  • Jeffrey A. Vaughan
  • Andrew D. Hilton
چکیده

In large software systems some code may not be under the direct control of security conscious developers. This situation arises when dealing with third party libraries, plugins added by users, or code written by a large team’s novice programmer. Securing the whole system is difficult as an error in a library or a malicious plugin can compromise the entire program. To mitigate this, it is desirable for applications to sandbox their less trusted components. In this work we propose Paladin, a simple, lightweight kernel extension that allows application developers to specify security policies on sub-components of an application. Based on the observation that system calls are the only way to adversely affect the world outside of the program, Paladin policies restrict trusted modules by limiting their system call behavior. Policies are installed in layers—a vector of function pointers specifying the policy functions that guard each system call. Layers of policies can be dynamically pushed and popped via new kernel calls as applications enter and leave less trusted modules. Whenever the application makes a system call, the Paladin-enhanced kernel consults each installed policy vector to determine if the call should be permitted or denied.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Paladin: Helping Programs Help Themselves with System Call Interposition

Today’s programs run in hostile environments. An adversary attacking a running process may radically alter the program’s course of execution. Such attacks will be of little value to the adversary unless he can cause the program to affect the outside world by executing a system call. A fruitful line of research on system call interposition has investigated using security checks on system calls t...

متن کامل

CDE: Using System Call Interposition to Automatically Create Portable Software Packages

It can be painfully hard to take software that runs on one person’s machine and get it to run on another machine. Online forums and mailing lists are filled with discussions of users’ troubles with compiling, installing, and configuring software and their myriad of dependencies. To eliminate this dependency problem, we created a system called CDE that uses system call interposition to monitor t...

متن کامل

Bridging the ‘Two Cultures’ of Research and Service: Can Complexity Theory Help?; Comment on “Experience of Health Leadership in Partnering With University-Based Researchers in Canada – A Call to ‘Re-imagine’ Research”

This commentary addresses Bowen et al’s empirical study of perspectives of Canadian healthcare staff towards research and their call for multi-faceted action to improve misalignments in the system. This commentary argues that tensions and misalignments between research and service are inherent and can never be eradicated. Building on previous work by Lanham et al, I pro...

متن کامل

Migration and Rollback Transparency for Arbitrary Distributed Applications in Workstation Clusters

Programmers and users of compute intensive scientific applications often do not want to (or even cannot) code load balancing and fault tolerance into their programs. The P BEAM system [PL95, PSLS96] uses a global virtual name space to provide migration and rollback transparency in user space for distributed groups of processes on workstations. Applications always use the same virtual names for ...

متن کامل

Safe Virtual Execution Using Software Dynamic Translation

Safe virtual execution (SVE) allows a host computer system to reduce the risks associated with running untrusted programs. SVE prevents untrusted programs from directly accessing system resources, thereby giving the host the ability to control how individual resources may be used. SVE is used in a variety of safety-conscious software systems, including the Java Virtual Machine (JVM), software f...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2010