<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://wiki.owasp.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Eklaver</id>
		<title>OWASP - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="https://wiki.owasp.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Eklaver"/>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php/Special:Contributions/Eklaver"/>
		<updated>2026-05-15T00:51:46Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.27.2</generator>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Struts&amp;diff=22601</id>
		<title>Struts</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Struts&amp;diff=22601"/>
				<updated>2007-10-24T09:12:57Z</updated>
		
		<summary type="html">&lt;p&gt;Eklaver: /* Roles */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Status==&lt;br /&gt;
'''Content to be finalised.  First draft'''&lt;br /&gt;
==Author==&lt;br /&gt;
Eelco Klaver&lt;br /&gt;
==Introduction ==&lt;br /&gt;
This article describes the web security implications for the Struts MVC framework, how Struts helps in securing your web applications and where special attention is needed. It will not describe the internal details of Struts.&lt;br /&gt;
&lt;br /&gt;
==Architecture==&lt;br /&gt;
The framework provides its own web Controller  component. This Controller acts as a bridge between the application's Model and the web View. When a request is received, the Controller invokes an Action class. The Action class interacts with the Model to examine or update the application's state. The framework provides an ActionForm class to help transfer data between Model and View.&lt;br /&gt;
&lt;br /&gt;
==Components==&lt;br /&gt;
===Action===&lt;br /&gt;
* No distinction is made between HTTP GET and POST method. Both methods are mapped to the same Action execute method.&lt;br /&gt;
&lt;br /&gt;
===ActionForm===&lt;br /&gt;
&lt;br /&gt;
===Validation===&lt;br /&gt;
* Integration with commons validator&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
&lt;br /&gt;
==Security==&lt;br /&gt;
===Roles===&lt;br /&gt;
In the struts-config.xml configuration file it is possible to specify a roles attribute, a comma-delimited list of security role names that are allowed access to the ActionMapping object.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;action&lt;br /&gt;
     roles=&amp;quot;administrator,contributor&amp;quot;&lt;br /&gt;
     path=&amp;quot;/article/Edit&amp;quot;&lt;br /&gt;
     parameter=&amp;quot;org.article.FindByArticle&amp;quot;&lt;br /&gt;
     name=&amp;quot;articleForm&amp;quot;  &lt;br /&gt;
     scope=&amp;quot;request&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;forward&lt;br /&gt;
             name=&amp;quot;success&amp;quot;&lt;br /&gt;
             path=&amp;quot;article.jsp&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/action&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
[[Category:OWASP Java Project]]&lt;/div&gt;</summary>
		<author><name>Eklaver</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Talk:OWASP_Java_Project_Roadmap&amp;diff=22573</id>
		<title>Talk:OWASP Java Project Roadmap</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Talk:OWASP_Java_Project_Roadmap&amp;diff=22573"/>
				<updated>2007-10-23T12:59:34Z</updated>
		
		<summary type="html">&lt;p&gt;Eklaver: /* Web Services Security */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is the discussion page for the Java Project Roadmap.  You can add your thoughts and comments below.  Please make them easy to read and end your entries with &amp;lt;nowiki&amp;gt;~~~~&amp;lt;/nowiki&amp;gt; to sign your entries.&lt;br /&gt;
&lt;br /&gt;
==Ideas==&lt;br /&gt;
&lt;br /&gt;
* I think we should consider revamping the roadmap with specific article titles and content that we'd like to get written.  For example, I'm considering writing an article on how to set up Eclipse to do a code review. It would be nice to link that in here, but I'm not sure just where.  I was thinking something like this....&lt;br /&gt;
&lt;br /&gt;
; [[Using Eclipse for security code review]]&lt;br /&gt;
: This article will cover setting up Eclipse with plugins like FindBugs, jlint, PMD, and Metrics. Then it will explore how you can use the various search and code browsing functions to find and diagnose potential vulnerabilities. [[User:Jeff Williams|Jeff Williams]] 15:01, 22 June 2006 (EDT)&lt;br /&gt;
&lt;br /&gt;
Sounds like some excellent content!  Couldn't this fit in to the [http://www.owasp.org/index.php?title=Talk:OWASP_Java_Project_Roadmap#Code_Analysis_Tools Code Analysis Tools]  section (even if we have to rename the section to something like &amp;quot;Code Analysis Techniques&amp;quot;)?  Since the Eclipse example is something core to the Java project, I think it should be placed under a real heading, but for other miscellaneous content, I've created a Resources section which could include external articles, books and other resources. [[User:Stephendv|Stephendv]] 04:18, 26 June 2006 (EDT)&lt;br /&gt;
&lt;br /&gt;
==J2EE Security for Architects==&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Deadline for first draft:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;19/08/2006&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Deadline for first review:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;26/08/2006&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Deadline for final draft:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;11/09/2006&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Deadline for final review:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;20/09/2006&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
===Design considerations===&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Discuss the security implications of common J2EE architectures.  This could be discussed in terms of: Authentication, Authorisation, Data Validation, Cross Site Scripting protection.  Other architecture concerns such as scalability, performance and maintainability can also be mentioned, but the focus on security should not be lost.&lt;br /&gt;
  &lt;br /&gt;
  Any other security concerns that should be addressed during the design phase should also be mentioned here.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* Architectural considerations&lt;br /&gt;
