OWASP Alchemist Project

Main

While there are extensive resources on the Internet about security architecture and security practices that when implemented effectively across an SDLC produce highly secure and defensible applications. It is easier said than done. Notably, most of the popular programming languages and frameworks contain many security technologies, yet it is not easy to produce an application without security vulnerabilities.

Alchemist aims to bridge these gaps. Alchemist is a free, open source, web application security resource that enables software development teams build high secure and defensible applications. Alchemist is structured for easier adoption and learning of software architects, analysts and programmers, allowing them implement strong security practices into their own web applications.

The current focus is on achieving this objective by architecting and developing a highly secure and defensible application in J2EE on top of Spring framework. The outcome of this exercise is targeted as a reference implementation. The overall objective is to be independent of programming language, yet show-case a real-life application in each of the popular programming languages and frameworks.

OWASP lists a number of common application security vulnerabilities. These apply to most of the programming languages and platforms. The notable exception being buffer overflow and related issues that do not apply to J2EE. .Net and the likes. Alchemist is designed to demonstrate effective mitigation of most of these issues in its reference implementations.

More details on the project, including the high level road-map can be found in the Project About tab. If you'd like to contribute join the mailing list and share your ideas and suggestions on the ongoing progress, and of course your proposal for contribution for the ongoing work or work for other programming languages.

Project About

PROJECT INFOWhat does this OWASP project offer you?

RELEASE(S) INFOWhat releases are available for this project?

what

is this project?

Name: OWASP Alchemist Project (home page)

Purpose: Alchemist enables a software development team in realization of highly secure and defensible application with built-in defenses/controls against security‐related design, coding and implementation flaws.

Alchemist is focused to present this solution by architecting a real-life high stakes application with security built into it right from the inception, step-by-step as it falls under an SDLC. The current exercise is targeted at demonstrating this on a J2EE based web application that is developed using Spring framework. Spring framework was chosen due to its widespread adoption in the financial products. However, it is important note that Alchemist is not limited to J2EE or more specifically Spring framework. The idea is to demonstrate the upper spectrum of security practices that are often neglected or are done in bits and pieces by picking a well known widely adopted technology. Since the emphasis is on security architecture and defensibility, the future road-map is to demonstrate the same for applications built using other leading programming languages and frameworks.

Although this project is more than useful for existing/already developed applications, Alchemist is not the ideal solution to retrofit security into existing applications. It is aimed at offering more to applications that are at least in development, most in design phase. Allowing for language-specific differences, Alchemist builds this application with a strong foundation of security architecture that covers following main practices: