254,140 research outputs found
Advanced Cloud Privacy Threat Modeling
Privacy-preservation for sensitive data has become a challenging issue in
cloud computing. Threat modeling as a part of requirements engineering in
secure software development provides a structured approach for identifying
attacks and proposing countermeasures against the exploitation of
vulnerabilities in a system . This paper describes an extension of Cloud
Privacy Threat Modeling (CPTM) methodology for privacy threat modeling in
relation to processing sensitive data in cloud computing environments. It
describes the modeling methodology that involved applying Method Engineering to
specify characteristics of a cloud privacy threat modeling methodology,
different steps in the proposed methodology and corresponding products. We
believe that the extended methodology facilitates the application of a
privacy-preserving cloud software development approach from requirements
engineering to design
A Software Development Methodology for Secure Web Application
In recent years, there has been a demand for Web applications with complex functions. In addition, most web applications efficiently manage data based on databases. While the key and critical dimension of developing these Web applications is analysis and design, most object-oriented analysis and design methods do not have a consistent view of the database. In addition, Java Enterprise Edition (EE) -based technologies are used in Web application implementations, but they do not provide any correlation with the database. On the other hand, as users' demands for security increase, security becomes more important. To this end, Java EE and database systems provide security solutions. However, it does not provide any correlation with object-oriented analysis and design methodology. As a result, it is difficult to develop secure web applications in a consistent way from analysis to implementation. In this paper, we propose a consistent software development methodology from analysis to implementation of secure web applications. The proposed software development methodology for web application development uses UMLsec, a security-emphasized modeling language, and object-relational (O-R) mapping for relational database design. It also uses Java servlets and SQL to implement analysis and design results based on role-based access control (RBAC). The software development methodology for the secure web application proposed in this paper has been applied to the development of the online banking system, from the design stage of the user's requirements analysis to the implementation of the web application
Verifiably-safe software-defined networks for CPS
Next generation cyber-physical systems (CPS) are expected to be deployed in domains which require scalability as well as performance under dynamic conditions. This scale and dynamicity will require that CPS communication networks be programmatic (i.e., not requiring manual intervention at any stage), but still maintain iron-clad safety guarantees. Software-defined networking standards like OpenFlow provide a means for scalably building tailor-made network architectures, but there is no guarantee that these systems are safe, correct, or secure. In this work we propose a methodology and accompanying tools for specifying and modeling distributed systems such that existing formal verification techniques can be transparently used to analyze critical requirements and properties prior to system implementation. We demonstrate this methodology by iteratively modeling and verifying an OpenFlow learning switch network with respect to network correctness, network convergence, and mobility-related properties. We posit that a design strategy based on the complementary pairing of software-defined networking and formal verification would enable the CPS community to build next-generation systems without sacrificing the safety and reliability that these systems must deliver
A software development methodology for solo software developers: leveraging the product quality of independent developers
Software security for agile methods, particularly for those designed for individual developers,
is still a major concern. With most software products deployed over the Internet, security as a
key component of software quality has become a major problem. In addressing this problem,
this research proposes a solo software development methodology (SSDM) that uses as
minimum resources as possible, at the same time conforming to the best practice for delivering
secure and high-quality software products.
Agile methods have excelled on delivering timely and quality software. At the same time
research also shows that most agile methods do not address the problem of security in the
developed software. A metasynthesis of SSDMs conducted in this thesis confirmed the lack
practices that promote security in the developed software product. On the other hand, some
researchers have demonstrated the feasibility of incorporating existing lightweight security
practices into agile methods.
This research uses Design Science Research (DSR) to build, demonstrate and evaluate a
lightweight SSDM. Using an algorithm adapted for the purpose, the research systematically
integrates lightweight security and quality practices to produce an agile secure-solo software
development methodology (Secure-SSDM). A multiple-case study in an academic and industry
setting is conducted to demonstrate and evaluate the utility of the methodology. This
demonstration and evaluation thereof, indicates the applicability of the methodology in
building high-quality and secure software products. Theoretical evaluation of the agility of the
Secure-SSDM using the four-dimensional analytical tool (4-DAT) shows satisfactory
compliance of the methodology with agile principles.
The main contributions in this thesis are: the Secure-SSDM, which entails description of the
concepts, modelling languages, stages, tasks, tools and techniques; generation of a quality
theory on practices that promote quality in a solo software development environment;
adaptation of Keramati and Mirian-Hosseinabadi’s algorithm for the purposes of integrating
quality and security practices. This research would be of value to researchers as it introduces
the security component of software quality into a solo software development environment,
probing more research in the area. To software developers the research has provided a
lightweight methodology that builds quality and security into the product using minimum
resources.School of ComputingD. Phil. (Computer Science
A Verified Information-Flow Architecture
SAFE is a clean-slate design for a highly secure computer system, with
pervasive mechanisms for tracking and limiting information flows. At the lowest
level, the SAFE hardware supports fine-grained programmable tags, with
efficient and flexible propagation and combination of tags as instructions are
executed. The operating system virtualizes these generic facilities to present
an information-flow abstract machine that allows user programs to label
sensitive data with rich confidentiality policies. We present a formal,
machine-checked model of the key hardware and software mechanisms used to
dynamically control information flow in SAFE and an end-to-end proof of
noninterference for this model.
We use a refinement proof methodology to propagate the noninterference
property of the abstract machine down to the concrete machine level. We use an
intermediate layer in the refinement chain that factors out the details of the
information-flow control policy and devise a code generator for compiling such
information-flow policies into low-level monitor code. Finally, we verify the
correctness of this generator using a dedicated Hoare logic that abstracts from
low-level machine instructions into a reusable set of verified structured code
generators
Java Challenge Software Project
Programming contests are a means of exploiting the problem solving capabilities of developers and they provide a forum for display of extraordinary programming skills. The Java Challenge (JC) Software Project is the saga of creating an automated, secure and responsive programming contest system for deployment on the Internet and to collect information about programming practices, habits, and trends in coding in such restricted environment. The methodology followed to design, implement, and evaluate such a system uses new technologies such as the WWW, mail filtering and sandboxing techniques. The current Java Challenge implementation runs the Java Challenge on a Solaris 2.6 platform under specified regulations. The scripts are developed in Perl. The security features of jdkl.2 have been researched and successfully implemented. The mode of entry acceptance is electronic mail in a specified format. Standard Unix features have been used for data archiving and information redirection. The JC software is an application package that conducts programming contests in an automated manner, provides a secure environment for evaluation and does web listing updates automatically
SecMVC : a model for secure software design based on the model-view-controller pattern
Current advances in the software development industry are growing more ubiquitous by the day. This has caused for security, not only in the broader sense, but specifically within the design and overall development of software itself, to become all the more important. An evidently prevalent problem in the domain of software development is that software security is not consistently addressed during design, which undermines core security concerns, and leads to the development of insecure software. This research seeks to address this issue via a model for secure software design, which is based on a software design pattern, namely, the Model-View-Controller (MVC) pattern. The use of a pattern to convey knowledge is not a new notion. However, the ability of software design patterns to convey secure software design is an idea worth investigating. Following identification of secure software design principles and concepts, as well as software design patterns, specifically those relating to the MVC pattern, a model was designed and developed. With the MVC pattern argued as being a suitable foundation for the model, the security conscious MVC (SecMVC) combines secure software design principles and concepts into the MVC pattern. Together herewith, the MVC pattern’s components in the MVC Compound pattern, namely: the Observer pattern, the Strategy pattern, and the Composite pattern, have provided further sub-models for less abstraction and greater detail. These sub-models were developed, as a result of the SecMVC model’s evaluation in the validation for this study, an expert review. Argued in the light of similar research methods, the expert review was chosen – along with a process that included the use of two expert participants to validate the SecMVC model. It was determined through the expert review that the SecMVC model is of sufficient utility, quality, and efficacy to constitute research value. The research methodology process followed was design science, in which the SecMVC model, which includes its related sub-models, serves as the artefact and research output of this study. This research study contributes evidence of the feasibility for integrating knowledge into software design patterns. This includes the SecMVC model itself. In addition, it argues for the use of an expert review, as an evaluative research method for such an artifact
Methodologies for Designing Power-Aware Smart Card Systems
Smart cards are some of the smallest
computing platforms in use today. They have
limited resources, but a huge number of
functional requirements. The requirement for
multi-application cards increases the demand
for high performance and security even more,
whereas the limits given by size and energy
consumption remain constant.
We describe new
methodologies for designing and implementing
entire systems with regard to power awareness
and required performance. To make use of this
power-saving potential, also the higher layers
of the system - the operating system layer and
the application domain layer - are required to
be designed together with the rest of the
system.
HW/SW co-design methodologies enable the gain of
system-level optimization. The first part presents the
abstraction of smart cards to optimize system architecture
and memory system. Both functional and transactional-level
models are presented and discussed. The proposed design
flow and preliminary results of the evaluation are depicted.
Another central part of this methodology is a cycle-accurate instruction-set
simulator for secure software development.
The underlaying energy model is designed
to decouple instruction and data dependent energy dissipation,
which leads to an independent characterization process and allows
stepwise model refinement to increase estimation accuracy. The
model has been evaluated for a high-performance smart card CPU and
an use-case for secure software is given
A Methodology for the Design of Safety-Compliant and Secure Communication of Autonomous Vehicles
International audience; The automotive industry is increasing its effort towards scientific and technological innovations regarding autonomous vehicles. The expectation is a reduction of road accidents, which are too often caused by human errors. Moreover, technological solutions, such as connected autonomous vehicle platoons, are expected to help humans in emergency situations. In this context, safety and security issues do not yet have a satisfactory answer. In this paper, we address the domain of secure communication among vehicles - especially the issues related to authentication and authorization of inter-vehicular signals and services carrying safety commands. We propose a novel design methodology, where we take a contract-based approach for specifying safety, and combine it in the design flow with the use of the Arrowhead Framework to support security. Furthermore, we present the results through a demo, which employs model-based design for software implementation and the physical realization on autonomous model cars
- …