<?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=Jun+Zhu</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=Jun+Zhu"/>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php/Special:Contributions/Jun_Zhu"/>
		<updated>2026-04-22T05:33:49Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.27.2</generator>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=215998</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=215998"/>
				<updated>2016-04-26T07:58:08Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Publications */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE/ESIDE==&lt;br /&gt;
OWASP ASIDE/ESIDE project consist of two branches, the ASIDE branch that focuses on detecting software vulnerabilities and helping developer write secure code,  and the ESIDE branch that focuses on help educating students secure programming knowledge and practices. Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.uncc.edu/~richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [https://www.linkedin.com/in/mahmoudmo Mahmoud Mohammadi], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [https://www.linkedin.com/in/mahmoudmohamadi/ Mahmoud Mohammadi], [[User:Bill Chu|Bill Chu]] and [http://hci.uncc.edu/~richter/ Heather Richter Lipford], “POSTER : Using Unit Testing to Detect Sanitization Flaws,” in CCS’15: The 22nd ACM SIGSAC Conference on Computer and Communications Security, 2015, Denver, USA&lt;br /&gt;
&lt;br /&gt;
2.  [[User:Jun Zhu|Jun Zhu]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], [http://www.tylerthomaswebsite.net/ Tyler Thomas], [https://drive.google.com/file/d/0B4IYTQA8N1S7QTJIczlZRi1SQjg/view?usp=sharing Mitigating Access Control Vulnerabilities through Interactive Static Analysis] , In Proceedings of the 20th ACM Symposium on Access Control Models and Technologies, June 2015, Vienna, Austria &lt;br /&gt;
&lt;br /&gt;
3. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]],  and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [https://www.dropbox.com/s/3dyl6i5n3xongm7/12.pdf?dl=0 Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [https://www.dropbox.com/s/527xwwkm0tfz314/13.pdf?dl=0 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
6. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [https://www.dropbox.com/s/yctg4bzyr3zqin3/14.pdf?dl=0 Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
7. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [https://www.dropbox.com/s/vfp261rhx3o2lac/15.pdf?dl=0 Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Relevant Research==&lt;br /&gt;
&lt;br /&gt;
8. [http://hci.uncc.edu/~richter/ Heather Richter Lipford], [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], etc  [https://www.dropbox.com/s/fs2jin7azy1z7pm/16.pdf?dl=0 The Impact of A Structured Application Development Framework on Web Application Security]&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE/ESIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
ESIDE provides: &lt;br /&gt;
* Identification of targeted Java code patterns.&lt;br /&gt;
* Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
* Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
p.s. (Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].)&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Publications ==&lt;br /&gt;
1. [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], [[User:Bill Chu|Bill Chu]], and [[User:Jun Zhu|Jun Zhu]]. [https://drive.google.com/open?id=0B4IYTQA8N1S7cmpCRFlQWjRJems Embedding Secure Coding Instruction into the IDE: A Field Study in an Advanced CS Course]. In Proceedings of the 46th ACM Technical Symposium on Computer Science Education (SIGCSE '15). ACM, New York, NY, USA, 60-65. DOI=10.1145/2676723.2677280 http://doi.acm.org/10.1145/2676723.2677280&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
== Runnable ESIDE Prototype and Installation Guidelines ==&lt;br /&gt;
The recent publicly available ESIDE plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ESIDE work properly. ESIDE is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
== Open Source Code ==&lt;br /&gt;
The most recent source code of ESIDE can be accessed via https://github.com/witny23/ESIDE.&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of March 17, 2015 the priorities are:&lt;br /&gt;
&lt;br /&gt;
1. Move xml into a database.&lt;br /&gt;
&lt;br /&gt;
2. Create a public repository of customized ESIDE support for specific courses.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=215997</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=215997"/>
				<updated>2016-04-26T07:53:30Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Research Activities */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE/ESIDE==&lt;br /&gt;
OWASP ASIDE/ESIDE project consist of two branches, the ASIDE branch that focuses on detecting software vulnerabilities and helping developer write secure code,  and the ESIDE branch that focuses on help educating students secure programming knowledge and practices. Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.uncc.edu/~richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [https://www.linkedin.com/in/mahmoudmo Mahmoud Mohammadi], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [https://www.linkedin.com/in/mahmoudmohamadi/ Mahmoud Mohammadi], [[User:Bill Chu|Bill Chu]] and [http://hci.uncc.edu/~richter/ Heather Richter Lipford], “POSTER : Using Unit Testing to Detect Sanitization Flaws,” in CCS’15: The 22nd ACM SIGSAC Conference on Computer and Communications Security, 2015, Denver, USA&lt;br /&gt;
&lt;br /&gt;
2.  [[User:Jun Zhu|Jun Zhu]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], [http://www.tylerthomaswebsite.net/ Tyler Thomas], [https://drive.google.com/file/d/0B4IYTQA8N1S7QTJIczlZRi1SQjg/view?usp=sharing Mitigating Access Control Vulnerabilities through Interactive Static Analysis] , In Proceedings of the 20th ACM Symposium on Access Control Models and Technologies, June 2015, Vienna, Austria &lt;br /&gt;
&lt;br /&gt;
3. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]],  and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [https://www.dropbox.com/s/3dyl6i5n3xongm7/12.pdf?dl=0 Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [https://www.dropbox.com/s/527xwwkm0tfz314/13.pdf?dl=0 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
6. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [https://www.dropbox.com/s/yctg4bzyr3zqin3/14.pdf?dl=0 Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
7. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [https://www.dropbox.com/s/vfp261rhx3o2lac/15.pdf?dl=0 Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Relevant Research==&lt;br /&gt;
&lt;br /&gt;
8. [http://hci.uncc.edu/~richter/ Heather Richter Lipford], [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], etc  [https://www.dropbox.com/s/fs2jin7azy1z7pm/16.pdf?dl=0 The Impact of A Structured Application Development Framework on Web Application Security]&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE/ESIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
ESIDE provides: &lt;br /&gt;
* Identification of targeted Java code patterns.&lt;br /&gt;
* Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
* Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
p.s. (Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].)&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Publications ==&lt;br /&gt;
1. [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], [[User:Bill Chu|Bill Chu]], and [[User:Jun Zhu|Jun Zhu]]. [http://webpages.uncc.edu/~jzhu16/EmbeddingSecureCodingInstructionIntoTheIDE.pdf Embedding Secure Coding Instruction into the IDE: A Field Study in an Advanced CS Course]. In Proceedings of the 46th ACM Technical Symposium on Computer Science Education (SIGCSE '15). ACM, New York, NY, USA, 60-65. DOI=10.1145/2676723.2677280 http://doi.acm.org/10.1145/2676723.2677280&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
== Runnable ESIDE Prototype and Installation Guidelines ==&lt;br /&gt;
The recent publicly available ESIDE plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ESIDE work properly. ESIDE is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
== Open Source Code ==&lt;br /&gt;
The most recent source code of ESIDE can be accessed via https://github.com/witny23/ESIDE.&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of March 17, 2015 the priorities are:&lt;br /&gt;
&lt;br /&gt;
1. Move xml into a database.&lt;br /&gt;
&lt;br /&gt;
2. Create a public repository of customized ESIDE support for specific courses.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=215996</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=215996"/>
				<updated>2016-04-26T07:52:05Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Research Activities */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE/ESIDE==&lt;br /&gt;
OWASP ASIDE/ESIDE project consist of two branches, the ASIDE branch that focuses on detecting software vulnerabilities and helping developer write secure code,  and the ESIDE branch that focuses on help educating students secure programming knowledge and practices. Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.uncc.edu/~richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [https://www.linkedin.com/in/mahmoudmo Mahmoud Mohammadi], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [https://www.linkedin.com/in/mahmoudmohamadi/ Mahmoud Mohammadi], [[User:Bill Chu|Bill Chu]] and [http://hci.uncc.edu/~richter/ Heather Richter Lipford], “POSTER : Using Unit Testing to Detect Sanitization Flaws,” in CCS’15: The 22nd ACM SIGSAC Conference on Computer and Communications Security, 2015, Denver, USA&lt;br /&gt;
&lt;br /&gt;
2.  [[User:Jun Zhu|Jun Zhu]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], [http://www.tylerthomaswebsite.net/ Tyler Thomas], [https://drive.google.com/file/d/0B4IYTQA8N1S7QTJIczlZRi1SQjg/view?usp=sharing] , In Proceedings of the 20th ACM Symposium on Access Control Models and Technologies, June 2015, Vienna, Austria &lt;br /&gt;
&lt;br /&gt;
3. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]],  and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [https://www.dropbox.com/s/3dyl6i5n3xongm7/12.pdf?dl=0 Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [https://www.dropbox.com/s/527xwwkm0tfz314/13.pdf?dl=0 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
6. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [https://www.dropbox.com/s/yctg4bzyr3zqin3/14.pdf?dl=0 Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
7. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [https://www.dropbox.com/s/vfp261rhx3o2lac/15.pdf?dl=0 Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Relevant Research==&lt;br /&gt;
&lt;br /&gt;
8. [http://hci.uncc.edu/~richter/ Heather Richter Lipford], [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], etc  [https://www.dropbox.com/s/fs2jin7azy1z7pm/16.pdf?dl=0 The Impact of A Structured Application Development Framework on Web Application Security]&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE/ESIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
ESIDE provides: &lt;br /&gt;
* Identification of targeted Java code patterns.&lt;br /&gt;
* Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
* Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
p.s. (Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].)&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Publications ==&lt;br /&gt;
1. [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], [[User:Bill Chu|Bill Chu]], and [[User:Jun Zhu|Jun Zhu]]. [http://webpages.uncc.edu/~jzhu16/EmbeddingSecureCodingInstructionIntoTheIDE.pdf Embedding Secure Coding Instruction into the IDE: A Field Study in an Advanced CS Course]. In Proceedings of the 46th ACM Technical Symposium on Computer Science Education (SIGCSE '15). ACM, New York, NY, USA, 60-65. DOI=10.1145/2676723.2677280 http://doi.acm.org/10.1145/2676723.2677280&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
== Runnable ESIDE Prototype and Installation Guidelines ==&lt;br /&gt;
The recent publicly available ESIDE plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ESIDE work properly. ESIDE is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
== Open Source Code ==&lt;br /&gt;
The most recent source code of ESIDE can be accessed via https://github.com/witny23/ESIDE.&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of March 17, 2015 the priorities are:&lt;br /&gt;
&lt;br /&gt;
1. Move xml into a database.&lt;br /&gt;
&lt;br /&gt;
2. Create a public repository of customized ESIDE support for specific courses.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=208358</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=208358"/>
				<updated>2016-02-09T01:18:00Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Publications */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE/ESIDE==&lt;br /&gt;
OWASP ASIDE/ESIDE project consist of two branches, the ASIDE branch that focuses on detecting software vulnerabilities and helping developer write secure code,  and the ESIDE branch that focuses on help educating students secure programming knowledge and practices. Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.uncc.edu/~richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [https://www.linkedin.com/in/mahmoudmo Mahmoud Mohammadi], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [https://www.linkedin.com/in/mahmoudmohamadi/ Mahmoud Mohammadi], [[User:Bill Chu|Bill Chu]] and [http://hci.uncc.edu/~richter/ Heather Richter Lipford], “POSTER : Using Unit Testing to Detect Sanitization Flaws,” in CCS’15: The 22nd ACM SIGSAC Conference on Computer and Communications Security, 2015, Denver, USA&lt;br /&gt;
&lt;br /&gt;
2.  [[User:Jun Zhu|Jun Zhu]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], [http://www.tylerthomaswebsite.net/ Tyler Thomas], [http://webpages.uncc.edu/~jzhu16/Mitigating_Access_Control_Vulnerabilities_through_Interactive_Static_Analysis.pdf Mitigating Access Control Vulnerabilities through Interactive Static Analysis] , In Proceedings of the 20th ACM Symposium on Access Control Models and Technologies, June 2015, Vienna, Austria &lt;br /&gt;
&lt;br /&gt;
3. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]],  and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [https://www.dropbox.com/s/3dyl6i5n3xongm7/12.pdf?dl=0 Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [https://www.dropbox.com/s/527xwwkm0tfz314/13.pdf?dl=0 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
6. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [https://www.dropbox.com/s/yctg4bzyr3zqin3/14.pdf?dl=0 Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
7. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [https://www.dropbox.com/s/vfp261rhx3o2lac/15.pdf?dl=0 Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Relevant Research==&lt;br /&gt;
&lt;br /&gt;
8. [http://hci.uncc.edu/~richter/ Heather Richter Lipford], [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], etc  [https://www.dropbox.com/s/fs2jin7azy1z7pm/16.pdf?dl=0 The Impact of A Structured Application Development Framework on Web Application Security]&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE/ESIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
ESIDE provides: &lt;br /&gt;
* Identification of targeted Java code patterns.&lt;br /&gt;
* Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
* Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
p.s. (Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].)&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Publications ==&lt;br /&gt;
1. [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], [[User:Bill Chu|Bill Chu]], and [[User:Jun Zhu|Jun Zhu]]. [http://webpages.uncc.edu/~jzhu16/EmbeddingSecureCodingInstructionIntoTheIDE.pdf Embedding Secure Coding Instruction into the IDE: A Field Study in an Advanced CS Course]. In Proceedings of the 46th ACM Technical Symposium on Computer Science Education (SIGCSE '15). ACM, New York, NY, USA, 60-65. DOI=10.1145/2676723.2677280 http://doi.acm.org/10.1145/2676723.2677280&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
== Runnable ESIDE Prototype and Installation Guidelines ==&lt;br /&gt;
The recent publicly available ESIDE plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ESIDE work properly. ESIDE is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
== Open Source Code ==&lt;br /&gt;
The most recent source code of ESIDE can be accessed via https://github.com/witny23/ESIDE.&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of March 17, 2015 the priorities are:&lt;br /&gt;
&lt;br /&gt;
1. Move xml into a database.&lt;br /&gt;
&lt;br /&gt;
2. Create a public repository of customized ESIDE support for specific courses.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=208357</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=208357"/>
				<updated>2016-02-09T00:58:11Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Research Activities */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE/ESIDE==&lt;br /&gt;
OWASP ASIDE/ESIDE project consist of two branches, the ASIDE branch that focuses on detecting software vulnerabilities and helping developer write secure code,  and the ESIDE branch that focuses on help educating students secure programming knowledge and practices. Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.uncc.edu/~richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [https://www.linkedin.com/in/mahmoudmo Mahmoud Mohammadi], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [https://www.linkedin.com/in/mahmoudmohamadi/ Mahmoud Mohammadi], [[User:Bill Chu|Bill Chu]] and [http://hci.uncc.edu/~richter/ Heather Richter Lipford], “POSTER : Using Unit Testing to Detect Sanitization Flaws,” in CCS’15: The 22nd ACM SIGSAC Conference on Computer and Communications Security, 2015, Denver, USA&lt;br /&gt;
&lt;br /&gt;
2.  [[User:Jun Zhu|Jun Zhu]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], [http://www.tylerthomaswebsite.net/ Tyler Thomas], [http://webpages.uncc.edu/~jzhu16/Mitigating_Access_Control_Vulnerabilities_through_Interactive_Static_Analysis.pdf Mitigating Access Control Vulnerabilities through Interactive Static Analysis] , In Proceedings of the 20th ACM Symposium on Access Control Models and Technologies, June 2015, Vienna, Austria &lt;br /&gt;
&lt;br /&gt;
3. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]],  and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [https://www.dropbox.com/s/3dyl6i5n3xongm7/12.pdf?dl=0 Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [https://www.dropbox.com/s/527xwwkm0tfz314/13.pdf?dl=0 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
6. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [https://www.dropbox.com/s/yctg4bzyr3zqin3/14.pdf?dl=0 Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
7. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [https://www.dropbox.com/s/vfp261rhx3o2lac/15.pdf?dl=0 Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Relevant Research==&lt;br /&gt;
&lt;br /&gt;
8. [http://hci.uncc.edu/~richter/ Heather Richter Lipford], [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], etc  [https://www.dropbox.com/s/fs2jin7azy1z7pm/16.pdf?dl=0 The Impact of A Structured Application Development Framework on Web Application Security]&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE/ESIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
ESIDE provides: &lt;br /&gt;
* Identification of targeted Java code patterns.&lt;br /&gt;
* Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
* Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
p.s. (Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].)&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Publications ==&lt;br /&gt;
1. [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], [[User:Bill Chu|Bill Chu]], and [[User:Jun Zhu|Jun Zhu]]. Embedding Secure Coding Instruction into the IDE: A Field Study in an Advanced CS Course. In Proceedings of the 46th ACM Technical Symposium on Computer Science Education (SIGCSE '15). ACM, New York, NY, USA, 60-65. DOI=10.1145/2676723.2677280 http://doi.acm.org/10.1145/2676723.2677280&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
== Runnable ESIDE Prototype and Installation Guidelines ==&lt;br /&gt;
The recent publicly available ESIDE plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ESIDE work properly. ESIDE is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
== Open Source Code ==&lt;br /&gt;
The most recent source code of ESIDE can be accessed via https://github.com/witny23/ESIDE.&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of March 17, 2015 the priorities are:&lt;br /&gt;
&lt;br /&gt;
1. Move xml into a database.&lt;br /&gt;
&lt;br /&gt;
2. Create a public repository of customized ESIDE support for specific courses.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=208355</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=208355"/>
				<updated>2016-02-09T00:36:51Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Research Activities */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE/ESIDE==&lt;br /&gt;
OWASP ASIDE/ESIDE project consist of two branches, the ASIDE branch that focuses on detecting software vulnerabilities and helping developer write secure code,  and the ESIDE branch that focuses on help educating students secure programming knowledge and practices. Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.uncc.edu/~richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [https://www.linkedin.com/in/mahmoudmo Mahmoud Mohammadi], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [https://www.linkedin.com/in/mahmoudmohamadi/ Mahmoud Mohammadi], [[User:Bill Chu|Bill Chu]] and [http://hci.uncc.edu/~richter/ Heather Richter Lipford], “POSTER : Using Unit Testing to Detect Sanitization Flaws,” in CCS’15: The 22nd ACM SIGSAC Conference on Computer and Communications Security, 2015, Denver, USA&lt;br /&gt;
&lt;br /&gt;
2.  [[User:Jun Zhu|Jun Zhu]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], [http://www.tylerthomaswebsite.net/ Tyler Thomas], [https://drive.google.com/file/d/0B4IYTQA8N1S7QTJIczlZRi1SQjg/view?usp=sharing Mitigating Access Control Vulnerabilities through Interactive Static Analysis] , In Proceedings of the 20th ACM Symposium on Access Control Models and Technologies, June 2015, Vienna, Austria &lt;br /&gt;
&lt;br /&gt;
3. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]],  and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [https://www.dropbox.com/s/3dyl6i5n3xongm7/12.pdf?dl=0 Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [https://www.dropbox.com/s/527xwwkm0tfz314/13.pdf?dl=0 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
6. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [https://www.dropbox.com/s/yctg4bzyr3zqin3/14.pdf?dl=0 Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
7. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [https://www.dropbox.com/s/vfp261rhx3o2lac/15.pdf?dl=0 Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Relevant Research==&lt;br /&gt;
&lt;br /&gt;
8. [http://hci.uncc.edu/~richter/ Heather Richter Lipford], [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], etc  [https://www.dropbox.com/s/fs2jin7azy1z7pm/16.pdf?dl=0 The Impact of A Structured Application Development Framework on Web Application Security]&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE/ESIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
ESIDE provides: &lt;br /&gt;
* Identification of targeted Java code patterns.&lt;br /&gt;
* Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
* Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
p.s. (Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].)&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Publications ==&lt;br /&gt;
1. [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], [[User:Bill Chu|Bill Chu]], and [[User:Jun Zhu|Jun Zhu]]. Embedding Secure Coding Instruction into the IDE: A Field Study in an Advanced CS Course. In Proceedings of the 46th ACM Technical Symposium on Computer Science Education (SIGCSE '15). ACM, New York, NY, USA, 60-65. DOI=10.1145/2676723.2677280 http://doi.acm.org/10.1145/2676723.2677280&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
== Runnable ESIDE Prototype and Installation Guidelines ==&lt;br /&gt;
The recent publicly available ESIDE plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ESIDE work properly. ESIDE is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
== Open Source Code ==&lt;br /&gt;
The most recent source code of ESIDE can be accessed via https://github.com/witny23/ESIDE.&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of March 17, 2015 the priorities are:&lt;br /&gt;
&lt;br /&gt;
1. Move xml into a database.&lt;br /&gt;
&lt;br /&gt;
2. Create a public repository of customized ESIDE support for specific courses.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=205057</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=205057"/>
				<updated>2015-12-12T04:35:45Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Research Activities */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE/ESIDE==&lt;br /&gt;
OWASP ASIDE/ESIDE project consist of two branches, the ASIDE branch that focuses on detecting software vulnerabilities and helping developer write secure code,  and the ESIDE branch that focuses on help educating students secure programming knowledge and practices. Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.uncc.edu/~richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [https://www.linkedin.com/in/mahmoudmo Mahmoud Mohammadi], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [https://www.linkedin.com/in/mahmoudmohamadi/ Mahmoud Mohammadi], [[User:Bill Chu|Bill Chu]] and [http://hci.uncc.edu/~richter/ Heather Richter Lipford], “POSTER : Using Unit Testing to Detect Sanitization Flaws,” in CCS’15: The 22nd ACM SIGSAC Conference on Computer and Communications Security, 2015, Denver, USA&lt;br /&gt;
&lt;br /&gt;
2.  [[User:Jun Zhu|Jun Zhu]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], [http://www.tylerthomaswebsite.net/ Tyler Thomas], [https://drive.google.com/file/d/0B4IYTQA8N1S7QTJIczlZRi1SQjg/view?usp=sharing Mitigating Access Control Vulnerabilities through Interactive Static Analysis] , In Proceedings of the 20th ACM Symposium on Access Control Models and Technologies, June 2015, Vienna, Austria &lt;br /&gt;
&lt;br /&gt;
3. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]],  and [[User:Bill Chu|Bill Chu]], [https://www.dropbox.com/s/7omb3kluj6lq8j1/10.pdf?dl=0 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [https://www.dropbox.com/s/3dyl6i5n3xongm7/12.pdf?dl=0 Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [https://www.dropbox.com/s/527xwwkm0tfz314/13.pdf?dl=0 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
6. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [https://www.dropbox.com/s/yctg4bzyr3zqin3/14.pdf?dl=0 Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
7. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [https://www.dropbox.com/s/vfp261rhx3o2lac/15.pdf?dl=0 Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Relevant Research==&lt;br /&gt;
&lt;br /&gt;
8. [http://hci.uncc.edu/~richter/ Heather Richter Lipford], [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], etc  [https://www.dropbox.com/s/fs2jin7azy1z7pm/16.pdf?dl=0 The Impact of A Structured Application Development Framework on Web Application Security]&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE/ESIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
ESIDE provides: &lt;br /&gt;
* Identification of targeted Java code patterns.&lt;br /&gt;
* Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
* Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
p.s. (Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].)&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Publications ==&lt;br /&gt;
1. [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], [[User:Bill Chu|Bill Chu]], and [[User:Jun Zhu|Jun Zhu]]. Embedding Secure Coding Instruction into the IDE: A Field Study in an Advanced CS Course. In Proceedings of the 46th ACM Technical Symposium on Computer Science Education (SIGCSE '15). ACM, New York, NY, USA, 60-65. DOI=10.1145/2676723.2677280 http://doi.acm.org/10.1145/2676723.2677280&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
== Runnable ESIDE Prototype and Installation Guidelines ==&lt;br /&gt;
The recent publicly available ESIDE plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ESIDE work properly. ESIDE is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
== Open Source Code ==&lt;br /&gt;
The most recent source code of ESIDE can be accessed via https://github.com/witny23/ESIDE.&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of March 17, 2015 the priorities are:&lt;br /&gt;
&lt;br /&gt;
1. Move xml into a database.&lt;br /&gt;
&lt;br /&gt;
2. Create a public repository of customized ESIDE support for specific courses.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191615</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191615"/>
				<updated>2015-03-17T21:37:08Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE/ESIDE==&lt;br /&gt;
OWASP ASIDE/ESIDE project consist of two branches, the ASIDE branch that focuses on detecting software vulnerabilities and helping developer write secure code,  and the ESIDE branch that focuses on help educating students secure programming knowledge and practices. Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.uncc.edu/~richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [http://www.owasp.org/index.php/User:Mahmoodm2 Mahmoud Mohammadi], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE/ESIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
ESIDE provides: &lt;br /&gt;
* Identification of targeted Java code patterns.&lt;br /&gt;
* Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
* Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
p.s. (Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].)&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Publications ==&lt;br /&gt;
1. [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], [[User:Bill Chu|Bill Chu]], and [[User:Jun Zhu|Jun Zhu]]. Embedding Secure Coding Instruction into the IDE: A Field Study in an Advanced CS Course. In Proceedings of the 46th ACM Technical Symposium on Computer Science Education (SIGCSE '15). ACM, New York, NY, USA, 60-65. DOI=10.1145/2676723.2677280 http://doi.acm.org/10.1145/2676723.2677280&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
== Runnable ESIDE Prototype and Installation Guidelines ==&lt;br /&gt;
The recent publicly available ESIDE plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ESIDE work properly. ESIDE is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
== Open Source Code ==&lt;br /&gt;
The most recent source code of ESIDE can be accessed via https://github.com/witny23/ESIDE.&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of March 17, 2015 the priorities are:&lt;br /&gt;
&lt;br /&gt;
1. Move xml into a database.&lt;br /&gt;
&lt;br /&gt;
2. Create a public repository of customized ESIDE support for specific courses.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191565</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191565"/>
				<updated>2015-03-17T15:46:25Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Publications */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE/ESIDE==&lt;br /&gt;
OWASP ASIDE/ESIDE project consist of two branches, the ASIDE branch that focuses on detecting software vulnerabilities and helping developer write secure code,  and the ESIDE branch that focuses on help educating students secure programming knowledge and practices. Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.uncc.edu/~richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE/ESIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
ESIDE provides: &lt;br /&gt;
* Identification of targeted Java code patterns.&lt;br /&gt;
* Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
* Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
p.s. (Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].)&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Publications ==&lt;br /&gt;
1. [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], [[User:Bill Chu|Bill Chu]], and [[User:Jun Zhu|Jun Zhu]]. Embedding Secure Coding Instruction into the IDE: A Field Study in an Advanced CS Course. In Proceedings of the 46th ACM Technical Symposium on Computer Science Education (SIGCSE '15). ACM, New York, NY, USA, 60-65. DOI=10.1145/2676723.2677280 http://doi.acm.org/10.1145/2676723.2677280&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
== Runnable ESIDE Prototype and Installation Guidelines ==&lt;br /&gt;
The recent publicly available ESIDE plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ESIDE work properly. ESIDE is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
== Open Source Code ==&lt;br /&gt;
The most recent source code of ESIDE can be accessed via https://github.com/witny23/ESIDE.&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of March 17, 2015 the priorities are:&lt;br /&gt;
&lt;br /&gt;
1. Move xml into a database.&lt;br /&gt;
&lt;br /&gt;
2. Create a public repository of customized ESIDE support for specific courses.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191564</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191564"/>
				<updated>2015-03-17T15:44:18Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Runnable ESIDE Prototype and Installation Guidelines */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE/ESIDE==&lt;br /&gt;
OWASP ASIDE/ESIDE project consist of two branches, the ASIDE branch that focuses on detecting software vulnerabilities and helping developer write secure code,  and the ESIDE branch that focuses on help educating students secure programming knowledge and practices. Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.uncc.edu/~richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE/ESIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
ESIDE provides: &lt;br /&gt;
* Identification of targeted Java code patterns.&lt;br /&gt;
* Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
* Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
p.s. (Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].)&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Publications ==&lt;br /&gt;
1. [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [[User:Jun Zhu|Jun Zhu]]. Embedding Secure Coding Instruction into the IDE: A Field Study in an Advanced CS Course. In Proceedings of the 46th ACM Technical Symposium on Computer Science Education (SIGCSE '15). ACM, New York, NY, USA, 60-65. DOI=10.1145/2676723.2677280 http://doi.acm.org/10.1145/2676723.2677280&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
== Runnable ESIDE Prototype and Installation Guidelines ==&lt;br /&gt;
The recent publicly available ESIDE plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ESIDE work properly. ESIDE is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
== Open Source Code ==&lt;br /&gt;
The most recent source code of ESIDE can be accessed via https://github.com/witny23/ESIDE.&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of March 17, 2015 the priorities are:&lt;br /&gt;
&lt;br /&gt;
1. Move xml into a database.&lt;br /&gt;
&lt;br /&gt;
2. Create a public repository of customized ESIDE support for specific courses.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191563</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191563"/>
				<updated>2015-03-17T15:44:00Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Education branch of ASIDE: ESIDE */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE/ESIDE==&lt;br /&gt;
OWASP ASIDE/ESIDE project consist of two branches, the ASIDE branch that focuses on detecting software vulnerabilities and helping developer write secure code,  and the ESIDE branch that focuses on help educating students secure programming knowledge and practices. Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.uncc.edu/~richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE/ESIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
ESIDE provides: &lt;br /&gt;
* Identification of targeted Java code patterns.&lt;br /&gt;
* Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
* Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
p.s. (Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].)&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Publications ==&lt;br /&gt;
1. [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [[User:Jun Zhu|Jun Zhu]]. Embedding Secure Coding Instruction into the IDE: A Field Study in an Advanced CS Course. In Proceedings of the 46th ACM Technical Symposium on Computer Science Education (SIGCSE '15). ACM, New York, NY, USA, 60-65. DOI=10.1145/2676723.2677280 http://doi.acm.org/10.1145/2676723.2677280&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
=== Runnable ESIDE Prototype and Installation Guidelines ===&lt;br /&gt;
The recent publicly available ESIDE plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ESIDE work properly. ESIDE is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
== Open Source Code ==&lt;br /&gt;
The most recent source code of ESIDE can be accessed via https://github.com/witny23/ESIDE.&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of March 17, 2015 the priorities are:&lt;br /&gt;
&lt;br /&gt;
1. Move xml into a database.&lt;br /&gt;
&lt;br /&gt;
2. Create a public repository of customized ESIDE support for specific courses.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191562</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191562"/>
				<updated>2015-03-17T15:39:46Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Education branch of ASIDE: ESIDE */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE/ESIDE==&lt;br /&gt;
OWASP ASIDE/ESIDE project consist of two branches, the ASIDE branch that focuses on detecting software vulnerabilities and helping developer write secure code,  and the ESIDE branch that focuses on help educating students secure programming knowledge and practices. Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.uncc.edu/~richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE/ESIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
ESIDE provides: &lt;br /&gt;
* Identification of targeted Java code patterns.&lt;br /&gt;
* Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
* Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
p.s. (Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].)&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Publications ==&lt;br /&gt;
1. [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [[User:Jun Zhu|Jun Zhu]]. Embedding Secure Coding Instruction into the IDE: A Field Study in an Advanced CS Course. In Proceedings of the 46th ACM Technical Symposium on Computer Science Education (SIGCSE '15). ACM, New York, NY, USA, 60-65. DOI=10.1145/2676723.2677280 http://doi.acm.org/10.1145/2676723.2677280&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
== Open Source Code ==&lt;br /&gt;
The most recent source code of ESIDE can be accessed via https://github.com/witny23/ESIDE.&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of March 17, 2015 the priorities are:&lt;br /&gt;
&lt;br /&gt;
1. Move xml into a database.&lt;br /&gt;
&lt;br /&gt;
2. Create a public repository of customized ESIDE support for specific courses.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191561</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191561"/>
				<updated>2015-03-17T15:39:11Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Education branch of ASIDE: ESIDE */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE/ESIDE==&lt;br /&gt;
OWASP ASIDE/ESIDE project consist of two branches, the ASIDE branch that focuses on detecting software vulnerabilities and helping developer write secure code,  and the ESIDE branch that focuses on help educating students secure programming knowledge and practices. Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.uncc.edu/~richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE/ESIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
ESIDE provides: &lt;br /&gt;
* Identification of targeted Java code patterns.&lt;br /&gt;
* Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
* Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
p.s. (Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].)&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Publications ==&lt;br /&gt;
1. [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [[User:Jun Zhu|Jun Zhu]]. Embedding Secure Coding Instruction into the IDE: A Field Study in an Advanced CS Course. In Proceedings of the 46th ACM Technical Symposium on Computer Science Education (SIGCSE '15). ACM, New York, NY, USA, 60-65. DOI=10.1145/2676723.2677280 http://doi.acm.org/10.1145/2676723.2677280&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
The most recent source code of ESIDE can be accessed via https://github.com/witny23/ESIDE.&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of March 17, 2015 the priorities are:&lt;br /&gt;
&lt;br /&gt;
1. Move xml into a database.&lt;br /&gt;
&lt;br /&gt;
2. Create a public repository of customized ESIDE support for specific courses.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191560</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191560"/>
				<updated>2015-03-17T15:35:19Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* What is ASIDE/ESIDE? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE/ESIDE==&lt;br /&gt;
OWASP ASIDE/ESIDE project consist of two branches, the ASIDE branch that focuses on detecting software vulnerabilities and helping developer write secure code,  and the ESIDE branch that focuses on help educating students secure programming knowledge and practices. Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.uncc.edu/~richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE/ESIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
ESIDE provides: &lt;br /&gt;
* Identification of targeted Java code patterns.&lt;br /&gt;
* Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
* Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
p.s. (Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].)&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Publications ==&lt;br /&gt;
1. [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [[User:Jun Zhu|Jun Zhu]]. Embedding Secure Coding Instruction into the IDE: A Field Study in an Advanced CS Course. In Proceedings of the 46th ACM Technical Symposium on Computer Science Education (SIGCSE '15). ACM, New York, NY, USA, 60-65. DOI=10.1145/2676723.2677280 http://doi.acm.org/10.1145/2676723.2677280&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of March 17, 2015 the priorities are:&lt;br /&gt;
&lt;br /&gt;
1. Move xml into a database.&lt;br /&gt;
&lt;br /&gt;
2. Create a public repository of customized ESIDE support for specific courses.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191559</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191559"/>
				<updated>2015-03-17T15:34:52Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* What is ASIDE/ESIDE? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE/ESIDE==&lt;br /&gt;
OWASP ASIDE/ESIDE project consist of two branches, the ASIDE branch that focuses on detecting software vulnerabilities and helping developer write secure code,  and the ESIDE branch that focuses on help educating students secure programming knowledge and practices. Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.uncc.edu/~richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE/ESIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
ESIDE provides: &lt;br /&gt;
* Identification of targeted Java code patterns.&lt;br /&gt;
* Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
p.s. (Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].)&lt;br /&gt;
* Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Publications ==&lt;br /&gt;
1. [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [[User:Jun Zhu|Jun Zhu]]. Embedding Secure Coding Instruction into the IDE: A Field Study in an Advanced CS Course. In Proceedings of the 46th ACM Technical Symposium on Computer Science Education (SIGCSE '15). ACM, New York, NY, USA, 60-65. DOI=10.1145/2676723.2677280 http://doi.acm.org/10.1145/2676723.2677280&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of March 17, 2015 the priorities are:&lt;br /&gt;
&lt;br /&gt;
1. Move xml into a database.&lt;br /&gt;
&lt;br /&gt;
2. Create a public repository of customized ESIDE support for specific courses.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191558</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191558"/>
				<updated>2015-03-17T15:34:28Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* What is ASIDE/ESIDE? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE/ESIDE==&lt;br /&gt;
OWASP ASIDE/ESIDE project consist of two branches, the ASIDE branch that focuses on detecting software vulnerabilities and helping developer write secure code,  and the ESIDE branch that focuses on help educating students secure programming knowledge and practices. Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.uncc.edu/~richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE/ESIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
ESIDE provides: (Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].)&lt;br /&gt;
* Real-time IDE support for secure code education (Java).&lt;br /&gt;
* Identification of targeted Java code patterns.&lt;br /&gt;
* Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Publications ==&lt;br /&gt;
1. [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [[User:Jun Zhu|Jun Zhu]]. Embedding Secure Coding Instruction into the IDE: A Field Study in an Advanced CS Course. In Proceedings of the 46th ACM Technical Symposium on Computer Science Education (SIGCSE '15). ACM, New York, NY, USA, 60-65. DOI=10.1145/2676723.2677280 http://doi.acm.org/10.1145/2676723.2677280&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of March 17, 2015 the priorities are:&lt;br /&gt;
&lt;br /&gt;
1. Move xml into a database.&lt;br /&gt;
&lt;br /&gt;
2. Create a public repository of customized ESIDE support for specific courses.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191557</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191557"/>
				<updated>2015-03-17T15:33:53Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* What is ASIDE/ESIDE? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE/ESIDE==&lt;br /&gt;
OWASP ASIDE/ESIDE project consist of two branches, the ASIDE branch that focuses on detecting software vulnerabilities and helping developer write secure code,  and the ESIDE branch that focuses on help educating students secure programming knowledge and practices. Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.uncc.edu/~richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE/ESIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
ESIDE provides:&lt;br /&gt;
* Real-time IDE support for secure code education (Java).&lt;br /&gt;
* Identification of targeted Java code patterns.&lt;br /&gt;
* Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Publications ==&lt;br /&gt;
1. [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [[User:Jun Zhu|Jun Zhu]]. Embedding Secure Coding Instruction into the IDE: A Field Study in an Advanced CS Course. In Proceedings of the 46th ACM Technical Symposium on Computer Science Education (SIGCSE '15). ACM, New York, NY, USA, 60-65. DOI=10.1145/2676723.2677280 http://doi.acm.org/10.1145/2676723.2677280&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of March 17, 2015 the priorities are:&lt;br /&gt;
&lt;br /&gt;
1. Move xml into a database.&lt;br /&gt;
&lt;br /&gt;
2. Create a public repository of customized ESIDE support for specific courses.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191556</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191556"/>
				<updated>2015-03-17T15:33:01Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* What ESIDE provides? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE/ESIDE==&lt;br /&gt;
OWASP ASIDE/ESIDE project consist of two branches, the ASIDE branch that focuses on detecting software vulnerabilities and helping developer write secure code,  and the ESIDE branch that focuses on help educating students secure programming knowledge and practices. Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.uncc.edu/~richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE/ESIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Publications ==&lt;br /&gt;
1. [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [[User:Jun Zhu|Jun Zhu]]. Embedding Secure Coding Instruction into the IDE: A Field Study in an Advanced CS Course. In Proceedings of the 46th ACM Technical Symposium on Computer Science Education (SIGCSE '15). ACM, New York, NY, USA, 60-65. DOI=10.1145/2676723.2677280 http://doi.acm.org/10.1145/2676723.2677280&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of March 17, 2015 the priorities are:&lt;br /&gt;
&lt;br /&gt;
1. Move xml into a database.&lt;br /&gt;
&lt;br /&gt;
2. Create a public repository of customized ESIDE support for specific courses.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191548</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191548"/>
				<updated>2015-03-17T14:26:15Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Priorities and get involved */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE/ESIDE==&lt;br /&gt;
OWASP ASIDE/ESIDE project consist of two branches, the ASIDE branch that focuses on detecting software vulnerabilities and helping developer write secure code,  and the ESIDE branch that focuses on help educating students secure programming knowledge and practices. Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.uncc.edu/~richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE/ESIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Publications ==&lt;br /&gt;
1. [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [[User:Jun Zhu|Jun Zhu]]. Embedding Secure Coding Instruction into the IDE: A Field Study in an Advanced CS Course. In Proceedings of the 46th ACM Technical Symposium on Computer Science Education (SIGCSE '15). ACM, New York, NY, USA, 60-65. DOI=10.1145/2676723.2677280 http://doi.acm.org/10.1145/2676723.2677280&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of March 17, 2015 the priorities are:&lt;br /&gt;
&lt;br /&gt;
1. Move xml into a database.&lt;br /&gt;
&lt;br /&gt;
2. Create a public repository of customized ESIDE support for specific courses.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191547</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191547"/>
				<updated>2015-03-17T14:25:43Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Priorities and get involved */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE/ESIDE==&lt;br /&gt;
OWASP ASIDE/ESIDE project consist of two branches, the ASIDE branch that focuses on detecting software vulnerabilities and helping developer write secure code,  and the ESIDE branch that focuses on help educating students secure programming knowledge and practices. Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.uncc.edu/~richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE/ESIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Publications ==&lt;br /&gt;
1. [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [[User:Jun Zhu|Jun Zhu]]. Embedding Secure Coding Instruction into the IDE: A Field Study in an Advanced CS Course. In Proceedings of the 46th ACM Technical Symposium on Computer Science Education (SIGCSE '15). ACM, New York, NY, USA, 60-65. DOI=10.1145/2676723.2677280 http://doi.acm.org/10.1145/2676723.2677280&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of March 17, 2015 the priorities are:&lt;br /&gt;
1. Move xml into a database.&lt;br /&gt;
&lt;br /&gt;
2. Create a public repository of customized ESIDE support for specific courses.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191546</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191546"/>
				<updated>2015-03-17T14:24:20Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Publications */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE/ESIDE==&lt;br /&gt;
OWASP ASIDE/ESIDE project consist of two branches, the ASIDE branch that focuses on detecting software vulnerabilities and helping developer write secure code,  and the ESIDE branch that focuses on help educating students secure programming knowledge and practices. Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.uncc.edu/~richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE/ESIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Publications ==&lt;br /&gt;
1. [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [[User:Jun Zhu|Jun Zhu]]. Embedding Secure Coding Instruction into the IDE: A Field Study in an Advanced CS Course. In Proceedings of the 46th ACM Technical Symposium on Computer Science Education (SIGCSE '15). ACM, New York, NY, USA, 60-65. DOI=10.1145/2676723.2677280 http://doi.acm.org/10.1145/2676723.2677280&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of October 13, 2014 the priorities are:&lt;br /&gt;
* Developing more controls for faculty members to modify educational content&lt;br /&gt;
* Develop a means to control when students are first exposed to warnings. Ideas include:&lt;br /&gt;
1. The tool monitors code and only provides warnings after the student has successfully&lt;br /&gt;
written a particular code pattern x amount of times.&lt;br /&gt;
2. Faculty are provided with a means to unlock warnings based on student readiness.&lt;br /&gt;
3. Students are asked if they are ready for a particular interaction.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191545</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191545"/>
				<updated>2015-03-17T14:23:50Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Publications */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE/ESIDE==&lt;br /&gt;
OWASP ASIDE/ESIDE project consist of two branches, the ASIDE branch that focuses on detecting software vulnerabilities and helping developer write secure code,  and the ESIDE branch that focuses on help educating students secure programming knowledge and practices. Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.uncc.edu/~richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE/ESIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Publications ==&lt;br /&gt;
1. [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [[User:Jun Zhu|Jun Zhu]]. Embedding Secure Coding Instruction into the IDE: A Field Study in an Advanced CS Course. In Proceedings of the 46th ACM Technical Symposium on Computer Science Education (SIGCSE '15). ACM, New York, NY, USA, 60-65. DOI=10.1145/2676723.2677280 http://doi.acm.org/10.1145/2676723.2677280&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of October 13, 2014 the priorities are:&lt;br /&gt;
* Developing more controls for faculty members to modify educational content&lt;br /&gt;
* Develop a means to control when students are first exposed to warnings. Ideas include:&lt;br /&gt;
1. The tool monitors code and only provides warnings after the student has successfully&lt;br /&gt;
written a particular code pattern x amount of times.&lt;br /&gt;
2. Faculty are provided with a means to unlock warnings based on student readiness.&lt;br /&gt;
3. Students are asked if they are ready for a particular interaction.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191544</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191544"/>
				<updated>2015-03-17T14:23:20Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Publications */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE/ESIDE==&lt;br /&gt;
OWASP ASIDE/ESIDE project consist of two branches, the ASIDE branch that focuses on detecting software vulnerabilities and helping developer write secure code,  and the ESIDE branch that focuses on help educating students secure programming knowledge and practices. Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.uncc.edu/~richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE/ESIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Publications ==&lt;br /&gt;
1. Whitney, M., [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [[User:Jun Zhu|Jun Zhu]]. Embedding Secure Coding Instruction into the IDE: A Field Study in an Advanced CS Course. In Proceedings of the 46th ACM Technical Symposium on Computer Science Education (SIGCSE '15). ACM, New York, NY, USA, 60-65. DOI=10.1145/2676723.2677280 http://doi.acm.org/10.1145/2676723.2677280&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of October 13, 2014 the priorities are:&lt;br /&gt;
* Developing more controls for faculty members to modify educational content&lt;br /&gt;
* Develop a means to control when students are first exposed to warnings. Ideas include:&lt;br /&gt;
1. The tool monitors code and only provides warnings after the student has successfully&lt;br /&gt;
written a particular code pattern x amount of times.&lt;br /&gt;
2. Faculty are provided with a means to unlock warnings based on student readiness.&lt;br /&gt;
3. Students are asked if they are ready for a particular interaction.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191543</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191543"/>
				<updated>2015-03-17T14:21:14Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Research Activities */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE/ESIDE==&lt;br /&gt;
OWASP ASIDE/ESIDE project consist of two branches, the ASIDE branch that focuses on detecting software vulnerabilities and helping developer write secure code,  and the ESIDE branch that focuses on help educating students secure programming knowledge and practices. Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.uncc.edu/~richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE/ESIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Publications ==&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of October 13, 2014 the priorities are:&lt;br /&gt;
* Developing more controls for faculty members to modify educational content&lt;br /&gt;
* Develop a means to control when students are first exposed to warnings. Ideas include:&lt;br /&gt;
1. The tool monitors code and only provides warnings after the student has successfully&lt;br /&gt;
written a particular code pattern x amount of times.&lt;br /&gt;
2. Faculty are provided with a means to unlock warnings based on student readiness.&lt;br /&gt;
3. Students are asked if they are ready for a particular interaction.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191542</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191542"/>
				<updated>2015-03-17T14:20:21Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Milestone/timeline */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE/ESIDE==&lt;br /&gt;
OWASP ASIDE/ESIDE project consist of two branches, the ASIDE branch that focuses on detecting software vulnerabilities and helping developer write secure code,  and the ESIDE branch that focuses on help educating students secure programming knowledge and practices. Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.uncc.edu/~richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
6. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE/ESIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Publications ==&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of October 13, 2014 the priorities are:&lt;br /&gt;
* Developing more controls for faculty members to modify educational content&lt;br /&gt;
* Develop a means to control when students are first exposed to warnings. Ideas include:&lt;br /&gt;
1. The tool monitors code and only provides warnings after the student has successfully&lt;br /&gt;
written a particular code pattern x amount of times.&lt;br /&gt;
2. Faculty are provided with a means to unlock warnings based on student readiness.&lt;br /&gt;
3. Students are asked if they are ready for a particular interaction.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191541</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191541"/>
				<updated>2015-03-17T14:18:47Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE/ESIDE==&lt;br /&gt;
OWASP ASIDE/ESIDE project consist of two branches, the ASIDE branch that focuses on detecting software vulnerabilities and helping developer write secure code,  and the ESIDE branch that focuses on help educating students secure programming knowledge and practices. Details about ESIDE are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.uncc.edu/~richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
6. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE/ESIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Milestone/timeline ==&lt;br /&gt;
Advanced Student Studies – paper accepted to SIGCSE 2015&lt;br /&gt;
* 1. Fall, 2012 – Ten day assignment study at UNCC with the Network Based Application&lt;br /&gt;
Development course.&lt;br /&gt;
* 2. Spring, 2013 – Semester long deployment study at UNCC with the Network Based Application&lt;br /&gt;
Development course.&lt;br /&gt;
Early / Intermediate Student Studies – TOCE Journal targeted for submission&lt;br /&gt;
* 1. Fall, 2012 – Classroom activity study with 61 early Elon University students&lt;br /&gt;
* 2. Spring, 2013 – Classroom activity study with 22 intermediate Elon University students&lt;br /&gt;
* 3. Spring, 2013 – Focus group study with 5 JCSU early students&lt;br /&gt;
* 4. Fall, 2013 – Interactive walk through study with 4 JCSU early students&lt;br /&gt;
* 5. Fall, 2013 – Seven day assignment study with 57 Elon University students&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of October 13, 2014 the priorities are:&lt;br /&gt;
* Developing more controls for faculty members to modify educational content&lt;br /&gt;
* Develop a means to control when students are first exposed to warnings. Ideas include:&lt;br /&gt;
1. The tool monitors code and only provides warnings after the student has successfully&lt;br /&gt;
written a particular code pattern x amount of times.&lt;br /&gt;
2. Faculty are provided with a means to unlock warnings based on student readiness.&lt;br /&gt;
3. Students are asked if they are ready for a particular interaction.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=OWASP_ASIDE_Project&amp;diff=191539</id>
		<title>OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=OWASP_ASIDE_Project&amp;diff=191539"/>
				<updated>2015-03-17T14:07:29Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: Undo revision 191538 by Jun Zhu (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==== Project About ====&lt;br /&gt;
{{:Projects/OWASP ASIDE Project | Project About}}&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=OWASP_ASIDE_Project&amp;diff=191538</id>
		<title>OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=OWASP_ASIDE_Project&amp;diff=191538"/>
				<updated>2015-03-17T14:05:18Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==== Project About ====&lt;br /&gt;
{{:Projects/OWASP ASIDE/ASIDE Project | Project About}}&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191303</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=191303"/>
				<updated>2015-03-12T20:41:25Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE/ESIDE==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.uncc.edu/~richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
New! OWASP ASIDE has an educational branch, named ESIDE (Educational Security in the IDE), details are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
6. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE/ESIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Milestone/timeline ==&lt;br /&gt;
Advanced Student Studies – paper accepted to SIGCSE 2015&lt;br /&gt;
* 1. Fall, 2012 – Ten day assignment study at UNCC with the Network Based Application&lt;br /&gt;
Development course.&lt;br /&gt;
* 2. Spring, 2013 – Semester long deployment study at UNCC with the Network Based Application&lt;br /&gt;
Development course.&lt;br /&gt;
Early / Intermediate Student Studies – TOCE Journal targeted for submission&lt;br /&gt;
* 1. Fall, 2012 – Classroom activity study with 61 early Elon University students&lt;br /&gt;
* 2. Spring, 2013 – Classroom activity study with 22 intermediate Elon University students&lt;br /&gt;
* 3. Spring, 2013 – Focus group study with 5 JCSU early students&lt;br /&gt;
* 4. Fall, 2013 – Interactive walk through study with 4 JCSU early students&lt;br /&gt;
* 5. Fall, 2013 – Seven day assignment study with 57 Elon University students&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of October 13, 2014 the priorities are:&lt;br /&gt;
* Developing more controls for faculty members to modify educational content&lt;br /&gt;
* Develop a means to control when students are first exposed to warnings. Ideas include:&lt;br /&gt;
1. The tool monitors code and only provides warnings after the student has successfully&lt;br /&gt;
written a particular code pattern x amount of times.&lt;br /&gt;
2. Faculty are provided with a means to unlock warnings based on student readiness.&lt;br /&gt;
3. Students are asked if they are ready for a particular interaction.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=187082</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=187082"/>
				<updated>2014-12-16T09:48:50Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* OWASP ASIDE */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.uncc.edu/~richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
New! OWASP ASIDE has an educational branch, named ESIDE (Educational Security in the IDE), details are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
6. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Milestone/timeline ==&lt;br /&gt;
Advanced Student Studies – paper accepted to SIGCSE 2015&lt;br /&gt;
* 1. Fall, 2012 – Ten day assignment study at UNCC with the Network Based Application&lt;br /&gt;
Development course.&lt;br /&gt;
* 2. Spring, 2013 – Semester long deployment study at UNCC with the Network Based Application&lt;br /&gt;
Development course.&lt;br /&gt;
Early / Intermediate Student Studies – TOCE Journal targeted for submission&lt;br /&gt;
* 1. Fall, 2012 – Classroom activity study with 61 early Elon University students&lt;br /&gt;
* 2. Spring, 2013 – Classroom activity study with 22 intermediate Elon University students&lt;br /&gt;
* 3. Spring, 2013 – Focus group study with 5 JCSU early students&lt;br /&gt;
* 4. Fall, 2013 – Interactive walk through study with 4 JCSU early students&lt;br /&gt;
* 5. Fall, 2013 – Seven day assignment study with 57 Elon University students&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of October 13, 2014 the priorities are:&lt;br /&gt;
* Developing more controls for faculty members to modify educational content&lt;br /&gt;
* Develop a means to control when students are first exposed to warnings. Ideas include:&lt;br /&gt;
1. The tool monitors code and only provides warnings after the student has successfully&lt;br /&gt;
written a particular code pattern x amount of times.&lt;br /&gt;
2. Faculty are provided with a means to unlock warnings based on student readiness.&lt;br /&gt;
3. Students are asked if they are ready for a particular interaction.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=187081</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=187081"/>
				<updated>2014-12-16T09:47:48Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* OWASP ASIDE */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.sis.uncc.edu:8080/richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
New! OWASP ASIDE has an education branch, named ESIDE (Educational Security in the IDE), details are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
6. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Milestone/timeline ==&lt;br /&gt;
Advanced Student Studies – paper accepted to SIGCSE 2015&lt;br /&gt;
* 1. Fall, 2012 – Ten day assignment study at UNCC with the Network Based Application&lt;br /&gt;
Development course.&lt;br /&gt;
* 2. Spring, 2013 – Semester long deployment study at UNCC with the Network Based Application&lt;br /&gt;
Development course.&lt;br /&gt;
Early / Intermediate Student Studies – TOCE Journal targeted for submission&lt;br /&gt;
* 1. Fall, 2012 – Classroom activity study with 61 early Elon University students&lt;br /&gt;
* 2. Spring, 2013 – Classroom activity study with 22 intermediate Elon University students&lt;br /&gt;
* 3. Spring, 2013 – Focus group study with 5 JCSU early students&lt;br /&gt;
* 4. Fall, 2013 – Interactive walk through study with 4 JCSU early students&lt;br /&gt;
* 5. Fall, 2013 – Seven day assignment study with 57 Elon University students&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of October 13, 2014 the priorities are:&lt;br /&gt;
* Developing more controls for faculty members to modify educational content&lt;br /&gt;
* Develop a means to control when students are first exposed to warnings. Ideas include:&lt;br /&gt;
1. The tool monitors code and only provides warnings after the student has successfully&lt;br /&gt;
written a particular code pattern x amount of times.&lt;br /&gt;
2. Faculty are provided with a means to unlock warnings based on student readiness.&lt;br /&gt;
3. Students are asked if they are ready for a particular interaction.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=187080</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=187080"/>
				<updated>2014-12-16T09:47:27Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* OWASP ASIDE */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.sis.uncc.edu:8080/richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
OWASP ASIDE has an education branch, named ESIDE (Educational Security in the IDE), details are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
6. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Milestone/timeline ==&lt;br /&gt;
Advanced Student Studies – paper accepted to SIGCSE 2015&lt;br /&gt;
* 1. Fall, 2012 – Ten day assignment study at UNCC with the Network Based Application&lt;br /&gt;
Development course.&lt;br /&gt;
* 2. Spring, 2013 – Semester long deployment study at UNCC with the Network Based Application&lt;br /&gt;
Development course.&lt;br /&gt;
Early / Intermediate Student Studies – TOCE Journal targeted for submission&lt;br /&gt;
* 1. Fall, 2012 – Classroom activity study with 61 early Elon University students&lt;br /&gt;
* 2. Spring, 2013 – Classroom activity study with 22 intermediate Elon University students&lt;br /&gt;
* 3. Spring, 2013 – Focus group study with 5 JCSU early students&lt;br /&gt;
* 4. Fall, 2013 – Interactive walk through study with 4 JCSU early students&lt;br /&gt;
* 5. Fall, 2013 – Seven day assignment study with 57 Elon University students&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of October 13, 2014 the priorities are:&lt;br /&gt;
* Developing more controls for faculty members to modify educational content&lt;br /&gt;
* Develop a means to control when students are first exposed to warnings. Ideas include:&lt;br /&gt;
1. The tool monitors code and only provides warnings after the student has successfully&lt;br /&gt;
written a particular code pattern x amount of times.&lt;br /&gt;
2. Faculty are provided with a means to unlock warnings based on student readiness.&lt;br /&gt;
3. Students are asked if they are ready for a particular interaction.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=187079</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=187079"/>
				<updated>2014-12-16T09:45:27Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* OWASP ASIDE */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.sis.uncc.edu:8080/richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
OWASP ASIDE has an education branch, named ESIDE (Educational Security in the IDE), details are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
6. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Milestone/timeline ==&lt;br /&gt;
Advanced Student Studies – paper accepted to SIGCSE 2015&lt;br /&gt;
* 1. Fall, 2012 – Ten day assignment study at UNCC with the Network Based Application&lt;br /&gt;
Development course.&lt;br /&gt;
* 2. Spring, 2013 – Semester long deployment study at UNCC with the Network Based Application&lt;br /&gt;
Development course.&lt;br /&gt;
Early / Intermediate Student Studies – TOCE Journal targeted for submission&lt;br /&gt;
* 1. Fall, 2012 – Classroom activity study with 61 early Elon University students&lt;br /&gt;
* 2. Spring, 2013 – Classroom activity study with 22 intermediate Elon University students&lt;br /&gt;
* 3. Spring, 2013 – Focus group study with 5 JCSU early students&lt;br /&gt;
* 4. Fall, 2013 – Interactive walk through study with 4 JCSU early students&lt;br /&gt;
* 5. Fall, 2013 – Seven day assignment study with 57 Elon University students&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of October 13, 2014 the priorities are:&lt;br /&gt;
* Developing more controls for faculty members to modify educational content&lt;br /&gt;
* Develop a means to control when students are first exposed to warnings. Ideas include:&lt;br /&gt;
1. The tool monitors code and only provides warnings after the student has successfully&lt;br /&gt;
written a particular code pattern x amount of times.&lt;br /&gt;
2. Faculty are provided with a means to unlock warnings based on student readiness.&lt;br /&gt;
3. Students are asked if they are ready for a particular interaction.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=187078</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=187078"/>
				<updated>2014-12-16T09:45:12Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* OWASP ASIDE */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.sis.uncc.edu:8080/richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE has an education branch, named ESIDE (Educational Security in the IDE), details are described [[https://www.owasp.org/index.php/Projects/OWASP_ASIDE_Project#Education_branch_of_ASIDE:_ESIDE here]].&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
6. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Milestone/timeline ==&lt;br /&gt;
Advanced Student Studies – paper accepted to SIGCSE 2015&lt;br /&gt;
* 1. Fall, 2012 – Ten day assignment study at UNCC with the Network Based Application&lt;br /&gt;
Development course.&lt;br /&gt;
* 2. Spring, 2013 – Semester long deployment study at UNCC with the Network Based Application&lt;br /&gt;
Development course.&lt;br /&gt;
Early / Intermediate Student Studies – TOCE Journal targeted for submission&lt;br /&gt;
* 1. Fall, 2012 – Classroom activity study with 61 early Elon University students&lt;br /&gt;
* 2. Spring, 2013 – Classroom activity study with 22 intermediate Elon University students&lt;br /&gt;
* 3. Spring, 2013 – Focus group study with 5 JCSU early students&lt;br /&gt;
* 4. Fall, 2013 – Interactive walk through study with 4 JCSU early students&lt;br /&gt;
* 5. Fall, 2013 – Seven day assignment study with 57 Elon University students&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of October 13, 2014 the priorities are:&lt;br /&gt;
* Developing more controls for faculty members to modify educational content&lt;br /&gt;
* Develop a means to control when students are first exposed to warnings. Ideas include:&lt;br /&gt;
1. The tool monitors code and only provides warnings after the student has successfully&lt;br /&gt;
written a particular code pattern x amount of times.&lt;br /&gt;
2. Faculty are provided with a means to unlock warnings based on student readiness.&lt;br /&gt;
3. Students are asked if they are ready for a particular interaction.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=187077</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=187077"/>
				<updated>2014-12-16T09:42:43Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* ESIDE */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.sis.uncc.edu:8080/richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
6. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE (Educational Security in the IDE), is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Milestone/timeline ==&lt;br /&gt;
Advanced Student Studies – paper accepted to SIGCSE 2015&lt;br /&gt;
* 1. Fall, 2012 – Ten day assignment study at UNCC with the Network Based Application&lt;br /&gt;
Development course.&lt;br /&gt;
* 2. Spring, 2013 – Semester long deployment study at UNCC with the Network Based Application&lt;br /&gt;
Development course.&lt;br /&gt;
Early / Intermediate Student Studies – TOCE Journal targeted for submission&lt;br /&gt;
* 1. Fall, 2012 – Classroom activity study with 61 early Elon University students&lt;br /&gt;
* 2. Spring, 2013 – Classroom activity study with 22 intermediate Elon University students&lt;br /&gt;
* 3. Spring, 2013 – Focus group study with 5 JCSU early students&lt;br /&gt;
* 4. Fall, 2013 – Interactive walk through study with 4 JCSU early students&lt;br /&gt;
* 5. Fall, 2013 – Seven day assignment study with 57 Elon University students&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of October 13, 2014 the priorities are:&lt;br /&gt;
* Developing more controls for faculty members to modify educational content&lt;br /&gt;
* Develop a means to control when students are first exposed to warnings. Ideas include:&lt;br /&gt;
1. The tool monitors code and only provides warnings after the student has successfully&lt;br /&gt;
written a particular code pattern x amount of times.&lt;br /&gt;
2. Faculty are provided with a means to unlock warnings based on student readiness.&lt;br /&gt;
3. Students are asked if they are ready for a particular interaction.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=187076</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=187076"/>
				<updated>2014-12-16T09:42:06Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* ESIDE */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.sis.uncc.edu:8080/richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
6. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
The education branch of ASIDE, named ESIDE, is led by [http://hci.uncc.edu/tomcat/Michael_Whitney/ Michael Whitney] and [http://hci.uncc.edu/~richter Heather Richter Lipford]. Other major contributors include [[User: Bill Chu|Bill Chu]] and [[http://www.linkedin.com/in/junzhu1 Jun Zhu]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Milestone/timeline ==&lt;br /&gt;
Advanced Student Studies – paper accepted to SIGCSE 2015&lt;br /&gt;
* 1. Fall, 2012 – Ten day assignment study at UNCC with the Network Based Application&lt;br /&gt;
Development course.&lt;br /&gt;
* 2. Spring, 2013 – Semester long deployment study at UNCC with the Network Based Application&lt;br /&gt;
Development course.&lt;br /&gt;
Early / Intermediate Student Studies – TOCE Journal targeted for submission&lt;br /&gt;
* 1. Fall, 2012 – Classroom activity study with 61 early Elon University students&lt;br /&gt;
* 2. Spring, 2013 – Classroom activity study with 22 intermediate Elon University students&lt;br /&gt;
* 3. Spring, 2013 – Focus group study with 5 JCSU early students&lt;br /&gt;
* 4. Fall, 2013 – Interactive walk through study with 4 JCSU early students&lt;br /&gt;
* 5. Fall, 2013 – Seven day assignment study with 57 Elon University students&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of October 13, 2014 the priorities are:&lt;br /&gt;
* Developing more controls for faculty members to modify educational content&lt;br /&gt;
* Develop a means to control when students are first exposed to warnings. Ideas include:&lt;br /&gt;
1. The tool monitors code and only provides warnings after the student has successfully&lt;br /&gt;
written a particular code pattern x amount of times.&lt;br /&gt;
2. Faculty are provided with a means to unlock warnings based on student readiness.&lt;br /&gt;
3. Students are asked if they are ready for a particular interaction.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=187075</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=187075"/>
				<updated>2014-12-16T09:35:19Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Description */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.sis.uncc.edu:8080/richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
6. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction. When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand. For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Milestone/timeline ==&lt;br /&gt;
Advanced Student Studies – paper accepted to SIGCSE 2015&lt;br /&gt;
* 1. Fall, 2012 – Ten day assignment study at UNCC with the Network Based Application&lt;br /&gt;
Development course.&lt;br /&gt;
* 2. Spring, 2013 – Semester long deployment study at UNCC with the Network Based Application&lt;br /&gt;
Development course.&lt;br /&gt;
Early / Intermediate Student Studies – TOCE Journal targeted for submission&lt;br /&gt;
* 1. Fall, 2012 – Classroom activity study with 61 early Elon University students&lt;br /&gt;
* 2. Spring, 2013 – Classroom activity study with 22 intermediate Elon University students&lt;br /&gt;
* 3. Spring, 2013 – Focus group study with 5 JCSU early students&lt;br /&gt;
* 4. Fall, 2013 – Interactive walk through study with 4 JCSU early students&lt;br /&gt;
* 5. Fall, 2013 – Seven day assignment study with 57 Elon University students&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of October 13, 2014 the priorities are:&lt;br /&gt;
* Developing more controls for faculty members to modify educational content&lt;br /&gt;
* Develop a means to control when students are first exposed to warnings. Ideas include:&lt;br /&gt;
1. The tool monitors code and only provides warnings after the student has successfully&lt;br /&gt;
written a particular code pattern x amount of times.&lt;br /&gt;
2. Faculty are provided with a means to unlock warnings based on student readiness.&lt;br /&gt;
3. Students are asked if they are ready for a particular interaction.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=187074</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=187074"/>
				<updated>2014-12-16T09:33:45Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Priorities and get involved */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.sis.uncc.edu:8080/richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
6. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction (Figure 1). When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand (Figure 2). For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Milestone/timeline ==&lt;br /&gt;
Advanced Student Studies – paper accepted to SIGCSE 2015&lt;br /&gt;
* 1. Fall, 2012 – Ten day assignment study at UNCC with the Network Based Application&lt;br /&gt;
Development course.&lt;br /&gt;
* 2. Spring, 2013 – Semester long deployment study at UNCC with the Network Based Application&lt;br /&gt;
Development course.&lt;br /&gt;
Early / Intermediate Student Studies – TOCE Journal targeted for submission&lt;br /&gt;
* 1. Fall, 2012 – Classroom activity study with 61 early Elon University students&lt;br /&gt;
* 2. Spring, 2013 – Classroom activity study with 22 intermediate Elon University students&lt;br /&gt;
* 3. Spring, 2013 – Focus group study with 5 JCSU early students&lt;br /&gt;
* 4. Fall, 2013 – Interactive walk through study with 4 JCSU early students&lt;br /&gt;
* 5. Fall, 2013 – Seven day assignment study with 57 Elon University students&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of October 13, 2014 the priorities are:&lt;br /&gt;
* Developing more controls for faculty members to modify educational content&lt;br /&gt;
* Develop a means to control when students are first exposed to warnings. Ideas include:&lt;br /&gt;
1. The tool monitors code and only provides warnings after the student has successfully&lt;br /&gt;
written a particular code pattern x amount of times.&lt;br /&gt;
2. Faculty are provided with a means to unlock warnings based on student readiness.&lt;br /&gt;
3. Students are asked if they are ready for a particular interaction.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=187073</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=187073"/>
				<updated>2014-12-16T09:33:16Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Priorities and get involved */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.sis.uncc.edu:8080/richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
6. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction (Figure 1). When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand (Figure 2). For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Milestone/timeline ==&lt;br /&gt;
Advanced Student Studies – paper accepted to SIGCSE 2015&lt;br /&gt;
* 1. Fall, 2012 – Ten day assignment study at UNCC with the Network Based Application&lt;br /&gt;
Development course.&lt;br /&gt;
* 2. Spring, 2013 – Semester long deployment study at UNCC with the Network Based Application&lt;br /&gt;
Development course.&lt;br /&gt;
Early / Intermediate Student Studies – TOCE Journal targeted for submission&lt;br /&gt;
* 1. Fall, 2012 – Classroom activity study with 61 early Elon University students&lt;br /&gt;
* 2. Spring, 2013 – Classroom activity study with 22 intermediate Elon University students&lt;br /&gt;
* 3. Spring, 2013 – Focus group study with 5 JCSU early students&lt;br /&gt;
* 4. Fall, 2013 – Interactive walk through study with 4 JCSU early students&lt;br /&gt;
* 5. Fall, 2013 – Seven day assignment study with 57 Elon University students&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of October 13, 2014 the priorities are:&lt;br /&gt;
* Developing more controls for faculty members to modify educational content&lt;br /&gt;
* Develop a means to control when students are first exposed to warnings. Ideas include:&lt;br /&gt;
*  1. The tool monitors code and only provides warnings after the student has successfully&lt;br /&gt;
written a particular code pattern x amount of times.&lt;br /&gt;
*  2. Faculty are provided with a means to unlock warnings based on student readiness.&lt;br /&gt;
*  3. Students are asked if they are ready for a particular interaction.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=187072</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=187072"/>
				<updated>2014-12-16T09:32:26Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Priorities and get involved */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.sis.uncc.edu:8080/richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
6. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction (Figure 1). When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand (Figure 2). For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Milestone/timeline ==&lt;br /&gt;
Advanced Student Studies – paper accepted to SIGCSE 2015&lt;br /&gt;
* 1. Fall, 2012 – Ten day assignment study at UNCC with the Network Based Application&lt;br /&gt;
Development course.&lt;br /&gt;
* 2. Spring, 2013 – Semester long deployment study at UNCC with the Network Based Application&lt;br /&gt;
Development course.&lt;br /&gt;
Early / Intermediate Student Studies – TOCE Journal targeted for submission&lt;br /&gt;
* 1. Fall, 2012 – Classroom activity study with 61 early Elon University students&lt;br /&gt;
* 2. Spring, 2013 – Classroom activity study with 22 intermediate Elon University students&lt;br /&gt;
* 3. Spring, 2013 – Focus group study with 5 JCSU early students&lt;br /&gt;
* 4. Fall, 2013 – Interactive walk through study with 4 JCSU early students&lt;br /&gt;
* 5. Fall, 2013 – Seven day assignment study with 57 Elon University students&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of October 13, 2014 the priorities are:&lt;br /&gt;
* 1. Developing more controls for faculty members to modify educational content&lt;br /&gt;
* 2. Develop a means to control when students are first exposed to warnings. Ideas include:&lt;br /&gt;
**  1. The tool monitors code and only provides warnings after the student has successfully&lt;br /&gt;
written a particular code pattern x amount of times.&lt;br /&gt;
**  2. Faculty are provided with a means to unlock warnings based on student readiness.&lt;br /&gt;
**  3. Students are asked if they are ready for a particular interaction.&lt;br /&gt;
&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help: Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=187071</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=187071"/>
				<updated>2014-12-16T09:31:29Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Milestone/timeline */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.sis.uncc.edu:8080/richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
6. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction (Figure 1). When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand (Figure 2). For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Milestone/timeline ==&lt;br /&gt;
Advanced Student Studies – paper accepted to SIGCSE 2015&lt;br /&gt;
* 1. Fall, 2012 – Ten day assignment study at UNCC with the Network Based Application&lt;br /&gt;
Development course.&lt;br /&gt;
* 2. Spring, 2013 – Semester long deployment study at UNCC with the Network Based Application&lt;br /&gt;
Development course.&lt;br /&gt;
Early / Intermediate Student Studies – TOCE Journal targeted for submission&lt;br /&gt;
* 1. Fall, 2012 – Classroom activity study with 61 early Elon University students&lt;br /&gt;
* 2. Spring, 2013 – Classroom activity study with 22 intermediate Elon University students&lt;br /&gt;
* 3. Spring, 2013 – Focus group study with 5 JCSU early students&lt;br /&gt;
* 4. Fall, 2013 – Interactive walk through study with 4 JCSU early students&lt;br /&gt;
* 5. Fall, 2013 – Seven day assignment study with 57 Elon University students&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of October 13, 2014 the priorities are:&lt;br /&gt;
1. Developing more controls for faculty members to modify educational content&lt;br /&gt;
2. Develop a means to control when students are first exposed to warnings. Ideas include:&lt;br /&gt;
1. The tool monitors code and only provides warnings after the student has successfully&lt;br /&gt;
written a particular code pattern x amount of times.&lt;br /&gt;
2. Faculty are provided with a means to unlock warnings based on student readiness.&lt;br /&gt;
3. Students are asked if they are ready for a particular interaction.&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help:&lt;br /&gt;
Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their&lt;br /&gt;
classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=187069</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=187069"/>
				<updated>2014-12-16T04:44:57Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.sis.uncc.edu:8080/richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
6. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;br /&gt;
&lt;br /&gt;
= Education branch of ASIDE: ESIDE =&lt;br /&gt;
== ESIDE ==&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
ESIDE (Educational Security in the IDE) enhances the secure coding instructional process by turning&lt;br /&gt;
the student's IDE into a real-time secure programming instructional resource. This approach capitalizes&lt;br /&gt;
on the out of class, in the IDE time by providing layered educational opportunities whenever the&lt;br /&gt;
student writes specific code patterns (i.e., vulnerable code) in a fashion similar to Microsoft's Grammar&lt;br /&gt;
Checker. In this manner, ESIDE provides students with the opportunity to learn secure coding&lt;br /&gt;
principles and practices concurrently with the lessons they are learning in their respective courses.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
Deployed as an Eclipse IDE Java plugin, ESIDE continuously searches for predetermined code patterns&lt;br /&gt;
(e.g., request.getParameter();). Whenever a student writes targeted code, they are provided with an&lt;br /&gt;
interactive system that provides a layered educational opportunity. Because students are contextually&lt;br /&gt;
“in the moment” when the support becomes available, they are more receptive to making the&lt;br /&gt;
connection between classroom principles and coding practices. A secondary effect is the exponential&lt;br /&gt;
increase in instructional exposure which has been proven to be successful in other instructional areas.&lt;br /&gt;
The overall goal of ESIDE is to serve as an effective means to educate students at every level on the&lt;br /&gt;
principles and practices of secure coding throughout their educational experience. To this end, we have&lt;br /&gt;
developed ESIDE's interactive process as follows: The moment target code is written, ESIDE initiates&lt;br /&gt;
a layered educational intervention based on the targeted code. The first layer is a warning icon that&lt;br /&gt;
is placed in the left margin of the code editor. Hovering the icon reveals a short message that&lt;br /&gt;
encourages further interaction (Figure 1). When the student clicks the icon, ESIDE generates a&lt;br /&gt;
content specific list of educational options. Each of these options are accompanied with a short&lt;br /&gt;
explanation of the issue at hand (Figure 2). For each generated list, there also exists the option to&lt;br /&gt;
access an explanation page that provides a more comprehensive explanation of what was&lt;br /&gt;
discovered, why it is important, and how to integrate the provided principles into coding practices.&lt;br /&gt;
&lt;br /&gt;
A video of an interaction designed for early students can be found at http://www.youtube.com/watch?v=k-FIcrr1ff8&lt;br /&gt;
&lt;br /&gt;
== What ESIDE provides? ==&lt;br /&gt;
• Real-time IDE support for secure code education (Java).&lt;br /&gt;
• Identification of targeted Java code patterns.&lt;br /&gt;
• Interactive instructional opportunities for students in the IDE.&lt;br /&gt;
&lt;br /&gt;
== Milestone/timeline ==&lt;br /&gt;
Advanced Student Studies – paper submitted to SIGCSE 2015&lt;br /&gt;
1. Fall, 2012 – Ten day assignment study at UNCC with the Network Based Application&lt;br /&gt;
Development course.&lt;br /&gt;
2. Spring, 2013 – Semester long deployment study at UNCC with the Network Based Application&lt;br /&gt;
Development course.&lt;br /&gt;
Early / Intermediate Student Studies – TOCE Journal targeted for submission&lt;br /&gt;
1. Fall, 2012 – Classroom activity study with 61 early Elon University students&lt;br /&gt;
2. Spring, 2013 – Classroom activity study with 22 intermediate Elon University students&lt;br /&gt;
3. Spring, 2013 – Focus group study with 5 JCSU early students&lt;br /&gt;
4. Fall, 2013 – Interactive walk through study with 4 JCSU early students&lt;br /&gt;
5. Fall, 2013 – Seven day assignment study with 57 Elon University students&lt;br /&gt;
&lt;br /&gt;
== Priorities and get involved ==&lt;br /&gt;
As of October 13, 2014 the priorities are:&lt;br /&gt;
1. Developing more controls for faculty members to modify educational content&lt;br /&gt;
2. Develop a means to control when students are first exposed to warnings. Ideas include:&lt;br /&gt;
1. The tool monitors code and only provides warnings after the student has successfully&lt;br /&gt;
written a particular code pattern x amount of times.&lt;br /&gt;
2. Faculty are provided with a means to unlock warnings based on student readiness.&lt;br /&gt;
3. Students are asked if they are ready for a particular interaction.&lt;br /&gt;
Involvement in the development and promotion of ESIDE is actively encouraged! You do not have to&lt;br /&gt;
be a security expert in order to contribute. Some of the ways you can help:&lt;br /&gt;
Individuals who are interested in content contribution, usability evaluation or deploying ESIDE in their&lt;br /&gt;
classroom would be wonderful!!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=184670</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=184670"/>
				<updated>2014-11-04T15:24:34Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* OWASP ASIDE */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.sis.uncc.edu:8080/richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
6. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=181795</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=181795"/>
				<updated>2014-09-05T14:52:57Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Acknowledgements */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.sis.uncc.edu:8080/richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [http://hci.uncc.edu/tomcat/Michael_Whitney Michael Whitney], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
6. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= RoadMap and Get Involvement =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=181767</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=181767"/>
				<updated>2014-09-05T01:52:21Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Runnable plugins and installation guidelines = */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.sis.uncc.edu:8080/richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [http://hci.uncc.edu/tomcat/Michael_Whitney Michael Whitney], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
6. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ===&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Acknowledgements =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=181766</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=181766"/>
				<updated>2014-09-05T01:52:12Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Quick Download */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.sis.uncc.edu:8080/richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [http://hci.uncc.edu/tomcat/Michael_Whitney Michael Whitney], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
6. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
=== Runnable plugins and installation guidelines ====&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Acknowledgements =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=181765</id>
		<title>Projects/OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_ASIDE_Project&amp;diff=181765"/>
				<updated>2014-09-05T01:51:19Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Quick Download */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Main=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:100%;height:160px;border:0,margin:0;overflow: hidden;&amp;quot;&amp;gt;[[File:OWASP_Project_Header.jpg|link=]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;padding: 0;margin:0;margin-top:10px;text-align:left;&amp;quot; |-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
==OWASP ASIDE==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE is led by [[http://www.linkedin.com/in/junzhu1 Jun Zhu]] and [[User: Bill Chu|Bill Chu]]. Other major contributors include [[http://www.linkedin.com/pub/jing-xie/45/890/a1a Jing Xie]], [http://hci.sis.uncc.edu:8080/richter Heather Richter Lipford], [http://www.tylerthomaswebsite.net Tyler Thomas], [http://hci.uncc.edu/tomcat/Michael_Whitney Michael Whitney], [[User:John Melton|John Melton]] &amp;amp; [[User: Will Stranathan|Will Stranathan]].&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation] here.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
We have presented our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation] here.&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
'''ASIDE''' is an abbreviation for '''Application Security plugin for Integrated Development Environment'''. It is an Eclipse Plugin which is a software tool primarily designed to help developers write more secure code by detecting and identifying potentially vulnerable code and providing informative fixes during the construction of programs in IDEs.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
ASIDE currently has three prototype implementations: [http://www.youtube.com/watch?v=VjzlpccMjTM ASIDE CodeRefactoring for Education], ASIDE CodeAnnotate which consists of two implementations, [http://www.youtube.com/watch?v=hyAO8WztiMc ASIDE JavaCodeAnnotate] and ASIDE PHPCodeAnnotate. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeRefactoring for Education is an Eclipse plugin that aims to detect root cause of vulnerabilities that are caused by untrusted inputs get in to the application and be consumed without validation, and provide interactive code refactoring support for students and professional developers to learn secure programming practices and write more secure code. &lt;br /&gt;
&lt;br /&gt;
ASIDE CodeAnnotate is another Eclipse plugin which deals with a different class of vulnerabilities that are more application logic specific. Specifically, it is aimed at addressing CSRF and broken access control issues while the developers are writing their code. &lt;br /&gt;
&lt;br /&gt;
An older version of [http://webpages.uncc.edu/~jxie2/aside_old.swf ASIDE DEMO] shows you earlier design and implementation of CodeRefactoring, if you are interested in knowing. You will need Adobe Flash to display it.&lt;br /&gt;
&lt;br /&gt;
==Research Activities==&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
6. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
OWASP ASIDE is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== What is ASIDE? ==&lt;br /&gt;
&lt;br /&gt;
OWASP ASIDE provides:&lt;br /&gt;
&lt;br /&gt;
* Interactive Static Analysis support to developers in Eclipse IDE (for Java and PHP) to detect and mitigate software vulnerabilities in the code&lt;br /&gt;
* Interactive Secure Programming Education opportunities in IDE for students as well as professional developers to help them write more secure code as well as learn best secure programming practices&lt;br /&gt;
&lt;br /&gt;
== Presentation ==&lt;br /&gt;
&lt;br /&gt;
1. Our talk [http://vimeo.com/54121249 Using Interactive Static Analysis for Early Detection of Software Vulnerabilities] at [http://www.appsecusa.org/ AppSec USA 2012]. You can view and download our [http://webpages.uncc.edu/~jzhu16/InteractiveStaticAnalysis.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
2. Our talk [http://vimeo.com/32657812 Secure Programming Support in IDE] at [http://d5srjexdxko0l.cloudfront.net/ AppSec USA 2011] in Minneapolis. You can view and download our [http://webpages.uncc.edu/~jxie2/ASIDE.pdf presentation].&lt;br /&gt;
&lt;br /&gt;
== Project Leaders ==&lt;br /&gt;
[[http://www.linkedin.com/in/junzhu1 Jun Zhu]],&lt;br /&gt;
[[User: Bill Chu|Bill Chu]]&lt;br /&gt;
&lt;br /&gt;
== Related Projects ==&lt;br /&gt;
&lt;br /&gt;
* [[OWASP_CISO_Survey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Openhub ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.openhub.net/p/owaspaside OWASP ASIDE Ohloh]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;  style=&amp;quot;padding-left:25px;width:200px;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Quick Download ==&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle];&lt;br /&gt;
&lt;br /&gt;
=== Source Code ===&lt;br /&gt;
ASIDE Education with CodeRefactoring: https://github.com/JunZhuSecurity/ASIDE-Education&lt;br /&gt;
ASIDE PHPCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-PHPCodeAnnotate&lt;br /&gt;
ASIDE JavaCodeAnnotate: https://github.com/JunZhuSecurity/ASIDE-JavaCodeAnnotate&lt;br /&gt;
&lt;br /&gt;
== Email List ==&lt;br /&gt;
&lt;br /&gt;
Project Email List: https://lists.owasp.org/mailman/listinfo/owasp-aside-project&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
* [18-19 September 2014] Bill will be hosting a session about ASIDE project at AppSec USA 2014 in Denver!&lt;br /&gt;
* [30 April 2014] ASIDE PHPCodeAnnotate plugin for Eclipse PHP IDE released!&lt;br /&gt;
* [07 December 2013] ASIDE paper titled &amp;quot;Supporting Secure Programming in Web Applications through Interactive Static Analysis&amp;quot; accepted!&lt;br /&gt;
* [10 May 2013] ASIDE Education with CodeRefactoring plugin for Eclipse Java IDE released!&lt;br /&gt;
* [22 October 2012] ASIDE paper titled &amp;quot;Interactive Support for Secure Programming Education&amp;quot; accepted!&lt;br /&gt;
* [September 2012] Bill and Jun delivered ASIDE talk titled &amp;quot;Using Interactive Static Analysis for Early Detection of Software Vulnerabilities&amp;quot; at OWASP AppSec USA in Austin!&lt;br /&gt;
* [8-10 August 2012] Jun gave a poster about ASIDE at USENIX Security 12!&lt;br /&gt;
* [10 May 2012] ASIDE JavaCodeAnnotate plugin for Eclipse Java IDE released!&lt;br /&gt;
&lt;br /&gt;
== In Print ==&lt;br /&gt;
N/A&lt;br /&gt;
&lt;br /&gt;
==Classifications==&lt;br /&gt;
&lt;br /&gt;
   {| width=&amp;quot;200&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot; rowspan=&amp;quot;2&amp;quot;| [[File:New projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]]&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-builders-small.png|link=]]  &lt;br /&gt;
   |-&lt;br /&gt;
   | align=&amp;quot;center&amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;| [[File:Owasp-defenders-small.png|link=]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]]&lt;br /&gt;
   |-&lt;br /&gt;
   | colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot;  | [[File:Project_Type_Files_CODE.jpg|link=]]&lt;br /&gt;
   |}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Acknowledgements =&lt;br /&gt;
ASIDE project has been continuously under active research, development, and evaluation.&lt;br /&gt;
Involvement in the development and promotion of ASIDE is actively encouraged!&lt;br /&gt;
You do not have to be a security expert in order to contribute.&lt;br /&gt;
Some of the ways you can help:&lt;br /&gt;
* Try ASIDE and email your feedback, comments to the project leaders.&lt;br /&gt;
* Do pilot study with ASIDE in your team, and the project leaders would love to collaborate!&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=OWASP_ASIDE_Project&amp;diff=181764</id>
		<title>OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=OWASP_ASIDE_Project&amp;diff=181764"/>
				<updated>2014-09-05T01:44:13Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Research Activities */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|&lt;br /&gt;
|-&lt;br /&gt;
! width=&amp;quot;700&amp;quot; align=&amp;quot;center&amp;quot; | &amp;lt;br&amp;gt; &lt;br /&gt;
! width=&amp;quot;500&amp;quot; align=&amp;quot;center&amp;quot; | &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;right&amp;quot; | [[Image:OWASP Inactive Banner.jpg|800px| link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Inactive_Projects]] &lt;br /&gt;
| align=&amp;quot;right&amp;quot; | &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Project About ====&lt;br /&gt;
{{:Projects/OWASP ASIDE Project | Project About}}&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=OWASP_ASIDE_Project&amp;diff=181763</id>
		<title>OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=OWASP_ASIDE_Project&amp;diff=181763"/>
				<updated>2014-09-05T01:44:06Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Download */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|&lt;br /&gt;
|-&lt;br /&gt;
! width=&amp;quot;700&amp;quot; align=&amp;quot;center&amp;quot; | &amp;lt;br&amp;gt; &lt;br /&gt;
! width=&amp;quot;500&amp;quot; align=&amp;quot;center&amp;quot; | &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;right&amp;quot; | [[Image:OWASP Inactive Banner.jpg|800px| link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Inactive_Projects]] &lt;br /&gt;
| align=&amp;quot;right&amp;quot; | &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Project About ====&lt;br /&gt;
{{:Projects/OWASP ASIDE Project | Project About}}&lt;br /&gt;
&lt;br /&gt;
==== Research Activities ====&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
6. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__NOTOC__ &amp;lt;headertabs /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:OWASP_Project|ASIDE Project]] [[Category:OWASP_Tool|OWASP ASIDE]] [[Category:OWASP_Alpha_Quality_Tool|OWASP Alpha Quality Tool]] &amp;lt;!---[[Category:OWASP_Download]]---&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=OWASP_ASIDE_Project&amp;diff=181762</id>
		<title>OWASP ASIDE Project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=OWASP_ASIDE_Project&amp;diff=181762"/>
				<updated>2014-09-05T01:43:58Z</updated>
		
		<summary type="html">&lt;p&gt;Jun Zhu: /* Take a Look */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|&lt;br /&gt;
|-&lt;br /&gt;
! width=&amp;quot;700&amp;quot; align=&amp;quot;center&amp;quot; | &amp;lt;br&amp;gt; &lt;br /&gt;
! width=&amp;quot;500&amp;quot; align=&amp;quot;center&amp;quot; | &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;right&amp;quot; | [[Image:OWASP Inactive Banner.jpg|800px| link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Inactive_Projects]] &lt;br /&gt;
| align=&amp;quot;right&amp;quot; | &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Project About ====&lt;br /&gt;
{{:Projects/OWASP ASIDE Project | Project About}}&lt;br /&gt;
&lt;br /&gt;
==== Download ====&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeRefactoring plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside_1.0.0.201302251700.jar here]. You also need to download the complementary [http://webpages.uncc.edu/~jzhu16/edu.uncc.sis.aside.logging_1.0.0.201302251700.jar logging] facility to make ASIDE work properly. ASIDE CodeRefactoring is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the two jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse.&lt;br /&gt;
&lt;br /&gt;
The recent publicly available ASIDE CodeAnnotate plugin can be downloaded from [http://webpages.uncc.edu/~jzhu16/CodeAnnotate_1.0.0.201210240250.jar here]. ASIDE CodeAnnotate is built upon [http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 Eclipse IDE for Java EE Developers] Version 3.5+. To make it work, please place the jar files under the plugins folder of your Eclipse installation directory and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here].&lt;br /&gt;
&lt;br /&gt;
''New!'' We recently released a version of ASIDE CodeAnnotate plugin for Eclipse PHP Development Environment. It is built upon [http://projects.eclipse.org/projects/tools.pdt Eclipse PDT framework], you can download the plugin [http://webpages.uncc.edu/~jzhu16/PHPCodeAnnotate_1.0.0.NoSelectRules.jar here]. As it is still in incubator phase at this point, we recommend you to first install the configured Eclipse PHP package we provide on Linux, which can be downloaded [https://drive.google.com/file/d/0B4IYTQA8N1S7bS16MUY5MFN4V28/edit?usp=sharing here], and then place the jar file under the plugins folder of the Eclipse installation directory, and then restart your Eclipse. Demo of how to run CodeAnnotate can be viewed from [http://www.youtube.com/watch?v=hyAO8WztiMc here]. A good PHP open source project you can try the plugin against is [http://download.moodle.org Moodle]; &lt;br /&gt;
&lt;br /&gt;
  &lt;br /&gt;
==== Research Activities ====&lt;br /&gt;
1. [[User:Jun Zhu|Jun Zhu]], [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://www.sciencedirect.com/science/article/pii/S2090123213001422 Supporting Secure Programming in Web Applications through Interactive Static Analysis], In Journal of Advanced Research, Elsevier, December, 2013.&lt;br /&gt;
&lt;br /&gt;
2. [[User:Jun Zhu|Jun Zhu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jzhu16/SIGCSE12-Zhu.pdf Interactive Support for Secure Programming Education], In Proceedings of ACM Technical&lt;br /&gt;
Symposium on Computer Science Education (SIGCSE), March 6-9, 2013, Denver, Colorado, USA&lt;br /&gt;
&lt;br /&gt;
3. [[User:Jing Xie|Jing Xie]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-CHI2012.pdf Evaluating Interactive Support for Secure Programming], In Proceedings of ACM Conference on Human Factors in Computing Systems (CHI), May 2012, Austin, Texas, USA&lt;br /&gt;
&lt;br /&gt;
4. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:John Melton|John T. Melton]], [http://www.acsac.org/2011/openconf/modules/request.php?module=oc_program&amp;amp;action=view.php&amp;amp;a=&amp;amp;id=62&amp;amp;type=2 ASIDE:IDE Support for Web Application Security], In Proceedings of 27th Annual Computer Security Applications Conference (ACSAC), December 5–9, 2011, Orlando, FL, USA&lt;br /&gt;
&lt;br /&gt;
5. [[User:Jing Xie|Jing Xie]],  [http://hci.uncc.edu/~richter/ Heather Richter Lipford], and [[User:Bill Chu|Bill Chu]], [http://webpages.uncc.edu/~jxie2/XIE-VLHCC2011.pdf Why do programmers make security errors?], In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), September 18–22, 2011, Pittsburgh, PA, USA&lt;br /&gt;
&lt;br /&gt;
6. [[User:Jing Xie|Jing Xie]], [[User:Bill Chu|Bill Chu]], and [http://hci.uncc.edu/~richter/ Heather Richter Lipford] [http://www.arc.uncc.edu/pubs/essos2011.pdf Interactive Support for Secure Software Development], In Proceedings of Engineering Secure Software and Systems Third International Symposium (ESSoS), February 2011, Madrid, Spain&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__NOTOC__ &amp;lt;headertabs /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:OWASP_Project|ASIDE Project]] [[Category:OWASP_Tool|OWASP ASIDE]] [[Category:OWASP_Alpha_Quality_Tool|OWASP Alpha Quality Tool]] &amp;lt;!---[[Category:OWASP_Download]]---&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jun Zhu</name></author>	</entry>

	</feed>