Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Sam Weber is active.

Publication


Featured researches published by Sam Weber.


ACM Sigsoft Software Engineering Notes | 2005

A software flaw taxonomy: aiming tools at security

Sam Weber; Paul A. Karger; Amit M. Paradkar

Although proposals were made three decades ago to build static analysis tools to either assist software security evaluations or to find security flaws, it is only recently that static analysis and model checking technology has reached the point where such tooling has become feasible. In order to target their technology on a rational basis, it would be useful for tool-builders to have available a taxonomy of software security flaws organizing the problem space. Unfortunately, the only existing suitable taxonomies are sadly out-of-date, and do not adequately represent security flaws that are found in modern software.In our work, we have coalesced previous efforts to categorize security problems as well as incident reports in order to create a security flaw taxonomy. We correlate this taxonomy with available information about current high-priority security threats, and make observations regarding the results. We suggest that this taxonomy is suitable for tool developers and to outline possible areas of future research.


Operating Systems Review | 2008

The Caernarvon secure embedded operating system

David C. Toll; Paul A. Karger; Elaine R. Palmer; Suzanne K. McIntosh; Sam Weber

The Caernarvon operating system was developed to demonstrate that a high assurance system for smart cards was technically feasible and commercially viable. The entire system has been designed to be evaluated under the Common Criteria at EAL7, the highest defined level of assurance. Historically, smart card processors have not supported the hardware protection features necessary to separate the OS from the applications, and one application from another. The Caernarvon OS has taken advantage of the first smart card processors with such features to be the first smart card OS to provide this kind of protection. Even when compared with conventional systems where the hardware protection is routine, the Caernarvon OS is noteworthy, because of the EAL7 assurance. This approach facilitated implementation of a formally specified, mandatory security policy providing multi-level security (MLS) suitable for both government agencies and commercial users. The mandatory security policy requires effective authentication of its users that is independent of applications. For this reason, the Caernarvon OS also contains a privacy-preserving, two-way authentication protocol integrated with the Mandatory Security Policy. The Caernarvon OS includes a strong cryptographic library that has been separately certified under the Common Criteria at EAL5+ for use with other systems. The Caernarvon OS implements a secure method for downloading trusted and untrusted application software and data in the field, with the assumption that all applications are potentially hostile. While the initial platform for the operating system was smart cards, the design could also be used in other embedded devices, such as USB tokens, PDAs, cell phones, etc.


international symposium on software testing and analysis | 2006

The case for analysis preserving language transformation

Xiaolan Zhang; Larry Koved; Marco Pistoia; Sam Weber; Trent Jaeger; Guillaume Marceau; Liangzhao Zeng

Static analysis has gained much attention over the past few years in applications such as bug finding and program verification. As software becomes more complex and componentized, it is common for software systems and applications to be implemented in multiple languages. There is thus a strong need for developing analysis tools for multi-language software. We introduce a technique called Analysis Preserving Language Transformation (aplt) that enables the analysis of multi-language software, and also allows analysis tools for one language to be applied to programs written in another. aplt preserves data and control flow information needed to perform static analyses, but allows the translation to deviate from the original programs semantics in ways that are not pertinent to the particular analysis. We discuss major technical difficulties in building such a translator, using a C-to-Java translator as an example. We demonstrate the feasibility and effectiveness of aplt using two usage cases: analysis of the Java runtime native methods and reuse of Java analysis tools for C. Our preliminary results show that a control- and data-flow equivalent model for native methods can eliminate unsoundness and produce reliable results, and that aplt enables seamless reuse of analysis tools for checking high-level program properties.


financial cryptography | 2010

Implementing a high-assurance smart-card OS

Paul A. Karger; David C. Toll; Elaine R. Palmer; Suzanne K. McIntosh; Sam Weber; Jonathan W. Edwards

Building a high-assurance, secure operating system for memory constrained systems, such as smart cards, introduces many challenges. The increasing power of smart cards has made their use feasible in applications such as electronic passports, military and public sector identification cards, and cell-phone based financial and entertainment applications. Such applications require a secure environment, which can only be provided with sufficient hardware and a secure operating system. We argue that smart cards pose additional security challenges when compared to traditional computer platforms. We discuss our design for a secure smart card operating system, named Caernarvon, and show that it addresses these challenges, which include secure application download, protection of cryptographic functions from malicious applications, resolution of covert channels, and assurance of both security and data integrity in the face of arbitrary power losses.


international conference on software reuse | 2004

Business Users and Program Variability: Bridging the Gap

Isabelle M. Rouvellou; Lou Degenaro; Judah M. Diament; Achille Fokoue; Sam Weber

In order to make software components more flexible and reusable it is desirable to provide business users with facilities to assemble and control them, but without first being converted into programmers. We present our fully-functional prototype middleware system where variability is externalized so that core applications need not be altered for anticipated changes. Application behavior modification is fast and easy, suitable for a quickly changing e-commerce world.


international symposium on software reliability engineering | 2008

The Feasibility of Automated Feedback-Directed Specification-Based Test Generation: A Case Study of a High-Assurance Operating System

Sam Weber; Amitkumar M. Paradkar; Suzanne K. McIntosh; David C. Toll; Paul A. Karger; Matthew Kaplan; Elaine R. Palmer

In this paper, we describe results of a case study to establish the feasibility of deriving mappings between an abstract user level specification and the code elements in a concrete implementation of a highly secure smart card operating system. Such a mapping is necessary for feedback-directed specification-based test generation to improve code coverage, needed by the stringent criteria for high-assurance systems. We used test cases generated from the user level specification to identify the executed code elements and attempted to use static analysis to map the unexecuted code elements to the corresponding elements in the user level specification. Our primary result is evidence that, given a sufficiently expressive user level specification and a test generation system that is able to effectively use such a specification, the resulting tests will cover the vast majority of the code branches that are able to be covered. Therefore, the benefit of a feedback-directed system will be limited. We further provide evidence that the static analysis required to generate feedback in these cases tends to be difficult, involving inferring the semantics of the internal implementation of data structures. In particular, we observed that the internal states at the implementation level in a high security application pose significant challenges to this mapping process.


IEEE Transactions on Software Engineering | 2005

Fusion: a system for business users to manage program variability

Sam Weber; Hoi Chan; Lou Degenaro; Judah M. Diament; Achille B. Fokoue-Nkoutche; Isabelle M. Rouvellou

In order to make software components more flexible and reusable, it is desirable to provide business users with facilities to assemble and control them without their needing programming knowledge. This paper describes a fully functional prototype middleware system where variability is externalized so that core applications need not be altered for anticipated changes. In this system, application behavior modification is fast and easy, making this middleware suitable for frequently changing programs.


ieee symposium on security and privacy | 2000

Verifying the EROS confinement mechanism

Jonathan S. Shapiro; Sam Weber


Archive | 1999

System and method for identifying form type in a handwriting recognition based form completion system

Paul R. Carini; Yi-Min Chee; Michael Karasick; Danny Soroker; Sam Weber


Archive | 2001

System and method for providing post hoc access to legacy applications and data

Mark C. Chu-Carroll; Michael Karasick; Sam Weber

Researchain Logo
Decentralizing Knowledge