** EJB Middle tier&lt;br /&gt;
** Web Services Middle tier&lt;br /&gt;
** Spring Middle tier&lt;br /&gt;
&lt;br /&gt;
===Noteworthy Frameworks===&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Discuss important and relevant Java security frameworks that would be useful to architects.  The information should be at a suitably high level, for example, by discussing the advantages and features as well as the associated costs (direct and indirect) of using the frameworks.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt; &lt;br /&gt;
* Acegi&lt;br /&gt;
* Commons validator&lt;br /&gt;
* jGuard &lt;br /&gt;
* Stinger seems to be parked for a while now, is this correct Jeff?&lt;br /&gt;
** Stinger is &lt;br /&gt;
** CVS HEAD is in a functional state; needs work on docs and new features [[User:Roman|Roman]] 00:15, 13 June 2006 (EDT)&lt;br /&gt;
Most web tier frameworks will prevent XSS attacks, so listing them all in this section is a bit verbose, would prefer to see them listed in the XSS section.  --[[User:Stephendv|Stephendv]] 08:04, 12 June 2006 (EDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
I think Struts should be covered too - Rohyt&lt;br /&gt;
&lt;br /&gt;
Struts is important as a web framework, but there are many frameworks that provide the same functionality from a security point of view.  I think it makes sense to discuss struts as a web framework in section on XSS below with the other popular web frameworks rather than give it a special place in this section which only covers security specific frameworks.  --[[User:Stephendv|Stephendv]] 07:22, 18 June 2006 (EDT)&lt;br /&gt;
&lt;br /&gt;
==J2EE Security for Developers==&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Deadline for first draft:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;19/08/2006&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Deadline for first review:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;26/08/2006&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Deadline for final draft:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;11/09/2006&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Deadline for final review:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;20/09/2006&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
===Java Security Basics===&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Provide an introduction into the basic security services provided by the Java language and environment.  Remember to keep this relevant for web developers for the initial release - there may be a potential to expand this to thick clients in subsequent releases.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* Class Loading&lt;br /&gt;
* Bytecode verifier&lt;br /&gt;
* The Security Manager and security.policy file&lt;br /&gt;
&lt;br /&gt;
===Input Validation===&lt;br /&gt;
* Overview&lt;br /&gt;
&lt;br /&gt;
==== SQL Injection====&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Provide cursory background information on SQL injection and refer to the Guide for more indepth coverage (no need to duplicate info in the Guide).  This section should provide practical advise and real-world code examples for developers. If you feel that a popular persistence framework is not covered, please add it!&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* Overview&lt;br /&gt;
* Prevention&lt;br /&gt;
** White Listing&lt;br /&gt;
** Prepared Statements&lt;br /&gt;
** Stored Procedures &lt;br /&gt;
** Hibernate &lt;br /&gt;
** Ibatis &lt;br /&gt;
** Spring JDBC &lt;br /&gt;
** EJB 3.0? &lt;br /&gt;
** JDO? &lt;br /&gt;
&lt;br /&gt;
====Cross Site Scripting (XSS)====&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Provide cursory background information on XSS and refer to the Guide for more indepth coverage.  This section should provide practical advise and real-world code examples for developers.  If you would like to see coverage of a web framework that's not listed, please add it!&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;  &lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* Overview&lt;br /&gt;
* Prevention&lt;br /&gt;
** White Listing &lt;br /&gt;
** Manual HTML Encoding&lt;br /&gt;
** Preventing XSS in popular Web Frameworks&lt;br /&gt;
*** JSP/JSTL&lt;br /&gt;
*** Struts&lt;br /&gt;
*** Spring MVC&lt;br /&gt;
*** Java Server Faces&lt;br /&gt;
*** WebWork&lt;br /&gt;
*** Wicket&lt;br /&gt;
*** Tapestry &lt;br /&gt;
* CSRF attack&lt;br /&gt;
&lt;br /&gt;
==== LDAP Injection ====&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;As with the other Injection sections, only provide cursory information on the general case. Should contain practical real-world advise and code examples for preventing LDAP injection.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;  &lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* Overview&lt;br /&gt;
* Prevention&lt;br /&gt;
&lt;br /&gt;
==== XPATH Injection ====&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;As with the other Injection sections, only provide cursory information on the general case. Should contain practical real-world advise and code examples for preventing XPATH injection.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* Overview&lt;br /&gt;
* Prevention&lt;br /&gt;
&lt;br /&gt;
==== Miscellaneous Injection Attacks ====&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Should contain practical real-world advise and code examples.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* HTTP Response splitting&lt;br /&gt;
* Command injection - Runtime.getRuntime().exec()&lt;br /&gt;
&lt;br /&gt;
=== Authentication===&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Discuss authentication for Java and J2EE apps under the suggested headings below.  Examples for container managed authentication of specific application servers are also welcome.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* Storing credentials&lt;br /&gt;
* Hashing&lt;br /&gt;
* SSL Best Practices&lt;br /&gt;
* CAPTCHA systems (such as jcaptcha)&lt;br /&gt;
* Container-managed authentication with Realms&lt;br /&gt;
* JAAS Authentication&lt;br /&gt;
* Password length &amp;amp; complexity&lt;br /&gt;
&lt;br /&gt;
===Session Management===&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;The generic problems and solutions for session management are covered in the Guide.  This section should focus on Java specific examples.  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* Logout&lt;br /&gt;
* Session Timeout&lt;br /&gt;
* Absolute Timeout&lt;br /&gt;
* Session Fixation&lt;br /&gt;
* Terminating sessions&lt;br /&gt;
** Terminating sessions when the browser window is closed&lt;br /&gt;
 &lt;br /&gt;
===Authorization===&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Java and J2EE specific discussion and examples.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* In presentation layer&lt;br /&gt;
* In business logic&lt;br /&gt;
* In data layer&lt;br /&gt;
* Declarative v/s Programmatic&lt;br /&gt;
* web.xml configuration&lt;br /&gt;
* [[Forced browsing]]&lt;br /&gt;
* JAAS&lt;br /&gt;
* EJB Authorization&lt;br /&gt;
* Acegi&lt;br /&gt;
* JACC&lt;br /&gt;
* Check horizontal privilege&lt;br /&gt;
&lt;br /&gt;
=== Encryption===&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Java and J2EE specific discussion and examples.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* JCE&lt;br /&gt;
* Storing db secrets&lt;br /&gt;
* Encrypting JDBC connections&lt;br /&gt;
* JSSE&lt;br /&gt;
* Random number generation&lt;br /&gt;
&lt;br /&gt;
=== Error Handling &amp;amp; Logging===&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Java and J2EE specific discussion and examples.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* Output Validation&lt;br /&gt;
* Custom Errors&lt;br /&gt;
* Logging - why log? what to log? log4j, etc.&lt;br /&gt;
* Exception handling techniques&lt;br /&gt;
** fail-open/fail-closed&lt;br /&gt;
** resource cleanup&lt;br /&gt;
** finally block&lt;br /&gt;
** swallowing exceptions&lt;br /&gt;
* Exception handling frameworks&lt;br /&gt;
** Servlet spec - web.xml&lt;br /&gt;
** JSP errorPage&lt;br /&gt;
* Web application forensics and how it differs from conventional forensics. This will emphasize the importance of appropriate exception handling and logging   - Rohyt&lt;br /&gt;
&lt;br /&gt;
=== Web Services Security ===&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Discuss securely implementing Web Services using Java technologies.  Examples using specific frameworks are welcome.  The topic list is a bit light at the moment, please add more topics if they're relevant.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* SAML&lt;br /&gt;
* (X)WS-Security&lt;br /&gt;
* SunJWSDP&lt;br /&gt;
* XML Signature (JSR 105)&lt;br /&gt;
* XML Encryption (JSR 106)&lt;br /&gt;
* ...?&lt;br /&gt;
I think this section should also include WSS4J and a description of how XWS-Security and WSS4J can be integrated in the major Java Web Services Frameworks, such as Spring-WS, Axis, XFire, etc. (see also http://www.nljug.org/pages/events/content/jfall_2007/sessions/00028/) [[User:Eklaver|Eelco Klaver]] 08:59, 23 October 2007 (EDT)&lt;br /&gt;
&lt;br /&gt;
=== Code Analysis Tools ===&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;The introduction should cover the advantages and short comings of code analysis tools.  An overview of the current state of the art and the available tools would go well here.  As a start, only open source tools are listed, but if vendors of commercial tools adhere to the [[Tutorial]] guidelines, these submissions will be gladly received.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* Introduction&lt;br /&gt;
* FindBugs&lt;br /&gt;
** Creating custom rules&lt;br /&gt;
* PMD&lt;br /&gt;
** Creating custom rules&lt;br /&gt;
* JLint&lt;br /&gt;
* Jmetrics&lt;br /&gt;
&lt;br /&gt;
    I proposed some guidelines for the entire OWASP site&lt;br /&gt;
    in the [[Tutorial]] page. What do you think?? [[User:Jeff Williams|Jeff Williams]] 15:01, 22 June 2006 (EDT)&lt;br /&gt;
&lt;br /&gt;
    I didn't know this existed.  Replaced the above with a link to the [[Tutorial]] page.  --[[User:Stephendv|Stephendv]] 04:03, 26 June 2006 (EDT)&lt;br /&gt;
&lt;br /&gt;
== J2EE Security For Deployers ==&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Deadline for first draft:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;19/08/2006&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Deadline for first review:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;26/08/2006&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Deadline for final draft:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;11/09/2006&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Deadline for final review:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;20/09/2006&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
=== Securing Popular J2EE Servers ===&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Practical step-by-step guides to securing various J2EE servers.  Examples of secure configurations can also be provided for download.  If configurations are provided, they should be properly commented so that the rationale for configuration settings is clearly explained.  Users of the configurations should be provided with enough information to make their own risk decisions.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* Securing Tomcat&lt;br /&gt;
* Securing JBoss&lt;br /&gt;
* Securing WebLogic&lt;br /&gt;
* Securing WebSphere&lt;br /&gt;
* Others...&lt;br /&gt;
&lt;br /&gt;
=== Defining a Java Security Policy ===&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Practical information on creating a Java security policies for J2EE servers.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* Jeff's tool? --[[User:Stephendv|Stephendv]] 08:37, 12 June 2006 (EDT)&lt;br /&gt;
* jChains (www.jchains.org)&lt;br /&gt;
&lt;br /&gt;
=== Protecting Binaries ===&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;This should be focussed on web applications, so examples should include applets and web start apps.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
- Discuss Bytecode Manipulation Tools and Techniques - Rohyt&lt;br /&gt;
* Bytecode obfuscation&lt;br /&gt;
* Convert bytecode to native machine code&lt;br /&gt;
* jarsigner&lt;/div&gt;</summary>
		<author><name>Eklaver</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Struts&amp;diff=18901</id>
		<title>Struts</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Struts&amp;diff=18901"/>
				<updated>2007-05-31T05:32:49Z</updated>
		
		<summary type="html">&lt;p&gt;Eklaver: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Status==&lt;br /&gt;
'''Content to be finalised.  First draft'''&lt;br /&gt;
==Author==&lt;br /&gt;
Eelco Klaver&lt;br /&gt;
==Introduction ==&lt;br /&gt;
This article describes the web security implications for the Struts MVC framework, how Struts helps in securing your web applications and where special attention is needed. It will not describe the internal details of Struts.&lt;br /&gt;
&lt;br /&gt;
==Architecture==&lt;br /&gt;
The framework provides its own web Controller  component. This Controller acts as a bridge between the application's Model and the web View. When a request is received, the Controller invokes an Action class. The Action class interacts with the Model to examine or update the application's state. The framework provides an ActionForm class to help transfer data between Model and View.&lt;br /&gt;
&lt;br /&gt;
==Components==&lt;br /&gt;
===Action===&lt;br /&gt;
* No distinction is made between HTTP GET and POST method. Both methods are mapped to the same Action execute method.&lt;br /&gt;
&lt;br /&gt;
===ActionForm===&lt;br /&gt;
&lt;br /&gt;
===Validation===&lt;br /&gt;
* Integration with commons validator&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
&lt;br /&gt;
==Security==&lt;br /&gt;
===Roles===&lt;br /&gt;
&lt;br /&gt;
[[Category:OWASP Java Project]]&lt;/div&gt;</summary>
		<author><name>Eklaver</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Struts&amp;diff=18900</id>
		<title>Struts</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Struts&amp;diff=18900"/>
				<updated>2007-05-31T05:32:02Z</updated>
		
		<summary type="html">&lt;p&gt;Eklaver: /* Validation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Status==&lt;br /&gt;
'''Content to be finalised.  First draft'''&lt;br /&gt;
==Author==&lt;br /&gt;
Eelco Klaver&lt;br /&gt;
==Introduction ==&lt;br /&gt;
This article describes the web security implications for the Struts MVC framework, how Struts helps in securing your web applications and where special attention is needed. It will not describe the internal details of Struts.&lt;br /&gt;
&lt;br /&gt;
==Architecture==&lt;br /&gt;
The framework provides its own web Controller  component. This Controller acts as a bridge between the application's Model and the web View. When a request is received, the Controller invokes an Action class. The Action class interacts with the Model to examine or update the application's state. The framework provides an ActionForm class to help transfer data between Model and View.&lt;br /&gt;
&lt;br /&gt;
==Components==&lt;br /&gt;
===Action===&lt;br /&gt;
* No distinction is made between HTTP GET and POST method. Both methods are mapped to the same Action execute method.&lt;br /&gt;
&lt;br /&gt;
===ActionForm===&lt;br /&gt;
&lt;br /&gt;
===Validation===&lt;br /&gt;
* Integration with commons validator&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
==Roles==&lt;br /&gt;
&lt;br /&gt;
[[Category:OWASP Java Project]]&lt;/div&gt;</summary>
		<author><name>Eklaver</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Struts&amp;diff=18899</id>
		<title>Struts</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Struts&amp;diff=18899"/>
				<updated>2007-05-31T05:31:06Z</updated>
		
		<summary type="html">&lt;p&gt;Eklaver: /* Architecture */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Status==&lt;br /&gt;
'''Content to be finalised.  First draft'''&lt;br /&gt;
==Author==&lt;br /&gt;
Eelco Klaver&lt;br /&gt;
==Introduction ==&lt;br /&gt;
This article describes the web security implications for the Struts MVC framework, how Struts helps in securing your web applications and where special attention is needed. It will not describe the internal details of Struts.&lt;br /&gt;
&lt;br /&gt;
==Architecture==&lt;br /&gt;
The framework provides its own web Controller  component. This Controller acts as a bridge between the application's Model and the web View. When a request is received, the Controller invokes an Action class. The Action class interacts with the Model to examine or update the application's state. The framework provides an ActionForm class to help transfer data between Model and View.&lt;br /&gt;
&lt;br /&gt;
==Components==&lt;br /&gt;
===Action===&lt;br /&gt;
* No distinction is made between HTTP GET and POST method. Both methods are mapped to the same Action execute method.&lt;br /&gt;
&lt;br /&gt;
===ActionForm===&lt;br /&gt;
&lt;br /&gt;
===Validation===&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
==Roles==&lt;br /&gt;
&lt;br /&gt;
[[Category:OWASP Java Project]]&lt;/div&gt;</summary>
		<author><name>Eklaver</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Struts&amp;diff=18898</id>
		<title>Struts</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Struts&amp;diff=18898"/>
				<updated>2007-05-31T05:27:55Z</updated>
		
		<summary type="html">&lt;p&gt;Eklaver: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Status==&lt;br /&gt;
'''Content to be finalised.  First draft'''&lt;br /&gt;
==Author==&lt;br /&gt;
Eelco Klaver&lt;br /&gt;
==Introduction ==&lt;br /&gt;
This article describes the web security implications for the Struts MVC framework, how Struts helps in securing your web applications and where special attention is needed. It will not describe the internal details of Struts.&lt;br /&gt;
&lt;br /&gt;
==Architecture==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Components==&lt;br /&gt;
===Action===&lt;br /&gt;
* No distinction is made between HTTP GET and POST method. Both methods are mapped to the same Action execute method.&lt;br /&gt;
&lt;br /&gt;
===ActionForm===&lt;br /&gt;
&lt;br /&gt;
===Validation===&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
==Roles==&lt;br /&gt;
&lt;br /&gt;
[[Category:OWASP Java Project]]&lt;/div&gt;</summary>
		<author><name>Eklaver</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Struts&amp;diff=18894</id>
		<title>Struts</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Struts&amp;diff=18894"/>
				<updated>2007-05-31T05:16:02Z</updated>
		
		<summary type="html">&lt;p&gt;Eklaver: New page: ==Status== '''Content to be finalised.  First draft''' ==Author== Eelco Klaver ==Introduction ==   ==Architecture==   ==Components== ===Action===  ===ActionForm===  ===Validation===  ==Con...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Status==&lt;br /&gt;
'''Content to be finalised.  First draft'''&lt;br /&gt;
==Author==&lt;br /&gt;
Eelco Klaver&lt;br /&gt;
==Introduction ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Architecture==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Components==&lt;br /&gt;
===Action===&lt;br /&gt;
&lt;br /&gt;
===ActionForm===&lt;br /&gt;
&lt;br /&gt;
===Validation===&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
==Roles==&lt;br /&gt;
&lt;br /&gt;
[[Category:OWASP Java Project]]&lt;/div&gt;</summary>
		<author><name>Eklaver</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=OWASP_Java_Table_of_Contents&amp;diff=18891</id>
		<title>OWASP Java Table of Contents</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=OWASP_Java_Table_of_Contents&amp;diff=18891"/>
				<updated>2007-05-31T05:10:24Z</updated>
		
		<summary type="html">&lt;p&gt;Eklaver: /* Noteworthy Frameworks */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;b&amp;gt;Key:&amp;lt;/b&amp;gt;&lt;br /&gt;
* xx%: Progress status of the paragraph&lt;br /&gt;
* &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;: The paragraph needs a review&lt;br /&gt;
* TD: Paragraph to be assigned&lt;br /&gt;
&lt;br /&gt;
==[[J2EE Security for Architects]]==&lt;br /&gt;
Discuss the security implications of common J2EE architectures.  This could be discussed in terms of: Authentication, Authorisation, Data Validation, Cross Site Scripting protection.  Other architecture concerns such as scalability, performance and maintainability can also be mentioned, but the focus on security should not be lost.&lt;br /&gt;
  &lt;br /&gt;
Any other security concerns that should be addressed during the design phase should also be mentioned here.&lt;br /&gt;
===Design considerations===&lt;br /&gt;
* Architectural considerations (0%, TD)&lt;br /&gt;
** EJB Middle tier (0%, TD)&lt;br /&gt;
** Web Services Middle tier (0%, TD)&lt;br /&gt;
** Spring Middle tier (0%, TD)&lt;br /&gt;
&lt;br /&gt;
==[[J2EE Security for Developers]]==&lt;br /&gt;
=== Noteworthy Frameworks ===&lt;br /&gt;
Discuss important and relevant Java security frameworks that would be useful to architects.  The information should be at a suitably high level, for example, by discussing the advantages and features as well as the associated costs (direct and indirect) of using the frameworks.&lt;br /&gt;
&lt;br /&gt;
(0%, Seeking Volunteers)&lt;br /&gt;
*	[[Struts]] (Eelco Klaver - Planning - 0%)&lt;br /&gt;
*	Turbine&lt;br /&gt;
*	[[Java Server Faces]] (Sam Reghenzi - 90%, Finalising content)&lt;br /&gt;
*	Tapestry&lt;br /&gt;
*	Webwork&lt;br /&gt;
*	Cocoon&lt;br /&gt;
*	Tiles&lt;br /&gt;
*	SiteMesh&lt;br /&gt;
*	Spring (Eelco Klaver - Planning - 0%)&lt;br /&gt;
&lt;br /&gt;
===[[Java Security Basics]]===&lt;br /&gt;
Provide an introduction into the basic security services provided by the Java language and environment.  Remember to keep this relevant for web developers for the initial release - there may be a potential to expand this to thick clients in subsequent releases.&lt;br /&gt;
* Class Loading (0%, Shyaam Sundar, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
* Bytecode verifier (0%, Shyaam Sundar, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
* The Security Manager and security.policy file (0%, Shyaam Sundar, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
===Input Validation Overview ===&lt;br /&gt;
Input validation is perhaps the most important category of application security. Any data entering a software system must be verified to contain safe data that is not mounting a SQL Injection, XSS, CSRF or other form of attack. This is done primarily through the use of regular expressions. It's crucial not to hard-code input validation routines. Regular expressions should contained within a configuration file that can easily updated by an InfoSec professional and not require a programmers intervention or deployment of new application code. Application security needs change over time as new attack vectors are discovered. Application administers need to be able to react to these changes as quickly as possible. &lt;br /&gt;
&lt;br /&gt;
===Input Validation ===&lt;br /&gt;
* Dangerous calls (BufferedReader.readLine(), ServletRequest.getParameter(), etc...) (0%, TD)&lt;br /&gt;
* [[How to add validation logic to HttpServletRequest]] (100%, Jeff Williams, Complete)&lt;br /&gt;
* [[How to perform HTML entity encoding in Java]] (100%, Jeff Williams, Complete)&lt;br /&gt;
&lt;br /&gt;
==== [[Preventing SQL Injection in Java]] ====&lt;br /&gt;
* Overview &lt;br /&gt;
* Prevention (60%, Stephen de Vries, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
** White Listing&lt;br /&gt;
** Prepared Statements&lt;br /&gt;
** Stored Procedures &lt;br /&gt;
** Hibernate &lt;br /&gt;
** Ibatis (60%, Rohyt Belani, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
** Spring JDBC &lt;br /&gt;
** EJB 3.0&lt;br /&gt;
** JDO&lt;br /&gt;
&lt;br /&gt;
==== [[Preventing LDAP Injection in Java]] ====&lt;br /&gt;
* Overview (100%, Stephen de Vries, Complete)&lt;br /&gt;
* Prevention (100%, Stephen de Vries, Complete)&lt;br /&gt;
&lt;br /&gt;
==== [[XPATH Injection]] ====&lt;br /&gt;
As with the other Injection sections, only provide cursory information on the general case. Should contain practical real-world advise and code examples for preventing XPATH injection.&lt;br /&gt;
* Overview (0%, TD)&lt;br /&gt;
* Prevention (0%, TD)&lt;br /&gt;
&lt;br /&gt;
==== Miscellaneous Injection Attacks  ====&lt;br /&gt;
* HTTP Response splitting (0%, TD)&lt;br /&gt;
* Command injection - Runtime.getRuntime().exec() (0%, TD)&lt;br /&gt;
&lt;br /&gt;
=== Authentication===&lt;br /&gt;
* Storing credentials - (0%, Adrian San Juan, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
* [[Hashing Java|Hashing]] - (100%, Michel Prunet, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
* [[SSL Best Practices]] - (20%, Philippe Curmin, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
* [[Using JCaptcha]] - (100%, Dave Ferguson, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;) &lt;br /&gt;
* Container-managed authentication with Realms&lt;br /&gt;
** [[Declarative Access Control in Java]] - (100%, Dave Ferguson, Completed)&lt;br /&gt;
* [[JAAS Timed Login Module]] - (100%, Stephen de Vries, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
* [[JAAS Tomcat Login Module]] - (100%, Stephen de Vries, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
* [[Password length &amp;amp; complexity]] - (100%, Adrian San Juan, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
===Session Management ===&lt;br /&gt;
The generic problems and solutions for session management are covered in the Guide.  This section should focus on Java specific examples.&lt;br /&gt;
* Logout (0%, TD)&lt;br /&gt;
* Session Timeout (0%, TD)&lt;br /&gt;
* Absolute Timeout (0%, TD)&lt;br /&gt;
* [[Session Fixation in Java]] (100%, Rohyt Belani, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
* Terminating sessions (0%, TD)&lt;br /&gt;
** Terminating sessions when the browser window is closed&lt;br /&gt;
&lt;br /&gt;
===Authorization===&lt;br /&gt;
* Declarative v/s Programmatic (0%, TD)&lt;br /&gt;
* EJB Authorization (0%, TD)&lt;br /&gt;
* Acegi (0%, TD)&lt;br /&gt;
* JACC (0%, TD)&lt;br /&gt;
* Check horizontal privilege (0%, TD)&lt;br /&gt;
&lt;br /&gt;
=== Encryption===&lt;br /&gt;
* [http://www.owasp.org/index.php/Using_the_Java_Cryptographic_Extensions JCE] (80%, Joe Prasanna Kumar - To be reviewed)&lt;br /&gt;
* Storing db secrets (0%, TD)&lt;br /&gt;
* Encrypting JDBC connections (0%, TD)&lt;br /&gt;
* [http://www.owasp.org/index.php/Using_the_Java_Secure_Socket_Extensions JSSE] (80%, Joe Prasanna Kumar - To be reviewed)&lt;br /&gt;
* [http://www.owasp.org/index.php/Using_the_Java_Cryptographic_Extensions Random number generation] (80%, Joe Prasanna Kumar - To be reviewed)&lt;br /&gt;
&lt;br /&gt;
=== Error Handling &amp;amp; Logging===&lt;br /&gt;
* Logging - why log? what to log? log4j, etc. (0%, TD)&lt;br /&gt;
* Exception handling techniques (0%, TD)&lt;br /&gt;
** fail-open/fail-closed&lt;br /&gt;
** resource cleanup&lt;br /&gt;
** finally block&lt;br /&gt;
** swallowing exceptions&lt;br /&gt;
* Exception handling frameworks (50%, TD)&lt;br /&gt;
** Servlet spec - web.xml [[Securing tomcat]] (100%, Darren Edmonds, Completed)&lt;br /&gt;
** JSP errorPage (0%, TD)&lt;br /&gt;
* Web application forensics (0%, TD)&lt;br /&gt;
&lt;br /&gt;
=== Web Services Security ===&lt;br /&gt;
* SAML (0%, TD)&lt;br /&gt;
* (X)WS-Security (0%, TD)&lt;br /&gt;
* SunJWSDP (0%, TD)&lt;br /&gt;
* WSS4J (0%, Eelco Klaver)&lt;br /&gt;
* XML Signature (JSR 105) (0%, TD)&lt;br /&gt;
* XML Encryption (JSR 106) (0%, TD)&lt;br /&gt;
&lt;br /&gt;
=== Code Analysis Tools ===&lt;br /&gt;
The introduction should cover the advantages and short comings of code analysis tools.  An overview of the current state of the art and the available tools would go well here.  As a start, only open source tools are listed, but if vendors of commercial tools adhere to the [[Tutorial]] guidelines, these submissions will be gladly received.&lt;br /&gt;
* Introduction (0%, TD)&lt;br /&gt;
* [[:Category:OWASP LAPSE Project]] (100%, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
* FindBugs (0%, TD)&lt;br /&gt;
** Creating custom rules&lt;br /&gt;
* PMD (0%, TD)&lt;br /&gt;
** Creating custom rules&lt;br /&gt;
* JLint (0%, TD)&lt;br /&gt;
* Jmetrics (0%, TD)&lt;br /&gt;
&lt;br /&gt;
== [[J2EE Security For Deployers]] ==&lt;br /&gt;
Practical step-by-step guides to securing various J2EE servers.  Examples of secure configurations can also be provided for download.  If configurations are provided, they should be properly commented so that the rationale for configuration settings is clearly explained.  Users of the configurations should be provided with enough information to make their own risk decisions.&lt;br /&gt;
=== Securing Popular J2EE Servers ===&lt;br /&gt;
* [[Securing tomcat|Securing Tomcat]] - (100%, Darren Edmonds, Completed)&lt;br /&gt;
* Securing JBoss (0%, TD)&lt;br /&gt;
* Securing WebLogic (0%, TD)&lt;br /&gt;
* Securing WebSphere (0%, TD)&lt;br /&gt;
* Others...&lt;br /&gt;
&lt;br /&gt;
=== Defining a Java Security Policy ===&lt;br /&gt;
Practical information on creating a Java security policies for J2EE servers.&lt;br /&gt;
* PolicyTool - JChains already provides this functionality, one policy tool is enough.&lt;br /&gt;
* jChains (www.jchains.org) - (0%, TD)&lt;br /&gt;
&lt;br /&gt;
=== Protecting Binaries ===&lt;br /&gt;
* Bytecode manipulation tools and techniques (0%, TD)&lt;br /&gt;
* [[Bytecode obfuscation]] (100%, Pierre Parrend, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
* Convert bytecode to native machine code (0%, TD)&lt;br /&gt;
* [[Protecting code archives with digital signatures]] (100%, Pierre Parrend, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
* [[Signing jar files with jarsigner]] (100%, Pierre Parrend, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
==[[J2EE Security for Security Analysts and Testers]]==&lt;br /&gt;
* Using Eclipse to verify Java applications (0%, TD)&lt;br /&gt;
* Using [[:Category:OWASP WebScarab Project|WebScarab]] to find vulnerabilities in J2EE applications - (0%, TD)&lt;br /&gt;
* Decompiling Java bytecode (0%, TD)&lt;br /&gt;
&lt;br /&gt;
== [[Java Security Resources]] (ongoing)==&lt;br /&gt;
&lt;br /&gt;
[[Category:OWASP Java Project]]&lt;/div&gt;</summary>
		<author><name>Eklaver</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=OWASP_Java_Table_of_Contents&amp;diff=18890</id>
		<title>OWASP Java Table of Contents</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=OWASP_Java_Table_of_Contents&amp;diff=18890"/>
				<updated>2007-05-31T05:08:16Z</updated>
		
		<summary type="html">&lt;p&gt;Eklaver: /* Web Services Security */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;b&amp;gt;Key:&amp;lt;/b&amp;gt;&lt;br /&gt;
* xx%: Progress status of the paragraph&lt;br /&gt;
* &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;: The paragraph needs a review&lt;br /&gt;
* TD: Paragraph to be assigned&lt;br /&gt;
&lt;br /&gt;
==[[J2EE Security for Architects]]==&lt;br /&gt;
Discuss the security implications of common J2EE architectures.  This could be discussed in terms of: Authentication, Authorisation, Data Validation, Cross Site Scripting protection.  Other architecture concerns such as scalability, performance and maintainability can also be mentioned, but the focus on security should not be lost.&lt;br /&gt;
  &lt;br /&gt;
Any other security concerns that should be addressed during the design phase should also be mentioned here.&lt;br /&gt;
===Design considerations===&lt;br /&gt;
* Architectural considerations (0%, TD)&lt;br /&gt;
** EJB Middle tier (0%, TD)&lt;br /&gt;
** Web Services Middle tier (0%, TD)&lt;br /&gt;
** Spring Middle tier (0%, TD)&lt;br /&gt;
&lt;br /&gt;
==[[J2EE Security for Developers]]==&lt;br /&gt;
=== Noteworthy Frameworks ===&lt;br /&gt;
Discuss important and relevant Java security frameworks that would be useful to architects.  The information should be at a suitably high level, for example, by discussing the advantages and features as well as the associated costs (direct and indirect) of using the frameworks.&lt;br /&gt;
&lt;br /&gt;
(0%, Seeking Volunteers)&lt;br /&gt;
*	Struts (Eelco Klaver - Planning - 0%)&lt;br /&gt;
*	Turbine&lt;br /&gt;
*	[[Java Server Faces]] (Sam Reghenzi - 90%, Finalising content)&lt;br /&gt;
*	Tapestry&lt;br /&gt;
*	Webwork&lt;br /&gt;
*	Cocoon&lt;br /&gt;
*	Tiles&lt;br /&gt;
*	SiteMesh&lt;br /&gt;
*	Spring (Eelco Klaver - Planning - 0%)&lt;br /&gt;
&lt;br /&gt;
===[[Java Security Basics]]===&lt;br /&gt;
Provide an introduction into the basic security services provided by the Java language and environment.  Remember to keep this relevant for web developers for the initial release - there may be a potential to expand this to thick clients in subsequent releases.&lt;br /&gt;
* Class Loading (0%, Shyaam Sundar, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
* Bytecode verifier (0%, Shyaam Sundar, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
* The Security Manager and security.policy file (0%, Shyaam Sundar, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
===Input Validation Overview ===&lt;br /&gt;
Input validation is perhaps the most important category of application security. Any data entering a software system must be verified to contain safe data that is not mounting a SQL Injection, XSS, CSRF or other form of attack. This is done primarily through the use of regular expressions. It's crucial not to hard-code input validation routines. Regular expressions should contained within a configuration file that can easily updated by an InfoSec professional and not require a programmers intervention or deployment of new application code. Application security needs change over time as new attack vectors are discovered. Application administers need to be able to react to these changes as quickly as possible. &lt;br /&gt;
&lt;br /&gt;
===Input Validation ===&lt;br /&gt;
* Dangerous calls (BufferedReader.readLine(), ServletRequest.getParameter(), etc...) (0%, TD)&lt;br /&gt;
* [[How to add validation logic to HttpServletRequest]] (100%, Jeff Williams, Complete)&lt;br /&gt;
* [[How to perform HTML entity encoding in Java]] (100%, Jeff Williams, Complete)&lt;br /&gt;
&lt;br /&gt;
==== [[Preventing SQL Injection in Java]] ====&lt;br /&gt;
* Overview &lt;br /&gt;
* Prevention (60%, Stephen de Vries, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
** White Listing&lt;br /&gt;
** Prepared Statements&lt;br /&gt;
** Stored Procedures &lt;br /&gt;
** Hibernate &lt;br /&gt;
** Ibatis (60%, Rohyt Belani, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
** Spring JDBC &lt;br /&gt;
** EJB 3.0&lt;br /&gt;
** JDO&lt;br /&gt;
&lt;br /&gt;
==== [[Preventing LDAP Injection in Java]] ====&lt;br /&gt;
* Overview (100%, Stephen de Vries, Complete)&lt;br /&gt;
* Prevention (100%, Stephen de Vries, Complete)&lt;br /&gt;
&lt;br /&gt;
==== [[XPATH Injection]] ====&lt;br /&gt;
As with the other Injection sections, only provide cursory information on the general case. Should contain practical real-world advise and code examples for preventing XPATH injection.&lt;br /&gt;
* Overview (0%, TD)&lt;br /&gt;
* Prevention (0%, TD)&lt;br /&gt;
&lt;br /&gt;
==== Miscellaneous Injection Attacks  ====&lt;br /&gt;
* HTTP Response splitting (0%, TD)&lt;br /&gt;
* Command injection - Runtime.getRuntime().exec() (0%, TD)&lt;br /&gt;
&lt;br /&gt;
=== Authentication===&lt;br /&gt;
* Storing credentials - (0%, Adrian San Juan, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
* [[Hashing Java|Hashing]] - (100%, Michel Prunet, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
* [[SSL Best Practices]] - (20%, Philippe Curmin, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
* [[Using JCaptcha]] - (100%, Dave Ferguson, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;) &lt;br /&gt;
* Container-managed authentication with Realms&lt;br /&gt;
** [[Declarative Access Control in Java]] - (100%, Dave Ferguson, Completed)&lt;br /&gt;
* [[JAAS Timed Login Module]] - (100%, Stephen de Vries, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
* [[JAAS Tomcat Login Module]] - (100%, Stephen de Vries, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
* [[Password length &amp;amp; complexity]] - (100%, Adrian San Juan, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
===Session Management ===&lt;br /&gt;
The generic problems and solutions for session management are covered in the Guide.  This section should focus on Java specific examples.&lt;br /&gt;
* Logout (0%, TD)&lt;br /&gt;
* Session Timeout (0%, TD)&lt;br /&gt;
* Absolute Timeout (0%, TD)&lt;br /&gt;
* [[Session Fixation in Java]] (100%, Rohyt Belani, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
* Terminating sessions (0%, TD)&lt;br /&gt;
** Terminating sessions when the browser window is closed&lt;br /&gt;
&lt;br /&gt;
===Authorization===&lt;br /&gt;
* Declarative v/s Programmatic (0%, TD)&lt;br /&gt;
* EJB Authorization (0%, TD)&lt;br /&gt;
* Acegi (0%, TD)&lt;br /&gt;
* JACC (0%, TD)&lt;br /&gt;
* Check horizontal privilege (0%, TD)&lt;br /&gt;
&lt;br /&gt;
=== Encryption===&lt;br /&gt;
* [http://www.owasp.org/index.php/Using_the_Java_Cryptographic_Extensions JCE] (80%, Joe Prasanna Kumar - To be reviewed)&lt;br /&gt;
* Storing db secrets (0%, TD)&lt;br /&gt;
* Encrypting JDBC connections (0%, TD)&lt;br /&gt;
* [http://www.owasp.org/index.php/Using_the_Java_Secure_Socket_Extensions JSSE] (80%, Joe Prasanna Kumar - To be reviewed)&lt;br /&gt;
* [http://www.owasp.org/index.php/Using_the_Java_Cryptographic_Extensions Random number generation] (80%, Joe Prasanna Kumar - To be reviewed)&lt;br /&gt;
&lt;br /&gt;
=== Error Handling &amp;amp; Logging===&lt;br /&gt;
* Logging - why log? what to log? log4j, etc. (0%, TD)&lt;br /&gt;
* Exception handling techniques (0%, TD)&lt;br /&gt;
** fail-open/fail-closed&lt;br /&gt;
** resource cleanup&lt;br /&gt;
** finally block&lt;br /&gt;
** swallowing exceptions&lt;br /&gt;
* Exception handling frameworks (50%, TD)&lt;br /&gt;
** Servlet spec - web.xml [[Securing tomcat]] (100%, Darren Edmonds, Completed)&lt;br /&gt;
** JSP errorPage (0%, TD)&lt;br /&gt;
* Web application forensics (0%, TD)&lt;br /&gt;
&lt;br /&gt;
=== Web Services Security ===&lt;br /&gt;
* SAML (0%, TD)&lt;br /&gt;
* (X)WS-Security (0%, TD)&lt;br /&gt;
* SunJWSDP (0%, TD)&lt;br /&gt;
* WSS4J (0%, Eelco Klaver)&lt;br /&gt;
* XML Signature (JSR 105) (0%, TD)&lt;br /&gt;
* XML Encryption (JSR 106) (0%, TD)&lt;br /&gt;
&lt;br /&gt;
=== Code Analysis Tools ===&lt;br /&gt;
The introduction should cover the advantages and short comings of code analysis tools.  An overview of the current state of the art and the available tools would go well here.  As a start, only open source tools are listed, but if vendors of commercial tools adhere to the [[Tutorial]] guidelines, these submissions will be gladly received.&lt;br /&gt;
* Introduction (0%, TD)&lt;br /&gt;
* [[:Category:OWASP LAPSE Project]] (100%, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
* FindBugs (0%, TD)&lt;br /&gt;
** Creating custom rules&lt;br /&gt;
* PMD (0%, TD)&lt;br /&gt;
** Creating custom rules&lt;br /&gt;
* JLint (0%, TD)&lt;br /&gt;
* Jmetrics (0%, TD)&lt;br /&gt;
&lt;br /&gt;
== [[J2EE Security For Deployers]] ==&lt;br /&gt;
Practical step-by-step guides to securing various J2EE servers.  Examples of secure configurations can also be provided for download.  If configurations are provided, they should be properly commented so that the rationale for configuration settings is clearly explained.  Users of the configurations should be provided with enough information to make their own risk decisions.&lt;br /&gt;
=== Securing Popular J2EE Servers ===&lt;br /&gt;
* [[Securing tomcat|Securing Tomcat]] - (100%, Darren Edmonds, Completed)&lt;br /&gt;
* Securing JBoss (0%, TD)&lt;br /&gt;
* Securing WebLogic (0%, TD)&lt;br /&gt;
* Securing WebSphere (0%, TD)&lt;br /&gt;
* Others...&lt;br /&gt;
&lt;br /&gt;
=== Defining a Java Security Policy ===&lt;br /&gt;
Practical information on creating a Java security policies for J2EE servers.&lt;br /&gt;
* PolicyTool - JChains already provides this functionality, one policy tool is enough.&lt;br /&gt;
* jChains (www.jchains.org) - (0%, TD)&lt;br /&gt;
&lt;br /&gt;
=== Protecting Binaries ===&lt;br /&gt;
* Bytecode manipulation tools and techniques (0%, TD)&lt;br /&gt;
* [[Bytecode obfuscation]] (100%, Pierre Parrend, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
* Convert bytecode to native machine code (0%, TD)&lt;br /&gt;
* [[Protecting code archives with digital signatures]] (100%, Pierre Parrend, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
* [[Signing jar files with jarsigner]] (100%, Pierre Parrend, &amp;lt;b&amp;gt;Review&amp;lt;/b&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
==[[J2EE Security for Security Analysts and Testers]]==&lt;br /&gt;
* Using Eclipse to verify Java applications (0%, TD)&lt;br /&gt;
* Using [[:Category:OWASP WebScarab Project|WebScarab]] to find vulnerabilities in J2EE applications - (0%, TD)&lt;br /&gt;
* Decompiling Java bytecode (0%, TD)&lt;br /&gt;
&lt;br /&gt;
== [[Java Security Resources]] (ongoing)==&lt;br /&gt;
&lt;br /&gt;
[[Category:OWASP Java Project]]&lt;/div&gt;</summary>
		<author><name>Eklaver</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Talk:OWASP_Java_Project_Roadmap&amp;diff=6567</id>
		<title>Talk:OWASP Java Project Roadmap</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Talk:OWASP_Java_Project_Roadmap&amp;diff=6567"/>
				<updated>2006-06-23T09:12:30Z</updated>
		
		<summary type="html">&lt;p&gt;Eklaver: /* Web Services Security */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is the discussion page for the Java Project Roadmap.  You can add your thoughts and comments below.  Please make them easy to read and end your entries with &amp;lt;nowiki&amp;gt;~~~~&amp;lt;/nowiki&amp;gt; to sign your entries.&lt;br /&gt;
&lt;br /&gt;
==Ideas==&lt;br /&gt;
&lt;br /&gt;
* I think we should consider revamping the roadmap with specific article titles and content that we'd like to get written.  For example, I'm considering writing an article on how to set up Eclipse to do a code review. It would be nice to link that in here, but I'm not sure just where.  I was thinking something like this....&lt;br /&gt;
&lt;br /&gt;
; [[Using Eclipse for security code review]]&lt;br /&gt;
: This article will cover setting up Eclipse with plugins like FindBugs, jlint, PMD, and Metrics. Then it will explore how you can use the various search and code browsing functions to find and diagnose potential vulnerabilities. [[User:Jeff Williams|Jeff Williams]] 15:01, 22 June 2006 (EDT)&lt;br /&gt;
&lt;br /&gt;
==J2EE Security for Architects==&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Deadline for first draft:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;19/08/2006&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Deadline for first review:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;26/08/2006&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Deadline for final draft:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;11/09/2006&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Deadline for final review:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;20/09/2006&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
===Design considerations===&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Discuss the security implications of common J2EE architectures.  This could be discussed in terms of: Authentication, Authorisation, Data Validation, Cross Site Scripting protection.  Other architecture concerns such as scalability, performance and maintainability can also be mentioned, but the focus on security should not be lost.&lt;br /&gt;
  &lt;br /&gt;
  Any other security concerns that should be addressed during the design phase should also be mentioned here.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* Architectural considerations&lt;br /&gt;
** EJB Middle tier&lt;br /&gt;
** Web Services Middle tier&lt;br /&gt;
** Spring Middle tier&lt;br /&gt;
&lt;br /&gt;
===Noteworthy Frameworks===&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Discuss important and relevant Java security frameworks that would be useful to architects.  The information should be at a suitably high level, for example, by discussing the advantages and features as well as the associated costs (direct and indirect) of using the frameworks.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt; &lt;br /&gt;
* Acegi&lt;br /&gt;
* Commons validator&lt;br /&gt;
* jGuard &lt;br /&gt;
* Stinger seems to be parked for a while now, is this correct Jeff?&lt;br /&gt;
** Stinger is &lt;br /&gt;
** CVS HEAD is in a functional state; needs work on docs and new features [[User:Roman|Roman]] 00:15, 13 June 2006 (EDT)&lt;br /&gt;
Most web tier frameworks will prevent XSS attacks, so listing them all in this section is a bit verbose, would prefer to see them listed in the XSS section.  --[[User:Stephendv|Stephendv]] 08:04, 12 June 2006 (EDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
I think Struts should be covered too - Rohyt&lt;br /&gt;
&lt;br /&gt;
Struts is important as a web framework, but there are many frameworks that provide the same functionality from a security point of view.  I think it makes sense to discuss struts as a web framework in section on XSS below with the other popular web frameworks rather than give it a special place in this section which only covers security specific frameworks.  --[[User:Stephendv|Stephendv]] 07:22, 18 June 2006 (EDT)&lt;br /&gt;
&lt;br /&gt;
==J2EE Security for Developers==&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
    &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Deadline for first draft:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;19/08/2006&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Deadline for first review:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;26/08/2006&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Deadline for final draft:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;11/09/2006&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Deadline for final review:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;20/09/2006&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
===Java Security Basics===&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Provide an introduction into the basic security services provided by the Java language and environment.  Remember to keep this relevant for web developers for the initial release - there may be a potential to expand this to thick clients in subsequent releases.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* Class Loading&lt;br /&gt;
* Bytecode verifier&lt;br /&gt;
* The Security Manager and security.policy file&lt;br /&gt;
&lt;br /&gt;
===Input Validation===&lt;br /&gt;
* Overview&lt;br /&gt;
&lt;br /&gt;
==== SQL Injection====&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Provide cursory background information on SQL injection and refer to the Guide for more indepth coverage (no need to duplicate info in the Guide).  This section should provide practical advise and real-world code examples for developers. If you feel that a popular persistence framework is not covered, please add it!&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* Overview&lt;br /&gt;
* Prevention&lt;br /&gt;
** White Listing&lt;br /&gt;
** Prepared Statements&lt;br /&gt;
** Stored Procedures &lt;br /&gt;
** Hibernate &lt;br /&gt;
** Ibatis &lt;br /&gt;
** Spring JDBC &lt;br /&gt;
** EJB 3.0? &lt;br /&gt;
** JDO? &lt;br /&gt;
&lt;br /&gt;
====Cross Site Scripting (XSS)====&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Provide cursory background information on XSS and refer to the Guide for more indepth coverage.  This section should provide practical advise and real-world code examples for developers.  If you would like to see coverage of a web framework that's not listed, please add it!&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;  &lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* Overview&lt;br /&gt;
* Prevention&lt;br /&gt;
** White Listing &lt;br /&gt;
** Manual HTML Encoding&lt;br /&gt;
** Preventing XSS in popular Web Frameworks&lt;br /&gt;
*** JSP/JSTL&lt;br /&gt;
*** Struts&lt;br /&gt;
*** Spring MVC&lt;br /&gt;
*** Java Server Faces&lt;br /&gt;
*** WebWork&lt;br /&gt;
*** Wicket&lt;br /&gt;
*** Tapestry &lt;br /&gt;
* CSRF attack&lt;br /&gt;
&lt;br /&gt;
==== LDAP Injection ====&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;As with the other Injection sections, only provide cursory information on the general case. Should contain practical real-world advise and code examples for preventing LDAP injection.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;  &lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* Overview&lt;br /&gt;
* Prevention&lt;br /&gt;
&lt;br /&gt;
==== XPATH Injection ====&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;As with the other Injection sections, only provide cursory information on the general case. Should contain practical real-world advise and code examples for preventing XPATH injection.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* Overview&lt;br /&gt;
* Prevention&lt;br /&gt;
&lt;br /&gt;
==== Miscellaneous Injection Attacks ====&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Should contain practical real-world advise and code examples.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* HTTP Response splitting&lt;br /&gt;
* Command injection - Runtime.getRuntime().exec()&lt;br /&gt;
&lt;br /&gt;
=== Authentication===&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Discuss authentication for Java and J2EE apps under the suggested headings below.  Examples for container managed authentication of specific application servers are also welcome.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* Storing credentials&lt;br /&gt;
* Hashing&lt;br /&gt;
* SSL Best Practices&lt;br /&gt;
* CAPTCHA systems (such as jcaptcha)&lt;br /&gt;
* Container-managed authentication with Realms&lt;br /&gt;
* JAAS Authentication&lt;br /&gt;
* Password length &amp;amp; complexity&lt;br /&gt;
&lt;br /&gt;
===Session Management===&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;The generic problems and solutions for session management are covered in the Guide.  This section should focus on Java specific examples.  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* Logout&lt;br /&gt;
* Session Timeout&lt;br /&gt;
* Absolute Timeout&lt;br /&gt;
* Session Fixation&lt;br /&gt;
* Terminating sessions&lt;br /&gt;
** Terminating sessions when the browser window is closed&lt;br /&gt;
 &lt;br /&gt;
===Authorization===&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Java and J2EE specific discussion and examples.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* In presentation layer&lt;br /&gt;
* In business logic&lt;br /&gt;
* In data layer&lt;br /&gt;
* Declarative v/s Programmatic&lt;br /&gt;
* web.xml configuration&lt;br /&gt;
* [[Forced browsing]]&lt;br /&gt;
* JAAS&lt;br /&gt;
* EJB Authorization&lt;br /&gt;
* Acegi&lt;br /&gt;
* JACC&lt;br /&gt;
* Check horizontal privilege&lt;br /&gt;
&lt;br /&gt;
=== Encryption===&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Java and J2EE specific discussion and examples.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* JCE&lt;br /&gt;
* Storing db secrets&lt;br /&gt;
* Encrypting JDBC connections&lt;br /&gt;
* JSSE&lt;br /&gt;
* Random number generation&lt;br /&gt;
&lt;br /&gt;
=== Error Handling &amp;amp; Logging===&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Java and J2EE specific discussion and examples.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* Output Validation&lt;br /&gt;
* Custom Errors&lt;br /&gt;
* Logging - why log? what to log? log4j, etc.&lt;br /&gt;
* Exception handling techniques&lt;br /&gt;
** fail-open/fail-closed&lt;br /&gt;
** resource cleanup&lt;br /&gt;
** finally block&lt;br /&gt;
** swallowing exceptions&lt;br /&gt;
* Exception handling frameworks&lt;br /&gt;
** Servlet spec - web.xml&lt;br /&gt;
** JSP errorPage&lt;br /&gt;
* Web application forensics and how it differs from conventional forensics. This will emphasize the importance of appropriate exception handling and logging   - Rohyt&lt;br /&gt;
&lt;br /&gt;
=== Web Services Security ===&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Discuss securely implementing Web Services using Java technologies.  Examples using specific frameworks are welcome.  The topic list is a bit light at the moment, please add more topics if they're relevant.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* SAML&lt;br /&gt;
* (X)WS-Security&lt;br /&gt;
* SunJWSDP&lt;br /&gt;
* XML Signature (JSR 105)&lt;br /&gt;
* XML Encryption (JSR 106)&lt;br /&gt;
* ...?&lt;br /&gt;
&lt;br /&gt;
=== Code Analysis Tools ===&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;The introduction should cover the advantages and short comings of code analysis tools.  An overview of the current state of the art and the available tools would go well here.  As a start, only open source tools are listed, but if vendors of commercial tools adhere to the [[Contributing to the OWASP Java project]] guidelines, these submissions will be gladly received.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* Introduction&lt;br /&gt;
* FindBugs&lt;br /&gt;
** Creating custom rules&lt;br /&gt;
* PMD&lt;br /&gt;
** Creating custom rules&lt;br /&gt;
* JLint&lt;br /&gt;
* Jmetrics&lt;br /&gt;
&lt;br /&gt;
    I proposed some guidelines for the entire OWASP site&lt;br /&gt;
    in the [[Tutorial]] page. What do you think?? [[User:Jeff Williams|Jeff Williams]] 15:01, 22 June 2006 (EDT)&lt;br /&gt;
&lt;br /&gt;
== J2EE Security For Deployers ==&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Deadline for first draft:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;19/08/2006&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Deadline for first review:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;26/08/2006&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Deadline for final draft:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;11/09/2006&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Deadline for final review:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;20/09/2006&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
=== Securing Popular J2EE Servers ===&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Practical step-by-step guides to securing various J2EE servers.  Examples of secure configurations can also be provided for download.  If configurations are provided, they should be properly commented so that the rationale for configuration settings is clearly explained.  Users of the configurations should be provided with enough information to make their own risk decisions.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* Securing Tomcat&lt;br /&gt;
* Securing JBoss&lt;br /&gt;
* Securing WebLogic&lt;br /&gt;
* Securing WebSphere&lt;br /&gt;
* Others...&lt;br /&gt;
&lt;br /&gt;
=== Defining a Java Security Policy ===&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Practical information on creating a Java security policies for J2EE servers.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
* Jeff's tool? --[[User:Stephendv|Stephendv]] 08:37, 12 June 2006 (EDT)&lt;br /&gt;
* jChains (www.jchains.org)&lt;br /&gt;
&lt;br /&gt;
=== Protecting Binaries ===&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Objective:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;This should be focussed on web applications, so examples should include applets and web start apps.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Call for volunteers&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Contributors:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Reviewers:&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
- Discuss Bytecode Manipulation Tools and Techniques - Rohyt&lt;br /&gt;
* Bytecode obfuscation&lt;br /&gt;
* Convert bytecode to native machine code&lt;br /&gt;
* jarsigner&lt;/div&gt;</summary>
		<author><name>Eklaver</name></author>	</entry>

	</feed>