From 91029ed3a6114640f6de31b3cf003fd323951a33 Mon Sep 17 00:00:00 2001 From: Jason White Date: Thu, 4 Sep 2014 20:02:23 -0400 Subject: [PATCH 01/11] reworked cookies/params and modified button layout some --- src/main/webapp/WEB-INF/pages/main_new.jsp | 82 ++++++++++++++-------- src/main/webapp/css/main.css | 20 ++++-- src/main/webapp/js/goatControllers.js | 11 +-- 3 files changed, 71 insertions(+), 42 deletions(-) diff --git a/src/main/webapp/WEB-INF/pages/main_new.jsp b/src/main/webapp/WEB-INF/pages/main_new.jsp index 88b771305..d9529030b 100644 --- a/src/main/webapp/WEB-INF/pages/main_new.jsp +++ b/src/main/webapp/WEB-INF/pages/main_new.jsp @@ -118,36 +118,21 @@
- - + + +
-
- - - - - -
- -
-
- cookies: -
    -
  • {{key}} :: {{ value}} -
-
-
- params:
-
    -
  • - {{param.name}} = {{param.value}} -
  • -
-
-
+ + + + + + + +
This should default to the "How to Work with Webgoat" lesson @@ -161,13 +146,48 @@
- - - + + +

-

Hints

-

Nam placerat magna in massa euismod fringilla. Pellentesque in cursus risus, eu hendrerit ligula. Quisque ultrices eget tortor ut eleifend. Praesent auctor libero nec quam fringilla faucibus. Curabitur cursus risus eu faucibus rutrum. Morbi dapibus nulla risus, et euismod eros posuere volutpat. Quisque ut diam diam. Quisque sed enim tortor. Suspendisse commodo magna nec felis ultricies laoreet. Donec sit amet vehicula eros. Phasellus at dapibus enim. Sed massa quam, aliquet eu mattis at, porttitor a nisi.

+
+

Hints

+

{{scope.hints}}

+
+
+
+

Cookies

+ + + + + + + + + + + + +
FieldValue
{{key}}{{value}}
+
+
+

Params

+ + + + + + + + + + +
ParamValue
{{param.name}}{{param.value}}
+ +
+
diff --git a/src/main/webapp/css/main.css b/src/main/webapp/css/main.css index 8f92c46c6..986950ba5 100644 --- a/src/main/webapp/css/main.css +++ b/src/main/webapp/css/main.css @@ -781,11 +781,17 @@ fieldset[disabled] .btn-warning.active { .lessonHelp, .lessonHelpBtn { display: none; } -/* -.paramsView { - float:right; - width 50%; - margin-right:10px; - border-left:2px solid #333; + +#hintsView, #cookiesAndParamsView { + display:none; } -*/ \ No newline at end of file + +.table-nonfluid { + width:auto; +} + +.cookieTable tr td, .paramsTable tr td { + padding: 3px; + max-width: 200px; + font-size: x-small; +} \ No newline at end of file diff --git a/src/main/webapp/js/goatControllers.js b/src/main/webapp/js/goatControllers.js index ab84128ee..a68ebd0b0 100644 --- a/src/main/webapp/js/goatControllers.js +++ b/src/main/webapp/js/goatControllers.js @@ -59,10 +59,13 @@ goat.controller('lessonHelpController', function($scope) { $scope.cookies=[]; $scope.params=[]; $scope.viewCookiesAndParams = function() { - $scope.cookies=goat.lesson.lessonInfo.cookies; - console.log($scope.cookies); - $scope.params=goat.lesson.lessonInfo.params; - + $('#hintsView').hide(); + if (goat.lesson.lessonInfo.cookies && goat.lesson.lessonInfo.cookies.length > 0) { + $scope.cookies=goat.lesson.lessonInfo.cookies; + console.log($scope.cookies); + $scope.params=goat.lesson.lessonInfo.params; + } + $('#cookiesAndParamsView').show(); //@TODO: issue callback to track view }; //$scope.watch() From 8ae120404fe2c6c1fff10229fa54d82ae41cdd10 Mon Sep 17 00:00:00 2001 From: nbaars Date: Sat, 6 Sep 2014 22:23:22 +0200 Subject: [PATCH 02/11] Changed the layout of the lesson. The congratulation sentence is now displayed in "red". See WEB-46 --- .gitignore | 14 +++++++++++++- .../java/org/owasp/webgoat/lessons/HttpBasics.java | 3 +++ src/main/webapp/css/main.css | 5 +++++ .../webapp/lesson_plans/English/HttpBasics.html | 6 +++--- 4 files changed, 24 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index d944cc49c..a03a5fc01 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,14 @@ /nb-configuration.xml -/nbactions.xml \ No newline at end of file +/nbactions.xml +/target/ +/.classpath +/.project +/.settings/.jsdtscope +/.settings/org.eclipse.jdt.core.prefs +/.settings/org.eclipse.m2e.core.prefs +/.settings/org.eclipse.wst.common.component +/.settings/org.eclipse.wst.common.project.facet.core.prefs.xml +/.settings/org.eclipse.wst.common.project.facet.core.xml +/.settings/org.eclipse.wst.jsdt.ui.superType.container +/.settings/org.eclipse.wst.jsdt.ui.superType.name +/.settings/org.eclipse.wst.validation.prefs diff --git a/src/main/java/org/owasp/webgoat/lessons/HttpBasics.java b/src/main/java/org/owasp/webgoat/lessons/HttpBasics.java index 401d592de..2b4e1b430 100644 --- a/src/main/java/org/owasp/webgoat/lessons/HttpBasics.java +++ b/src/main/java/org/owasp/webgoat/lessons/HttpBasics.java @@ -2,9 +2,11 @@ package org.owasp.webgoat.lessons; import java.util.ArrayList; import java.util.List; + import org.apache.ecs.Element; import org.apache.ecs.ElementContainer; import org.apache.ecs.StringElement; +import org.apache.ecs.html.BR; import org.apache.ecs.html.Input; import org.owasp.webgoat.session.ECSFactory; import org.owasp.webgoat.session.WebSession; @@ -58,6 +60,7 @@ public class HttpBasics extends LessonAdapter { StringBuffer person = null; try { + ec.addElement(new BR()); ec.addElement(new StringElement(WebGoatI18N.get("EnterYourName") + ": ")); person = new StringBuffer(s.getParser().getStringParameter(PERSON, "")); diff --git a/src/main/webapp/css/main.css b/src/main/webapp/css/main.css index 986950ba5..714cf0325 100644 --- a/src/main/webapp/css/main.css +++ b/src/main/webapp/css/main.css @@ -794,4 +794,9 @@ fieldset[disabled] .btn-warning.active { padding: 3px; max-width: 200px; font-size: x-small; +} + +.info { + color:#e84c3d; + font-weight: bold; } \ No newline at end of file diff --git a/src/main/webapp/lesson_plans/English/HttpBasics.html b/src/main/webapp/lesson_plans/English/HttpBasics.html index 011fed218..f3321f295 100644 --- a/src/main/webapp/lesson_plans/English/HttpBasics.html +++ b/src/main/webapp/lesson_plans/English/HttpBasics.html @@ -8,7 +8,7 @@

How HTTP works:

-All HTTP transactions follow the same general format. Each client request and server response has three parts: the request or response line, a header section, and the entity body. The client initiates a transaction as follows:
+All HTTP transactions follow the same general format. Each client request and server response has three parts: the request or response line, a header section and the entity body. The client initiates a transaction as follows:

The client contacts the server and sends a document request
@@ -20,8 +20,8 @@ All HTTP transactions follow the same general format. Each client request and se After sending the request and headers, the client may send additional data. This data is mostly used by CGI programs using the POST method.

General Goal(s):

-Enter your name in the input field below and press "go" to submit. The server will accept the request, reverse the input, and display it back to the user, illustrating the basics of handling an HTTP request. +Enter your name in the input field below and press "Go!" to submit. The server will accept the request, reverse the input and display it back to the user, illustrating the basics of handling an HTTP request.

The user should become familiar with the features of WebGoat by manipulating the above -buttons to view hints, show the HTTP request parameters, the HTTP request cookies, and the Java source code. You may also try using WebScarab for the first time. +buttons to view hints, show the HTTP request parameters, the HTTP request cookies, and the Java source code. You may also try using OWASP Zed Attack Proxy for the first time. \ No newline at end of file From b06a0a2c7c81c1aea22786c53ec787bb8c6ba0a0 Mon Sep 17 00:00:00 2001 From: Jason White Date: Sun, 7 Sep 2014 01:35:42 -0400 Subject: [PATCH 03/11] cookies and params modification. Hints update as well --- src/main/webapp/WEB-INF/pages/main_new.jsp | 75 ++++---- src/main/webapp/css/main.css | 11 +- src/main/webapp/js/goatConstants.js | 4 +- src/main/webapp/js/goatControllers.js | 209 ++++++++++++++------- src/main/webapp/js/goatLesson.js | 4 +- src/main/webapp/js/goatUtil.js | 4 +- 6 files changed, 185 insertions(+), 122 deletions(-) diff --git a/src/main/webapp/WEB-INF/pages/main_new.jsp b/src/main/webapp/WEB-INF/pages/main_new.jsp index d9529030b..9dce8ee1d 100644 --- a/src/main/webapp/WEB-INF/pages/main_new.jsp +++ b/src/main/webapp/WEB-INF/pages/main_new.jsp @@ -60,7 +60,7 @@ -
+
- - - - - - - -
This should default to the "How to Work with Webgoat" lesson @@ -146,15 +140,9 @@
- - - +

Cookies / Parameters


-
-

Hints

-

{{scope.hints}}

-

Cookies

@@ -179,7 +167,7 @@ ParamValue - + {{param.name}} {{param.value}} @@ -194,6 +182,19 @@
+
+
+

Hints

+
+
+ + +
+ {{curHint}} +
+
+
+

Lesson Parameters and Cookies

@@ -218,8 +219,8 @@

Lesson Plan

-
- +
+
@@ -227,8 +228,8 @@

Lesson Solution

-
-
+
+
@@ -236,8 +237,9 @@

Lesson Source Code

-
-
+
+
+
{{source}}
@@ -260,17 +262,10 @@ var DEBUG_FORM_SUBMISSION = false; $(document).ready(function() { - // bind to click events on menu links - /*$('.menu-link').bind('click', function(event) { - event.preventDefault(); - $.get(this.href, {}, function(reply) { - $("#lesson_content").html(reply); - goat.utils.showLessonSource(); - }, "html"); - });*/ - app.init(); - + //can be augmented later to 'resume' for a given user ... currently kluged to start at fixed lesson + var url = 'attack?Screen=32&menu=5'; + angular.element($('#leftside-navigation')).scope().renderLesson(url); }); // make all forms ajax forms var options = { diff --git a/src/main/webapp/css/main.css b/src/main/webapp/css/main.css index 714cf0325..aa8eb698e 100644 --- a/src/main/webapp/css/main.css +++ b/src/main/webapp/css/main.css @@ -250,7 +250,7 @@ img { } .main-content-wrapper #main-content { - background: url('img/webBg.png') no-repeat top left; + /*background: url('img/webBg.png') no-repeat top left;*/ border-top: solid thin #e7e8ec; display: inline-block; padding: 15px 15px 0 15px; @@ -782,10 +782,6 @@ fieldset[disabled] .btn-warning.active { display: none; } -#hintsView, #cookiesAndParamsView { - display:none; -} - .table-nonfluid { width:auto; } @@ -796,6 +792,11 @@ fieldset[disabled] .btn-warning.active { font-size: x-small; } +/* HINTS */ +#hintsViewTop{ + display: none; + background-color: #eee; +} .info { color:#e84c3d; font-weight: bold; diff --git a/src/main/webapp/js/goatConstants.js b/src/main/webapp/js/goatConstants.js index 03f2e78b9..bc1e5ed9a 100644 --- a/src/main/webapp/js/goatConstants.js +++ b/src/main/webapp/js/goatConstants.js @@ -20,7 +20,9 @@ var goatConstants = { lessonPlanService:'service/lessonplan.mvc', menuService: 'service/lessonmenu.mvc', // literals - notFound: 'Could not find' + notFound: 'Could not find', + noHints: 'There are no hints defined.' + }; diff --git a/src/main/webapp/js/goatControllers.js b/src/main/webapp/js/goatControllers.js index a68ebd0b0..e29d16e09 100644 --- a/src/main/webapp/js/goatControllers.js +++ b/src/main/webapp/js/goatControllers.js @@ -3,42 +3,152 @@ /* ### GOAT CONTROLLERS ### */ -/** Menu Controller +/** Lesson Controller (includes menu stuff) * prepares and updates menu topic items for the view */ -goat.controller('goatLessonMenu', function($scope, $http, $modal, $log, $templateCache) { +goat.controller('goatLesson', function($scope, $http, $modal, $log, $templateCache) { + $scope.cookies= []; + $scope.params=[]; //TODO: implement via separate promise and use config for menu (goat.data.loadMenuData()) $http({method: 'GET', url: goatConstants.lessonService}).then( - function(menuData) { - var menuItems = goat.utils.addMenuClasses(goatConstants.menuPrefix.concat(menuData.data)); - $scope.menuTopics = menuItems; - }, - function(error) { - // TODO - handle this some way other than an alert - console.error("Error rendering menu: " + error); - } + function(menuData) { + var menuItems = goat.utils.addMenuClasses(goatConstants.menuPrefix.concat(menuData.data)); + $scope.menuTopics = menuItems; + }, + function(error) { + // TODO - handle this some way other than an alert + console.error("Error rendering menu: " + error); + } ); + $scope.renderLesson = function(url) { //console.log(url + ' was passed in'); // use jquery to render lesson content to div + $scope.hintIndex = 0; + + var curScope = $scope; + + + curScope.parameters = goat.utils.scrapeParams(url); goat.data.loadLessonContent(url).then( - function(reply) { - $("#lesson_content").html(reply); - // hook forms - goat.utils.makeFormsAjax(); + function(reply) { + $("#lesson_content").html(reply); + //hook forms + goat.utils.makeFormsAjax(); + $('#hintsView').hide(); //render lesson title - $('#lessonTitle').text(goat.utils.extractLessonTitle($(reply))); - // adjust menu to lessonContent size if necssary + $('#lessonTitle').text(goat.utils.extractLessonTitle($(reply))); + //@KLUGE to remove h1 after extracting and moving it to top + $('#lesson_content h1').remove() + // adjust menu to lessonContent size if necssary //@TODO: this is still clunky ... needs some TLC - if ($('div.panel-body').height() > 400) { - $('#leftside-navigation').height($(window).height()); - } - goat.lesson.lessonInfo = new goat.lesson.CurLesson(url); - goat.lesson.lessonInfo.loadInfo(); //uses pseudo and actual service calls - // @TODO: convert to real services (and more angularjs, likely ... in phase 2) - } + if ($('div.panel-body').height() > 400) { + $('#leftside-navigation').height($(window).height()); + } + //cookies + goat.data.loadCookies().then( + function(resp) { + curScope.cookies = resp; + } + ); + //hints + curScope.hintIndex=0; + goat.data.loadHints().then( + function (resp) { + curScope.hints = resp; + if (curScope.hints.length > 0 && curScope.hints[0].hint.indexOf(goatConstants.noHints) === -1) { + goat.utils.displayButton('showHintsBtn',true); + } else { + goat.utils.displayButton('showHintsBtn',false); + } + } + ); + //source + goat.data.loadSource().then( + function(resp) { + curScope.source = resp; + } + ); + //plan + goat.data.loadPlan().then( + function(resp) { + curScope.plan = resp; + } + ); + //solution + goat.data.loadSolution().then( + function(resp) { + curScope.solution = resp; + } + ); + goat.utils.scrollToTop(); + } ); - }; + }; + + $scope.showLessonSource = function () { + $('.lessonHelp').hide(); + $('#lesson_source_row').show(); + goat.utils.scrollToHelp(); + } + + $scope.showLessonPlan = function () { + $('.lessonHelp').hide(); + $("#lesson_plan").html($scope.plan); + $('#lesson_plan_row').show(); + goat.utils.scrollToHelp(); + } + + $scope.showLessonSolution = function () { + $('.lessonHelp').hide(); + $("#lesson_solution").html($scope.solution); + $('#lesson_solution_row').show(); + goat.utils.scrollToHelp(); + } + + $scope.manageHintButtons = function () { + if ($scope.hintIndex === $scope.hints.length -1) { + $('#showNextHintBtn').css('visibility','hidden'); + } else if ($scope.hintIndex < $scope.hints.length - 1) { + $('#showNextHintBtn').css('visibility','visible'); + } + // + if ($scope.hintIndex === 0) { + $('#showPrevHintBtn').css('visibility','hidden'); + } else if ($scope.hintIndex > 0) { + $('#showPrevHintBtn').css('visibility','visible'); + } + }; + + $scope.viewHints = function() { + if (!$scope.hints) { + return; + } + + $('.lessonHelp').hide(); + $('#lesson_hint_row').show(); + goat.utils.scrollToHelp(); + $scope.curHint = $scope.hints[$scope.hintIndex].hint; + $scope.manageHintButtons(); + }; + + $scope.viewNextHint = function() { + $scope.hintIndex++; + $scope.curHint = $scope.hints[$scope.hintIndex].hint; + $scope.manageHintButtons(); + }; + + $scope.viewPrevHint = function () { + $scope.hintIndex--; + $scope.curHint = $scope.hints[$scope.hintIndex].hint; + $scope.manageHintButtons(); + }; + + $scope.hideHints = function () { + + }; + + }).animation('.slideDown', function() { var NgHideClassName = 'ng-hide'; return { @@ -53,53 +163,6 @@ goat.controller('goatLessonMenu', function($scope, $http, $modal, $log, $templat } } }; + + }); - -goat.controller('lessonHelpController', function($scope) { - $scope.cookies=[]; - $scope.params=[]; - $scope.viewCookiesAndParams = function() { - $('#hintsView').hide(); - if (goat.lesson.lessonInfo.cookies && goat.lesson.lessonInfo.cookies.length > 0) { - $scope.cookies=goat.lesson.lessonInfo.cookies; - console.log($scope.cookies); - $scope.params=goat.lesson.lessonInfo.params; - } - $('#cookiesAndParamsView').show(); - //@TODO: issue callback to track view - }; - //$scope.watch() -}); - -/* - *DEPRECATED -//Controllers for modal instances -var showSourceController = function($scope, $modalInstance, lessonSource) { - - $scope.lessonSource = lessonSource; - - $scope.ok = function() { - $modalInstance.close(); - }; - - $scope.cancel = function() { - $modalInstance.dismiss('cancel'); - }; -}; - -var showSolutionController = function($scope, $modalInstance, lessonSolutionUrl) { - - $scope.lessonSolutionUrl = lessonSolutionUrl; - - $scope.ok = function() { - $modalInstance.close(); - }; - - $scope.cancel = function() { - $modalInstance.dismiss('cancel'); - }; -}; -*/ - - - diff --git a/src/main/webapp/js/goatLesson.js b/src/main/webapp/js/goatLesson.js index e84a0b2f5..904712b6a 100644 --- a/src/main/webapp/js/goatLesson.js +++ b/src/main/webapp/js/goatLesson.js @@ -31,7 +31,7 @@ goat.lesson = { goat.data.loadHints().then( function(resp) { scope.hints = resp; - if (scope.hints.length > 0) { + if (scope.hints.length > 0 && scope.hints[0].hint.indexOf(goatConstants.noHints) === -1) { goat.utils.displayButton('showHintsBtn',true); } else { goat.utils.displayButton('showHintsBtn',false); @@ -103,7 +103,7 @@ goat.lesson = { ); }, getParams: function() { - this.params = goat.utils.scrapeParams(this.lessonUrl) + this.params = goat.utils.scrapeParams(this.lessonUrl); } } } diff --git a/src/main/webapp/js/goatUtil.js b/src/main/webapp/js/goatUtil.js index c078a5e9a..d291dea8d 100644 --- a/src/main/webapp/js/goatUtil.js +++ b/src/main/webapp/js/goatUtil.js @@ -21,6 +21,7 @@ goat.utils = { */ extractLessonTitle: function(el) { var title = $('h1', el).text(); + // remove title return title; }, displayButton: function(id,show) { @@ -44,7 +45,7 @@ goat.utils = { }, showLessonSource: function(source) { $('.lessonHelp').hide(); - $('#lesson_source').html("
"+goat.lesson.lessonInfo.source+"
"); + //$('#lesson_source').html("
"+goat.lesson.lessonInfo.source+"
"); $('#lesson_source_row').show(); goat.utils.scrollToHelp(); }, @@ -65,6 +66,7 @@ goat.utils = { goat.utils.scrollEasy(target); }, scrollToTop: function() { + $('.lessonHelp').hide(); var target= $('#container'); goat.utils.scrollEasy(target); }, From c7d79261478e20eb55a3c13e53c63b9bb51418d9 Mon Sep 17 00:00:00 2001 From: nbaars Date: Sun, 7 Sep 2014 12:50:56 +0200 Subject: [PATCH 04/11] Moved images files etc from lesson_solutions_1 to lesson_solutions --- .../org/owasp/webgoat/lessons/HttpSplitting.java | 4 ++-- .../HttpSplitting_files/colorschememapping.xml | 0 .../HttpSplitting_files/filelist.xml | 0 .../HttpSplitting_files/image001.png | Bin .../HttpSplitting_files/image003.png | Bin .../HttpSplitting_files/image005.png | Bin .../HttpSplitting_files/image007.png | Bin .../HttpSplitting_files/image009.png | Bin .../HttpSplitting_files/image011.png | Bin .../HttpSplitting_files/image013.png | Bin .../HttpSplitting_files/image015.png | Bin .../HttpSplitting_files/image017.png | Bin .../HttpSplitting_files/image019.png | Bin .../HttpSplitting_files/image021.png | Bin .../HttpSplitting_files/image023.png | Bin .../HttpSplitting_files/image025.png | Bin .../HttpSplitting_files/image027.png | Bin .../HttpSplitting_files/image029.jpg | Bin .../HttpSplitting_files/image030.jpg | Bin .../HttpSplitting_files/image031.jpg | Bin .../HttpSplitting_files/image032.jpg | Bin .../HttpSplitting_files/image033.jpg | Bin .../HttpSplitting_files/image034.jpg | Bin .../HttpSplitting_files/image035.jpg | Bin .../HttpSplitting_files/image036.jpg | Bin .../HttpSplitting_files/image037.jpg | Bin .../HttpSplitting_files/image038.jpg | Bin .../HttpSplitting_files/image039.jpg | Bin .../HttpSplitting_files/image040.jpg | Bin .../HttpSplitting_files/image041.jpg | Bin .../HttpSplitting_files/image042.jpg | Bin .../HttpSplitting_files/themedata.thmx | Bin .../InsecureLogin_files/wireshark1.png | Bin .../JSONInjection_files/colorschememapping.xml | 0 .../JSONInjection_files/filelist.xml | 0 .../JSONInjection_files/image001.png | Bin .../JSONInjection_files/image003.png | Bin .../JSONInjection_files/image005.png | Bin .../JSONInjection_files/image007.png | Bin .../JSONInjection_files/image009.png | Bin .../JSONInjection_files/image011.png | Bin .../JSONInjection_files/image013.jpg | Bin .../JSONInjection_files/image014.jpg | Bin .../JSONInjection_files/image015.jpg | Bin .../JSONInjection_files/image016.jpg | Bin .../JSONInjection_files/image017.jpg | Bin .../JSONInjection_files/image018.jpg | Bin .../JSONInjection_files/themedata.thmx | Bin .../colorschememapping.xml | 0 .../JavaScriptValidation_files/filelist.xml | 0 .../JavaScriptValidation_files/image001.png | Bin .../JavaScriptValidation_files/image002.jpg | Bin .../JavaScriptValidation_files/image003.png | Bin .../JavaScriptValidation_files/image004.jpg | Bin .../JavaScriptValidation_files/image005.png | Bin .../JavaScriptValidation_files/image006.jpg | Bin .../JavaScriptValidation_files/image007.png | Bin .../JavaScriptValidation_files/image008.jpg | Bin .../JavaScriptValidation_files/image009.gif | Bin .../JavaScriptValidation_files/image010.png | Bin .../JavaScriptValidation_files/image011.jpg | Bin .../JavaScriptValidation_files/image012.png | Bin .../JavaScriptValidation_files/image013.jpg | Bin .../JavaScriptValidation_files/image014.png | Bin .../JavaScriptValidation_files/image015.jpg | Bin .../JavaScriptValidation_files/image016.png | Bin .../JavaScriptValidation_files/image017.jpg | Bin .../JavaScriptValidation_files/image018.png | Bin .../JavaScriptValidation_files/image019.jpg | Bin .../JavaScriptValidation_files/image020.png | Bin .../JavaScriptValidation_files/image021.jpg | Bin .../JavaScriptValidation_files/image022.png | Bin .../JavaScriptValidation_files/image023.jpg | Bin .../JavaScriptValidation_files/themedata.thmx | Bin .../LogSpoofing_files/Thumbs.db | Bin .../LogSpoofing_files/colorschememapping.xml | 0 .../LogSpoofing_files/filelist.xml | 0 .../LogSpoofing_files/image001.png | Bin .../LogSpoofing_files/image003.png | Bin .../LogSpoofing_files/image005.png | Bin .../LogSpoofing_files/image007.jpg | Bin .../LogSpoofing_files/image008.jpg | Bin .../LogSpoofing_files/image009.jpg | Bin .../LogSpoofing_files/themedata.thmx | Bin .../MaliciousFileExecution_files/image001.jpg | Bin .../MaliciousFileExecution_files/image002.jpg | Bin .../MultiLevelLogin1_files/login.png | Bin .../MultiLevelLogin1_files/success.png | Bin .../MultiLevelLogin1_files/tan.png | Bin .../MultiLevelLogin1_files/webscarab.png | Bin .../MultiLevelLogin2_files/success.png | Bin .../PasswordStrength_files/image001.jpg | Bin .../PasswordStrength_files/image002.jpg | Bin .../PasswordStrength_files/image003.jpg | Bin .../colorschememapping.xml | 0 .../PathBasedAccessControl_files/filelist.xml | 0 .../PathBasedAccessControl_files/image001.png | Bin .../PathBasedAccessControl_files/image002.jpg | Bin .../PathBasedAccessControl_files/image003.png | Bin .../PathBasedAccessControl_files/image004.jpg | Bin .../PathBasedAccessControl_files/image005.png | Bin .../PathBasedAccessControl_files/image006.jpg | Bin .../PathBasedAccessControl_files/themedata.thmx | Bin .../Phishing_files/image001.jpg | Bin .../ReflectedXSS_files/colorschememapping.xml | 0 .../ReflectedXSS_files/filelist.xml | 0 .../ReflectedXSS_files/image001.png | Bin .../ReflectedXSS_files/image003.png | Bin .../ReflectedXSS_files/image005.jpg | Bin .../ReflectedXSS_files/image006.jpg | Bin .../ReflectedXSS_files/themedata.thmx | Bin .../RemoteAdminFlaw_files/colorschememapping.xml | 0 .../RemoteAdminFlaw_files/filelist.xml | 0 .../RemoteAdminFlaw_files/image001.png | Bin .../RemoteAdminFlaw_files/image002.jpg | Bin .../RemoteAdminFlaw_files/image003.png | Bin .../RemoteAdminFlaw_files/image004.jpg | Bin .../RemoteAdminFlaw_files/image005.png | Bin .../RemoteAdminFlaw_files/image006.jpg | Bin .../RemoteAdminFlaw_files/themedata.thmx | Bin .../SessionFixation_files/sf_stage1.png | Bin .../SessionFixation_files/sf_stage2.png | Bin .../SessionFixation_files/sf_stage3.png | Bin .../SessionFixation_files/sf_stage4_1.png | Bin .../SessionFixation_files/sf_stage4_2.png | Bin .../SessionFixation_files/sf_success.png | Bin .../SilentTransactions_files/colorschememapping.xml | 0 .../SilentTransactions_files/filelist.xml | 0 .../SilentTransactions_files/image001.png | Bin .../SilentTransactions_files/image003.png | Bin .../SilentTransactions_files/image005.png | Bin .../SilentTransactions_files/image007.png | Bin .../SilentTransactions_files/image009.jpg | Bin .../SilentTransactions_files/image010.jpg | Bin .../SilentTransactions_files/image011.jpg | Bin .../SilentTransactions_files/image012.jpg | Bin .../SilentTransactions_files/themedata.thmx | Bin .../SoapRequest_files/colorschememapping.xml | 0 .../SoapRequest_files/filelist.xml | 0 .../SoapRequest_files/image001.png | Bin .../SoapRequest_files/image002.jpg | Bin .../SoapRequest_files/image003.png | Bin .../SoapRequest_files/image004.jpg | Bin .../SoapRequest_files/image005.png | Bin .../SoapRequest_files/image006.jpg | Bin .../SoapRequest_files/image007.png | Bin .../SoapRequest_files/image008.jpg | Bin .../SoapRequest_files/image009.png | Bin .../SoapRequest_files/image010.jpg | Bin .../SoapRequest_files/image011.jpg | Bin .../SoapRequest_files/themedata.thmx | Bin .../SqlAddData_files/image001.jpg | Bin .../SqlModifyData_files/image001.jpg | Bin .../colorschememapping.xml | 0 .../SqlNumericInjection_files/filelist.xml | 0 .../SqlNumericInjection_files/image001.png | Bin .../SqlNumericInjection_files/image002.jpg | Bin .../SqlNumericInjection_files/image003.png | Bin .../SqlNumericInjection_files/image004.jpg | Bin .../SqlNumericInjection_files/image005.png | Bin .../SqlNumericInjection_files/image006.jpg | Bin .../SqlNumericInjection_files/numericinjection.png | Bin .../numericinjection_solved.png | Bin .../SqlNumericInjection_files/themedata.thmx | Bin .../SqlStringInjection_files/colorschememapping.xml | 0 .../SqlStringInjection_files/filelist.xml | 0 .../SqlStringInjection_files/image001.png | Bin .../SqlStringInjection_files/image003.png | Bin .../SqlStringInjection_files/image005.jpg | Bin .../SqlStringInjection_files/image006.jpg | Bin .../SqlStringInjection_files/themedata.thmx | Bin .../StoredXSS_files/colorschememapping.xml | 0 .../StoredXSS_files/filelist.xml | 0 .../StoredXSS_files/image001.png | Bin .../StoredXSS_files/image003.png | Bin .../StoredXSS_files/image005.png | Bin .../StoredXSS_files/image007.jpg | Bin .../StoredXSS_files/image008.jpg | Bin .../StoredXSS_files/image009.jpg | Bin .../StoredXSS_files/themedata.thmx | Bin .../colorschememapping.xml | 0 .../ThreadSafetyProblem_files/filelist.xml | 0 .../ThreadSafetyProblem_files/image001.png | Bin .../ThreadSafetyProblem_files/image002.jpg | Bin .../ThreadSafetyProblem_files/image003.png | Bin .../ThreadSafetyProblem_files/image004.jpg | Bin .../ThreadSafetyProblem_files/image007.png | Bin .../ThreadSafetyProblem_files/image009.jpg | Bin .../ThreadSafetyProblem_files/themedata.thmx | Bin .../TraceXSS_files/colorschememapping.xml | 0 .../TraceXSS_files/filelist.xml | 0 .../TraceXSS_files/image001.png | Bin .../TraceXSS_files/image002.jpg | Bin .../TraceXSS_files/themedata.thmx | Bin .../UncheckedEmail_files/colorschememapping.xml | 0 .../UncheckedEmail_files/filelist.xml | 0 .../UncheckedEmail_files/image001.png | Bin .../UncheckedEmail_files/image002.jpg | Bin .../UncheckedEmail_files/image003.png | Bin .../UncheckedEmail_files/image004.jpg | Bin .../UncheckedEmail_files/image005.png | Bin .../UncheckedEmail_files/image006.jpg | Bin .../UncheckedEmail_files/image007.png | Bin .../UncheckedEmail_files/image008.jpg | Bin .../UncheckedEmail_files/themedata.thmx | Bin .../WSDLScanning_files/colorschememapping.xml | 0 .../WSDLScanning_files/filelist.xml | 0 .../WSDLScanning_files/image001.png | Bin .../WSDLScanning_files/image003.png | Bin .../WSDLScanning_files/image005.png | Bin .../WSDLScanning_files/image007.png | Bin .../WSDLScanning_files/image009.jpg | Bin .../WSDLScanning_files/image010.jpg | Bin .../WSDLScanning_files/image011.jpg | Bin .../WSDLScanning_files/image012.jpg | Bin .../WSDLScanning_files/themedata.thmx | Bin .../colorschememapping.xml | 0 .../WeakAuthenticationCookie_files/filelist.xml | 0 .../WeakAuthenticationCookie_files/image001.png | Bin .../WeakAuthenticationCookie_files/image003.png | Bin .../WeakAuthenticationCookie_files/image005.png | Bin .../WeakAuthenticationCookie_files/image007.png | Bin .../WeakAuthenticationCookie_files/image009.png | Bin .../WeakAuthenticationCookie_files/image011.png | Bin .../WeakAuthenticationCookie_files/image013.png | Bin .../WeakAuthenticationCookie_files/image015.png | Bin .../WeakAuthenticationCookie_files/image017.png | Bin .../WeakAuthenticationCookie_files/image019.jpg | Bin .../WeakAuthenticationCookie_files/image020.jpg | Bin .../WeakAuthenticationCookie_files/image021.jpg | Bin .../WeakAuthenticationCookie_files/image022.jpg | Bin .../WeakAuthenticationCookie_files/image023.jpg | Bin .../WeakAuthenticationCookie_files/image024.jpg | Bin .../WeakAuthenticationCookie_files/image025.jpg | Bin .../WeakAuthenticationCookie_files/image026.jpg | Bin .../WeakAuthenticationCookie_files/image027.jpg | Bin .../WeakAuthenticationCookie_files/themedata.thmx | Bin .../WeakSessionID_files/image001.jpg | Bin .../WeakSessionID_files/image002.jpg | Bin .../WeakSessionID_files/image003.jpg | Bin .../WeakSessionID_files/image004.jpg | Bin .../WeakSessionID_files/image005.jpg | Bin .../WeakSessionID_files/image006.jpg | Bin .../WsSAXInjection_files/colorschememapping.xml | 0 .../WsSAXInjection_files/filelist.xml | 0 .../WsSAXInjection_files/image001.png | Bin .../WsSAXInjection_files/image002.jpg | Bin .../WsSAXInjection_files/image003.png | Bin .../WsSAXInjection_files/image004.jpg | Bin .../WsSAXInjection_files/image005.png | Bin .../WsSAXInjection_files/image006.jpg | Bin .../WsSAXInjection_files/image007.png | Bin .../WsSAXInjection_files/image008.jpg | Bin .../WsSAXInjection_files/image009.png | Bin .../WsSAXInjection_files/image010.jpg | Bin .../WsSAXInjection_files/themedata.thmx | Bin .../WsSqlInjection_files/colorschememapping.xml | 0 .../WsSqlInjection_files/filelist.xml | 0 .../WsSqlInjection_files/image001.png | Bin .../WsSqlInjection_files/image002.jpg | Bin .../WsSqlInjection_files/image003.png | Bin .../WsSqlInjection_files/image004.jpg | Bin .../WsSqlInjection_files/image005.png | Bin .../WsSqlInjection_files/image006.jpg | Bin .../WsSqlInjection_files/image007.png | Bin .../WsSqlInjection_files/image008.jpg | Bin .../WsSqlInjection_files/themedata.thmx | Bin .../XMLInjection_files/colorschememapping.xml | 0 .../XMLInjection_files/filelist.xml | 0 .../XMLInjection_files/image001.png | Bin .../XMLInjection_files/image003.png | Bin .../XMLInjection_files/image005.png | Bin .../XMLInjection_files/image007.png | Bin .../XMLInjection_files/image009.png | Bin .../XMLInjection_files/image011.png | Bin .../XMLInjection_files/image013.png | Bin .../XMLInjection_files/image015.png | Bin .../XMLInjection_files/image017.jpg | Bin .../XMLInjection_files/image018.jpg | Bin .../XMLInjection_files/image019.jpg | Bin .../XMLInjection_files/image020.jpg | Bin .../XMLInjection_files/image021.jpg | Bin .../XMLInjection_files/image022.jpg | Bin .../XMLInjection_files/image023.jpg | Bin .../XMLInjection_files/image024.jpg | Bin .../XMLInjection_files/themedata.thmx | Bin .../XPATHInjection_files/colorschememapping.xml | 0 .../XPATHInjection_files/filelist.xml | 0 .../XPATHInjection_files/image001.png | Bin .../XPATHInjection_files/image003.png | Bin .../XPATHInjection_files/image005.png | Bin .../XPATHInjection_files/image007.jpg | Bin .../XPATHInjection_files/image008.jpg | Bin .../XPATHInjection_files/image009.jpg | Bin .../XPATHInjection_files/themedata.thmx | Bin 295 files changed, 2 insertions(+), 2 deletions(-) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/colorschememapping.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/filelist.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/image001.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/image003.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/image005.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/image007.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/image009.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/image011.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/image013.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/image015.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/image017.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/image019.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/image021.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/image023.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/image025.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/image027.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/image029.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/image030.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/image031.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/image032.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/image033.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/image034.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/image035.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/image036.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/image037.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/image038.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/image039.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/image040.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/image041.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/image042.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/HttpSplitting_files/themedata.thmx (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/InsecureLogin_files/wireshark1.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JSONInjection_files/colorschememapping.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JSONInjection_files/filelist.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JSONInjection_files/image001.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JSONInjection_files/image003.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JSONInjection_files/image005.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JSONInjection_files/image007.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JSONInjection_files/image009.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JSONInjection_files/image011.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JSONInjection_files/image013.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JSONInjection_files/image014.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JSONInjection_files/image015.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JSONInjection_files/image016.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JSONInjection_files/image017.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JSONInjection_files/image018.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JSONInjection_files/themedata.thmx (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JavaScriptValidation_files/colorschememapping.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JavaScriptValidation_files/filelist.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JavaScriptValidation_files/image001.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JavaScriptValidation_files/image002.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JavaScriptValidation_files/image003.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JavaScriptValidation_files/image004.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JavaScriptValidation_files/image005.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JavaScriptValidation_files/image006.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JavaScriptValidation_files/image007.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JavaScriptValidation_files/image008.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JavaScriptValidation_files/image009.gif (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JavaScriptValidation_files/image010.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JavaScriptValidation_files/image011.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JavaScriptValidation_files/image012.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JavaScriptValidation_files/image013.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JavaScriptValidation_files/image014.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JavaScriptValidation_files/image015.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JavaScriptValidation_files/image016.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JavaScriptValidation_files/image017.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JavaScriptValidation_files/image018.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JavaScriptValidation_files/image019.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JavaScriptValidation_files/image020.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JavaScriptValidation_files/image021.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JavaScriptValidation_files/image022.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JavaScriptValidation_files/image023.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/JavaScriptValidation_files/themedata.thmx (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/LogSpoofing_files/Thumbs.db (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/LogSpoofing_files/colorschememapping.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/LogSpoofing_files/filelist.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/LogSpoofing_files/image001.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/LogSpoofing_files/image003.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/LogSpoofing_files/image005.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/LogSpoofing_files/image007.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/LogSpoofing_files/image008.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/LogSpoofing_files/image009.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/LogSpoofing_files/themedata.thmx (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/MaliciousFileExecution_files/image001.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/MaliciousFileExecution_files/image002.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/MultiLevelLogin1_files/login.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/MultiLevelLogin1_files/success.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/MultiLevelLogin1_files/tan.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/MultiLevelLogin1_files/webscarab.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/MultiLevelLogin2_files/success.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/PasswordStrength_files/image001.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/PasswordStrength_files/image002.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/PasswordStrength_files/image003.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/PathBasedAccessControl_files/colorschememapping.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/PathBasedAccessControl_files/filelist.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/PathBasedAccessControl_files/image001.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/PathBasedAccessControl_files/image002.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/PathBasedAccessControl_files/image003.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/PathBasedAccessControl_files/image004.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/PathBasedAccessControl_files/image005.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/PathBasedAccessControl_files/image006.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/PathBasedAccessControl_files/themedata.thmx (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/Phishing_files/image001.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/ReflectedXSS_files/colorschememapping.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/ReflectedXSS_files/filelist.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/ReflectedXSS_files/image001.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/ReflectedXSS_files/image003.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/ReflectedXSS_files/image005.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/ReflectedXSS_files/image006.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/ReflectedXSS_files/themedata.thmx (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/RemoteAdminFlaw_files/colorschememapping.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/RemoteAdminFlaw_files/filelist.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/RemoteAdminFlaw_files/image001.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/RemoteAdminFlaw_files/image002.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/RemoteAdminFlaw_files/image003.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/RemoteAdminFlaw_files/image004.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/RemoteAdminFlaw_files/image005.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/RemoteAdminFlaw_files/image006.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/RemoteAdminFlaw_files/themedata.thmx (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SessionFixation_files/sf_stage1.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SessionFixation_files/sf_stage2.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SessionFixation_files/sf_stage3.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SessionFixation_files/sf_stage4_1.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SessionFixation_files/sf_stage4_2.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SessionFixation_files/sf_success.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SilentTransactions_files/colorschememapping.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SilentTransactions_files/filelist.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SilentTransactions_files/image001.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SilentTransactions_files/image003.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SilentTransactions_files/image005.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SilentTransactions_files/image007.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SilentTransactions_files/image009.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SilentTransactions_files/image010.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SilentTransactions_files/image011.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SilentTransactions_files/image012.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SilentTransactions_files/themedata.thmx (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SoapRequest_files/colorschememapping.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SoapRequest_files/filelist.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SoapRequest_files/image001.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SoapRequest_files/image002.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SoapRequest_files/image003.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SoapRequest_files/image004.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SoapRequest_files/image005.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SoapRequest_files/image006.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SoapRequest_files/image007.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SoapRequest_files/image008.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SoapRequest_files/image009.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SoapRequest_files/image010.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SoapRequest_files/image011.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SoapRequest_files/themedata.thmx (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SqlAddData_files/image001.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SqlModifyData_files/image001.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SqlNumericInjection_files/colorschememapping.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SqlNumericInjection_files/filelist.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SqlNumericInjection_files/image001.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SqlNumericInjection_files/image002.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SqlNumericInjection_files/image003.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SqlNumericInjection_files/image004.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SqlNumericInjection_files/image005.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SqlNumericInjection_files/image006.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SqlNumericInjection_files/numericinjection.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SqlNumericInjection_files/numericinjection_solved.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SqlNumericInjection_files/themedata.thmx (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SqlStringInjection_files/colorschememapping.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SqlStringInjection_files/filelist.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SqlStringInjection_files/image001.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SqlStringInjection_files/image003.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SqlStringInjection_files/image005.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SqlStringInjection_files/image006.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/SqlStringInjection_files/themedata.thmx (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/StoredXSS_files/colorschememapping.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/StoredXSS_files/filelist.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/StoredXSS_files/image001.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/StoredXSS_files/image003.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/StoredXSS_files/image005.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/StoredXSS_files/image007.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/StoredXSS_files/image008.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/StoredXSS_files/image009.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/StoredXSS_files/themedata.thmx (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/ThreadSafetyProblem_files/colorschememapping.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/ThreadSafetyProblem_files/filelist.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/ThreadSafetyProblem_files/image001.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/ThreadSafetyProblem_files/image002.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/ThreadSafetyProblem_files/image003.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/ThreadSafetyProblem_files/image004.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/ThreadSafetyProblem_files/image007.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/ThreadSafetyProblem_files/image009.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/ThreadSafetyProblem_files/themedata.thmx (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/TraceXSS_files/colorschememapping.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/TraceXSS_files/filelist.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/TraceXSS_files/image001.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/TraceXSS_files/image002.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/TraceXSS_files/themedata.thmx (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/UncheckedEmail_files/colorschememapping.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/UncheckedEmail_files/filelist.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/UncheckedEmail_files/image001.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/UncheckedEmail_files/image002.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/UncheckedEmail_files/image003.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/UncheckedEmail_files/image004.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/UncheckedEmail_files/image005.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/UncheckedEmail_files/image006.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/UncheckedEmail_files/image007.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/UncheckedEmail_files/image008.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/UncheckedEmail_files/themedata.thmx (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WSDLScanning_files/colorschememapping.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WSDLScanning_files/filelist.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WSDLScanning_files/image001.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WSDLScanning_files/image003.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WSDLScanning_files/image005.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WSDLScanning_files/image007.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WSDLScanning_files/image009.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WSDLScanning_files/image010.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WSDLScanning_files/image011.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WSDLScanning_files/image012.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WSDLScanning_files/themedata.thmx (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WeakAuthenticationCookie_files/colorschememapping.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WeakAuthenticationCookie_files/filelist.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WeakAuthenticationCookie_files/image001.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WeakAuthenticationCookie_files/image003.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WeakAuthenticationCookie_files/image005.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WeakAuthenticationCookie_files/image007.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WeakAuthenticationCookie_files/image009.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WeakAuthenticationCookie_files/image011.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WeakAuthenticationCookie_files/image013.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WeakAuthenticationCookie_files/image015.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WeakAuthenticationCookie_files/image017.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WeakAuthenticationCookie_files/image019.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WeakAuthenticationCookie_files/image020.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WeakAuthenticationCookie_files/image021.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WeakAuthenticationCookie_files/image022.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WeakAuthenticationCookie_files/image023.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WeakAuthenticationCookie_files/image024.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WeakAuthenticationCookie_files/image025.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WeakAuthenticationCookie_files/image026.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WeakAuthenticationCookie_files/image027.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WeakAuthenticationCookie_files/themedata.thmx (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WeakSessionID_files/image001.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WeakSessionID_files/image002.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WeakSessionID_files/image003.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WeakSessionID_files/image004.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WeakSessionID_files/image005.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WeakSessionID_files/image006.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WsSAXInjection_files/colorschememapping.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WsSAXInjection_files/filelist.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WsSAXInjection_files/image001.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WsSAXInjection_files/image002.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WsSAXInjection_files/image003.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WsSAXInjection_files/image004.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WsSAXInjection_files/image005.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WsSAXInjection_files/image006.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WsSAXInjection_files/image007.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WsSAXInjection_files/image008.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WsSAXInjection_files/image009.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WsSAXInjection_files/image010.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WsSAXInjection_files/themedata.thmx (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WsSqlInjection_files/colorschememapping.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WsSqlInjection_files/filelist.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WsSqlInjection_files/image001.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WsSqlInjection_files/image002.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WsSqlInjection_files/image003.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WsSqlInjection_files/image004.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WsSqlInjection_files/image005.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WsSqlInjection_files/image006.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WsSqlInjection_files/image007.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WsSqlInjection_files/image008.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/WsSqlInjection_files/themedata.thmx (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/XMLInjection_files/colorschememapping.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/XMLInjection_files/filelist.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/XMLInjection_files/image001.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/XMLInjection_files/image003.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/XMLInjection_files/image005.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/XMLInjection_files/image007.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/XMLInjection_files/image009.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/XMLInjection_files/image011.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/XMLInjection_files/image013.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/XMLInjection_files/image015.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/XMLInjection_files/image017.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/XMLInjection_files/image018.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/XMLInjection_files/image019.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/XMLInjection_files/image020.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/XMLInjection_files/image021.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/XMLInjection_files/image022.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/XMLInjection_files/image023.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/XMLInjection_files/image024.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/XMLInjection_files/themedata.thmx (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/XPATHInjection_files/colorschememapping.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/XPATHInjection_files/filelist.xml (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/XPATHInjection_files/image001.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/XPATHInjection_files/image003.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/XPATHInjection_files/image005.png (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/XPATHInjection_files/image007.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/XPATHInjection_files/image008.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/XPATHInjection_files/image009.jpg (100%) rename src/main/webapp/{lesson_solutions_1 => lesson_solutions}/XPATHInjection_files/themedata.thmx (100%) diff --git a/src/main/java/org/owasp/webgoat/lessons/HttpSplitting.java b/src/main/java/org/owasp/webgoat/lessons/HttpSplitting.java index dc7a97b53..bd2b819b0 100644 --- a/src/main/java/org/owasp/webgoat/lessons/HttpSplitting.java +++ b/src/main/java/org/owasp/webgoat/lessons/HttpSplitting.java @@ -1,7 +1,6 @@ package org.owasp.webgoat.lessons; -import java.io.PrintWriter; import java.net.URLDecoder; import java.text.DateFormat; import java.text.SimpleDateFormat; @@ -54,7 +53,8 @@ public class HttpSplitting extends SequentialLessonAdapter private static String STAGE = "stage"; public final static A MAC_LOGO = new A().setHref("http://www.softwaresecured.com").addElement(new IMG("images/logos/softwaresecured.gif").setAlt("Software Secured").setBorder(0).setHspace(0).setVspace(0)); - /** + + /** * Description of the Method * * @param s diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/colorschememapping.xml b/src/main/webapp/lesson_solutions/HttpSplitting_files/colorschememapping.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/colorschememapping.xml rename to src/main/webapp/lesson_solutions/HttpSplitting_files/colorschememapping.xml diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/filelist.xml b/src/main/webapp/lesson_solutions/HttpSplitting_files/filelist.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/filelist.xml rename to src/main/webapp/lesson_solutions/HttpSplitting_files/filelist.xml diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/image001.png b/src/main/webapp/lesson_solutions/HttpSplitting_files/image001.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/image001.png rename to src/main/webapp/lesson_solutions/HttpSplitting_files/image001.png diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/image003.png b/src/main/webapp/lesson_solutions/HttpSplitting_files/image003.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/image003.png rename to src/main/webapp/lesson_solutions/HttpSplitting_files/image003.png diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/image005.png b/src/main/webapp/lesson_solutions/HttpSplitting_files/image005.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/image005.png rename to src/main/webapp/lesson_solutions/HttpSplitting_files/image005.png diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/image007.png b/src/main/webapp/lesson_solutions/HttpSplitting_files/image007.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/image007.png rename to src/main/webapp/lesson_solutions/HttpSplitting_files/image007.png diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/image009.png b/src/main/webapp/lesson_solutions/HttpSplitting_files/image009.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/image009.png rename to src/main/webapp/lesson_solutions/HttpSplitting_files/image009.png diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/image011.png b/src/main/webapp/lesson_solutions/HttpSplitting_files/image011.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/image011.png rename to src/main/webapp/lesson_solutions/HttpSplitting_files/image011.png diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/image013.png b/src/main/webapp/lesson_solutions/HttpSplitting_files/image013.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/image013.png rename to src/main/webapp/lesson_solutions/HttpSplitting_files/image013.png diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/image015.png b/src/main/webapp/lesson_solutions/HttpSplitting_files/image015.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/image015.png rename to src/main/webapp/lesson_solutions/HttpSplitting_files/image015.png diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/image017.png b/src/main/webapp/lesson_solutions/HttpSplitting_files/image017.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/image017.png rename to src/main/webapp/lesson_solutions/HttpSplitting_files/image017.png diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/image019.png b/src/main/webapp/lesson_solutions/HttpSplitting_files/image019.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/image019.png rename to src/main/webapp/lesson_solutions/HttpSplitting_files/image019.png diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/image021.png b/src/main/webapp/lesson_solutions/HttpSplitting_files/image021.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/image021.png rename to src/main/webapp/lesson_solutions/HttpSplitting_files/image021.png diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/image023.png b/src/main/webapp/lesson_solutions/HttpSplitting_files/image023.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/image023.png rename to src/main/webapp/lesson_solutions/HttpSplitting_files/image023.png diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/image025.png b/src/main/webapp/lesson_solutions/HttpSplitting_files/image025.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/image025.png rename to src/main/webapp/lesson_solutions/HttpSplitting_files/image025.png diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/image027.png b/src/main/webapp/lesson_solutions/HttpSplitting_files/image027.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/image027.png rename to src/main/webapp/lesson_solutions/HttpSplitting_files/image027.png diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/image029.jpg b/src/main/webapp/lesson_solutions/HttpSplitting_files/image029.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/image029.jpg rename to src/main/webapp/lesson_solutions/HttpSplitting_files/image029.jpg diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/image030.jpg b/src/main/webapp/lesson_solutions/HttpSplitting_files/image030.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/image030.jpg rename to src/main/webapp/lesson_solutions/HttpSplitting_files/image030.jpg diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/image031.jpg b/src/main/webapp/lesson_solutions/HttpSplitting_files/image031.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/image031.jpg rename to src/main/webapp/lesson_solutions/HttpSplitting_files/image031.jpg diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/image032.jpg b/src/main/webapp/lesson_solutions/HttpSplitting_files/image032.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/image032.jpg rename to src/main/webapp/lesson_solutions/HttpSplitting_files/image032.jpg diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/image033.jpg b/src/main/webapp/lesson_solutions/HttpSplitting_files/image033.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/image033.jpg rename to src/main/webapp/lesson_solutions/HttpSplitting_files/image033.jpg diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/image034.jpg b/src/main/webapp/lesson_solutions/HttpSplitting_files/image034.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/image034.jpg rename to src/main/webapp/lesson_solutions/HttpSplitting_files/image034.jpg diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/image035.jpg b/src/main/webapp/lesson_solutions/HttpSplitting_files/image035.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/image035.jpg rename to src/main/webapp/lesson_solutions/HttpSplitting_files/image035.jpg diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/image036.jpg b/src/main/webapp/lesson_solutions/HttpSplitting_files/image036.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/image036.jpg rename to src/main/webapp/lesson_solutions/HttpSplitting_files/image036.jpg diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/image037.jpg b/src/main/webapp/lesson_solutions/HttpSplitting_files/image037.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/image037.jpg rename to src/main/webapp/lesson_solutions/HttpSplitting_files/image037.jpg diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/image038.jpg b/src/main/webapp/lesson_solutions/HttpSplitting_files/image038.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/image038.jpg rename to src/main/webapp/lesson_solutions/HttpSplitting_files/image038.jpg diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/image039.jpg b/src/main/webapp/lesson_solutions/HttpSplitting_files/image039.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/image039.jpg rename to src/main/webapp/lesson_solutions/HttpSplitting_files/image039.jpg diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/image040.jpg b/src/main/webapp/lesson_solutions/HttpSplitting_files/image040.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/image040.jpg rename to src/main/webapp/lesson_solutions/HttpSplitting_files/image040.jpg diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/image041.jpg b/src/main/webapp/lesson_solutions/HttpSplitting_files/image041.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/image041.jpg rename to src/main/webapp/lesson_solutions/HttpSplitting_files/image041.jpg diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/image042.jpg b/src/main/webapp/lesson_solutions/HttpSplitting_files/image042.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/image042.jpg rename to src/main/webapp/lesson_solutions/HttpSplitting_files/image042.jpg diff --git a/src/main/webapp/lesson_solutions_1/HttpSplitting_files/themedata.thmx b/src/main/webapp/lesson_solutions/HttpSplitting_files/themedata.thmx similarity index 100% rename from src/main/webapp/lesson_solutions_1/HttpSplitting_files/themedata.thmx rename to src/main/webapp/lesson_solutions/HttpSplitting_files/themedata.thmx diff --git a/src/main/webapp/lesson_solutions_1/InsecureLogin_files/wireshark1.png b/src/main/webapp/lesson_solutions/InsecureLogin_files/wireshark1.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/InsecureLogin_files/wireshark1.png rename to src/main/webapp/lesson_solutions/InsecureLogin_files/wireshark1.png diff --git a/src/main/webapp/lesson_solutions_1/JSONInjection_files/colorschememapping.xml b/src/main/webapp/lesson_solutions/JSONInjection_files/colorschememapping.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/JSONInjection_files/colorschememapping.xml rename to src/main/webapp/lesson_solutions/JSONInjection_files/colorschememapping.xml diff --git a/src/main/webapp/lesson_solutions_1/JSONInjection_files/filelist.xml b/src/main/webapp/lesson_solutions/JSONInjection_files/filelist.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/JSONInjection_files/filelist.xml rename to src/main/webapp/lesson_solutions/JSONInjection_files/filelist.xml diff --git a/src/main/webapp/lesson_solutions_1/JSONInjection_files/image001.png b/src/main/webapp/lesson_solutions/JSONInjection_files/image001.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/JSONInjection_files/image001.png rename to src/main/webapp/lesson_solutions/JSONInjection_files/image001.png diff --git a/src/main/webapp/lesson_solutions_1/JSONInjection_files/image003.png b/src/main/webapp/lesson_solutions/JSONInjection_files/image003.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/JSONInjection_files/image003.png rename to src/main/webapp/lesson_solutions/JSONInjection_files/image003.png diff --git a/src/main/webapp/lesson_solutions_1/JSONInjection_files/image005.png b/src/main/webapp/lesson_solutions/JSONInjection_files/image005.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/JSONInjection_files/image005.png rename to src/main/webapp/lesson_solutions/JSONInjection_files/image005.png diff --git a/src/main/webapp/lesson_solutions_1/JSONInjection_files/image007.png b/src/main/webapp/lesson_solutions/JSONInjection_files/image007.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/JSONInjection_files/image007.png rename to src/main/webapp/lesson_solutions/JSONInjection_files/image007.png diff --git a/src/main/webapp/lesson_solutions_1/JSONInjection_files/image009.png b/src/main/webapp/lesson_solutions/JSONInjection_files/image009.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/JSONInjection_files/image009.png rename to src/main/webapp/lesson_solutions/JSONInjection_files/image009.png diff --git a/src/main/webapp/lesson_solutions_1/JSONInjection_files/image011.png b/src/main/webapp/lesson_solutions/JSONInjection_files/image011.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/JSONInjection_files/image011.png rename to src/main/webapp/lesson_solutions/JSONInjection_files/image011.png diff --git a/src/main/webapp/lesson_solutions_1/JSONInjection_files/image013.jpg b/src/main/webapp/lesson_solutions/JSONInjection_files/image013.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/JSONInjection_files/image013.jpg rename to src/main/webapp/lesson_solutions/JSONInjection_files/image013.jpg diff --git a/src/main/webapp/lesson_solutions_1/JSONInjection_files/image014.jpg b/src/main/webapp/lesson_solutions/JSONInjection_files/image014.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/JSONInjection_files/image014.jpg rename to src/main/webapp/lesson_solutions/JSONInjection_files/image014.jpg diff --git a/src/main/webapp/lesson_solutions_1/JSONInjection_files/image015.jpg b/src/main/webapp/lesson_solutions/JSONInjection_files/image015.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/JSONInjection_files/image015.jpg rename to src/main/webapp/lesson_solutions/JSONInjection_files/image015.jpg diff --git a/src/main/webapp/lesson_solutions_1/JSONInjection_files/image016.jpg b/src/main/webapp/lesson_solutions/JSONInjection_files/image016.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/JSONInjection_files/image016.jpg rename to src/main/webapp/lesson_solutions/JSONInjection_files/image016.jpg diff --git a/src/main/webapp/lesson_solutions_1/JSONInjection_files/image017.jpg b/src/main/webapp/lesson_solutions/JSONInjection_files/image017.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/JSONInjection_files/image017.jpg rename to src/main/webapp/lesson_solutions/JSONInjection_files/image017.jpg diff --git a/src/main/webapp/lesson_solutions_1/JSONInjection_files/image018.jpg b/src/main/webapp/lesson_solutions/JSONInjection_files/image018.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/JSONInjection_files/image018.jpg rename to src/main/webapp/lesson_solutions/JSONInjection_files/image018.jpg diff --git a/src/main/webapp/lesson_solutions_1/JSONInjection_files/themedata.thmx b/src/main/webapp/lesson_solutions/JSONInjection_files/themedata.thmx similarity index 100% rename from src/main/webapp/lesson_solutions_1/JSONInjection_files/themedata.thmx rename to src/main/webapp/lesson_solutions/JSONInjection_files/themedata.thmx diff --git a/src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/colorschememapping.xml b/src/main/webapp/lesson_solutions/JavaScriptValidation_files/colorschememapping.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/colorschememapping.xml rename to src/main/webapp/lesson_solutions/JavaScriptValidation_files/colorschememapping.xml diff --git a/src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/filelist.xml b/src/main/webapp/lesson_solutions/JavaScriptValidation_files/filelist.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/filelist.xml rename to src/main/webapp/lesson_solutions/JavaScriptValidation_files/filelist.xml diff --git a/src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image001.png b/src/main/webapp/lesson_solutions/JavaScriptValidation_files/image001.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image001.png rename to src/main/webapp/lesson_solutions/JavaScriptValidation_files/image001.png diff --git a/src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image002.jpg b/src/main/webapp/lesson_solutions/JavaScriptValidation_files/image002.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image002.jpg rename to src/main/webapp/lesson_solutions/JavaScriptValidation_files/image002.jpg diff --git a/src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image003.png b/src/main/webapp/lesson_solutions/JavaScriptValidation_files/image003.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image003.png rename to src/main/webapp/lesson_solutions/JavaScriptValidation_files/image003.png diff --git a/src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image004.jpg b/src/main/webapp/lesson_solutions/JavaScriptValidation_files/image004.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image004.jpg rename to src/main/webapp/lesson_solutions/JavaScriptValidation_files/image004.jpg diff --git a/src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image005.png b/src/main/webapp/lesson_solutions/JavaScriptValidation_files/image005.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image005.png rename to src/main/webapp/lesson_solutions/JavaScriptValidation_files/image005.png diff --git a/src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image006.jpg b/src/main/webapp/lesson_solutions/JavaScriptValidation_files/image006.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image006.jpg rename to src/main/webapp/lesson_solutions/JavaScriptValidation_files/image006.jpg diff --git a/src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image007.png b/src/main/webapp/lesson_solutions/JavaScriptValidation_files/image007.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image007.png rename to src/main/webapp/lesson_solutions/JavaScriptValidation_files/image007.png diff --git a/src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image008.jpg b/src/main/webapp/lesson_solutions/JavaScriptValidation_files/image008.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image008.jpg rename to src/main/webapp/lesson_solutions/JavaScriptValidation_files/image008.jpg diff --git a/src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image009.gif b/src/main/webapp/lesson_solutions/JavaScriptValidation_files/image009.gif similarity index 100% rename from src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image009.gif rename to src/main/webapp/lesson_solutions/JavaScriptValidation_files/image009.gif diff --git a/src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image010.png b/src/main/webapp/lesson_solutions/JavaScriptValidation_files/image010.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image010.png rename to src/main/webapp/lesson_solutions/JavaScriptValidation_files/image010.png diff --git a/src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image011.jpg b/src/main/webapp/lesson_solutions/JavaScriptValidation_files/image011.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image011.jpg rename to src/main/webapp/lesson_solutions/JavaScriptValidation_files/image011.jpg diff --git a/src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image012.png b/src/main/webapp/lesson_solutions/JavaScriptValidation_files/image012.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image012.png rename to src/main/webapp/lesson_solutions/JavaScriptValidation_files/image012.png diff --git a/src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image013.jpg b/src/main/webapp/lesson_solutions/JavaScriptValidation_files/image013.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image013.jpg rename to src/main/webapp/lesson_solutions/JavaScriptValidation_files/image013.jpg diff --git a/src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image014.png b/src/main/webapp/lesson_solutions/JavaScriptValidation_files/image014.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image014.png rename to src/main/webapp/lesson_solutions/JavaScriptValidation_files/image014.png diff --git a/src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image015.jpg b/src/main/webapp/lesson_solutions/JavaScriptValidation_files/image015.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image015.jpg rename to src/main/webapp/lesson_solutions/JavaScriptValidation_files/image015.jpg diff --git a/src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image016.png b/src/main/webapp/lesson_solutions/JavaScriptValidation_files/image016.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image016.png rename to src/main/webapp/lesson_solutions/JavaScriptValidation_files/image016.png diff --git a/src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image017.jpg b/src/main/webapp/lesson_solutions/JavaScriptValidation_files/image017.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image017.jpg rename to src/main/webapp/lesson_solutions/JavaScriptValidation_files/image017.jpg diff --git a/src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image018.png b/src/main/webapp/lesson_solutions/JavaScriptValidation_files/image018.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image018.png rename to src/main/webapp/lesson_solutions/JavaScriptValidation_files/image018.png diff --git a/src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image019.jpg b/src/main/webapp/lesson_solutions/JavaScriptValidation_files/image019.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image019.jpg rename to src/main/webapp/lesson_solutions/JavaScriptValidation_files/image019.jpg diff --git a/src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image020.png b/src/main/webapp/lesson_solutions/JavaScriptValidation_files/image020.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image020.png rename to src/main/webapp/lesson_solutions/JavaScriptValidation_files/image020.png diff --git a/src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image021.jpg b/src/main/webapp/lesson_solutions/JavaScriptValidation_files/image021.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image021.jpg rename to src/main/webapp/lesson_solutions/JavaScriptValidation_files/image021.jpg diff --git a/src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image022.png b/src/main/webapp/lesson_solutions/JavaScriptValidation_files/image022.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image022.png rename to src/main/webapp/lesson_solutions/JavaScriptValidation_files/image022.png diff --git a/src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image023.jpg b/src/main/webapp/lesson_solutions/JavaScriptValidation_files/image023.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/image023.jpg rename to src/main/webapp/lesson_solutions/JavaScriptValidation_files/image023.jpg diff --git a/src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/themedata.thmx b/src/main/webapp/lesson_solutions/JavaScriptValidation_files/themedata.thmx similarity index 100% rename from src/main/webapp/lesson_solutions_1/JavaScriptValidation_files/themedata.thmx rename to src/main/webapp/lesson_solutions/JavaScriptValidation_files/themedata.thmx diff --git a/src/main/webapp/lesson_solutions_1/LogSpoofing_files/Thumbs.db b/src/main/webapp/lesson_solutions/LogSpoofing_files/Thumbs.db similarity index 100% rename from src/main/webapp/lesson_solutions_1/LogSpoofing_files/Thumbs.db rename to src/main/webapp/lesson_solutions/LogSpoofing_files/Thumbs.db diff --git a/src/main/webapp/lesson_solutions_1/LogSpoofing_files/colorschememapping.xml b/src/main/webapp/lesson_solutions/LogSpoofing_files/colorschememapping.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/LogSpoofing_files/colorschememapping.xml rename to src/main/webapp/lesson_solutions/LogSpoofing_files/colorschememapping.xml diff --git a/src/main/webapp/lesson_solutions_1/LogSpoofing_files/filelist.xml b/src/main/webapp/lesson_solutions/LogSpoofing_files/filelist.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/LogSpoofing_files/filelist.xml rename to src/main/webapp/lesson_solutions/LogSpoofing_files/filelist.xml diff --git a/src/main/webapp/lesson_solutions_1/LogSpoofing_files/image001.png b/src/main/webapp/lesson_solutions/LogSpoofing_files/image001.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/LogSpoofing_files/image001.png rename to src/main/webapp/lesson_solutions/LogSpoofing_files/image001.png diff --git a/src/main/webapp/lesson_solutions_1/LogSpoofing_files/image003.png b/src/main/webapp/lesson_solutions/LogSpoofing_files/image003.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/LogSpoofing_files/image003.png rename to src/main/webapp/lesson_solutions/LogSpoofing_files/image003.png diff --git a/src/main/webapp/lesson_solutions_1/LogSpoofing_files/image005.png b/src/main/webapp/lesson_solutions/LogSpoofing_files/image005.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/LogSpoofing_files/image005.png rename to src/main/webapp/lesson_solutions/LogSpoofing_files/image005.png diff --git a/src/main/webapp/lesson_solutions_1/LogSpoofing_files/image007.jpg b/src/main/webapp/lesson_solutions/LogSpoofing_files/image007.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/LogSpoofing_files/image007.jpg rename to src/main/webapp/lesson_solutions/LogSpoofing_files/image007.jpg diff --git a/src/main/webapp/lesson_solutions_1/LogSpoofing_files/image008.jpg b/src/main/webapp/lesson_solutions/LogSpoofing_files/image008.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/LogSpoofing_files/image008.jpg rename to src/main/webapp/lesson_solutions/LogSpoofing_files/image008.jpg diff --git a/src/main/webapp/lesson_solutions_1/LogSpoofing_files/image009.jpg b/src/main/webapp/lesson_solutions/LogSpoofing_files/image009.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/LogSpoofing_files/image009.jpg rename to src/main/webapp/lesson_solutions/LogSpoofing_files/image009.jpg diff --git a/src/main/webapp/lesson_solutions_1/LogSpoofing_files/themedata.thmx b/src/main/webapp/lesson_solutions/LogSpoofing_files/themedata.thmx similarity index 100% rename from src/main/webapp/lesson_solutions_1/LogSpoofing_files/themedata.thmx rename to src/main/webapp/lesson_solutions/LogSpoofing_files/themedata.thmx diff --git a/src/main/webapp/lesson_solutions_1/MaliciousFileExecution_files/image001.jpg b/src/main/webapp/lesson_solutions/MaliciousFileExecution_files/image001.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/MaliciousFileExecution_files/image001.jpg rename to src/main/webapp/lesson_solutions/MaliciousFileExecution_files/image001.jpg diff --git a/src/main/webapp/lesson_solutions_1/MaliciousFileExecution_files/image002.jpg b/src/main/webapp/lesson_solutions/MaliciousFileExecution_files/image002.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/MaliciousFileExecution_files/image002.jpg rename to src/main/webapp/lesson_solutions/MaliciousFileExecution_files/image002.jpg diff --git a/src/main/webapp/lesson_solutions_1/MultiLevelLogin1_files/login.png b/src/main/webapp/lesson_solutions/MultiLevelLogin1_files/login.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/MultiLevelLogin1_files/login.png rename to src/main/webapp/lesson_solutions/MultiLevelLogin1_files/login.png diff --git a/src/main/webapp/lesson_solutions_1/MultiLevelLogin1_files/success.png b/src/main/webapp/lesson_solutions/MultiLevelLogin1_files/success.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/MultiLevelLogin1_files/success.png rename to src/main/webapp/lesson_solutions/MultiLevelLogin1_files/success.png diff --git a/src/main/webapp/lesson_solutions_1/MultiLevelLogin1_files/tan.png b/src/main/webapp/lesson_solutions/MultiLevelLogin1_files/tan.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/MultiLevelLogin1_files/tan.png rename to src/main/webapp/lesson_solutions/MultiLevelLogin1_files/tan.png diff --git a/src/main/webapp/lesson_solutions_1/MultiLevelLogin1_files/webscarab.png b/src/main/webapp/lesson_solutions/MultiLevelLogin1_files/webscarab.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/MultiLevelLogin1_files/webscarab.png rename to src/main/webapp/lesson_solutions/MultiLevelLogin1_files/webscarab.png diff --git a/src/main/webapp/lesson_solutions_1/MultiLevelLogin2_files/success.png b/src/main/webapp/lesson_solutions/MultiLevelLogin2_files/success.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/MultiLevelLogin2_files/success.png rename to src/main/webapp/lesson_solutions/MultiLevelLogin2_files/success.png diff --git a/src/main/webapp/lesson_solutions_1/PasswordStrength_files/image001.jpg b/src/main/webapp/lesson_solutions/PasswordStrength_files/image001.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/PasswordStrength_files/image001.jpg rename to src/main/webapp/lesson_solutions/PasswordStrength_files/image001.jpg diff --git a/src/main/webapp/lesson_solutions_1/PasswordStrength_files/image002.jpg b/src/main/webapp/lesson_solutions/PasswordStrength_files/image002.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/PasswordStrength_files/image002.jpg rename to src/main/webapp/lesson_solutions/PasswordStrength_files/image002.jpg diff --git a/src/main/webapp/lesson_solutions_1/PasswordStrength_files/image003.jpg b/src/main/webapp/lesson_solutions/PasswordStrength_files/image003.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/PasswordStrength_files/image003.jpg rename to src/main/webapp/lesson_solutions/PasswordStrength_files/image003.jpg diff --git a/src/main/webapp/lesson_solutions_1/PathBasedAccessControl_files/colorschememapping.xml b/src/main/webapp/lesson_solutions/PathBasedAccessControl_files/colorschememapping.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/PathBasedAccessControl_files/colorschememapping.xml rename to src/main/webapp/lesson_solutions/PathBasedAccessControl_files/colorschememapping.xml diff --git a/src/main/webapp/lesson_solutions_1/PathBasedAccessControl_files/filelist.xml b/src/main/webapp/lesson_solutions/PathBasedAccessControl_files/filelist.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/PathBasedAccessControl_files/filelist.xml rename to src/main/webapp/lesson_solutions/PathBasedAccessControl_files/filelist.xml diff --git a/src/main/webapp/lesson_solutions_1/PathBasedAccessControl_files/image001.png b/src/main/webapp/lesson_solutions/PathBasedAccessControl_files/image001.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/PathBasedAccessControl_files/image001.png rename to src/main/webapp/lesson_solutions/PathBasedAccessControl_files/image001.png diff --git a/src/main/webapp/lesson_solutions_1/PathBasedAccessControl_files/image002.jpg b/src/main/webapp/lesson_solutions/PathBasedAccessControl_files/image002.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/PathBasedAccessControl_files/image002.jpg rename to src/main/webapp/lesson_solutions/PathBasedAccessControl_files/image002.jpg diff --git a/src/main/webapp/lesson_solutions_1/PathBasedAccessControl_files/image003.png b/src/main/webapp/lesson_solutions/PathBasedAccessControl_files/image003.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/PathBasedAccessControl_files/image003.png rename to src/main/webapp/lesson_solutions/PathBasedAccessControl_files/image003.png diff --git a/src/main/webapp/lesson_solutions_1/PathBasedAccessControl_files/image004.jpg b/src/main/webapp/lesson_solutions/PathBasedAccessControl_files/image004.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/PathBasedAccessControl_files/image004.jpg rename to src/main/webapp/lesson_solutions/PathBasedAccessControl_files/image004.jpg diff --git a/src/main/webapp/lesson_solutions_1/PathBasedAccessControl_files/image005.png b/src/main/webapp/lesson_solutions/PathBasedAccessControl_files/image005.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/PathBasedAccessControl_files/image005.png rename to src/main/webapp/lesson_solutions/PathBasedAccessControl_files/image005.png diff --git a/src/main/webapp/lesson_solutions_1/PathBasedAccessControl_files/image006.jpg b/src/main/webapp/lesson_solutions/PathBasedAccessControl_files/image006.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/PathBasedAccessControl_files/image006.jpg rename to src/main/webapp/lesson_solutions/PathBasedAccessControl_files/image006.jpg diff --git a/src/main/webapp/lesson_solutions_1/PathBasedAccessControl_files/themedata.thmx b/src/main/webapp/lesson_solutions/PathBasedAccessControl_files/themedata.thmx similarity index 100% rename from src/main/webapp/lesson_solutions_1/PathBasedAccessControl_files/themedata.thmx rename to src/main/webapp/lesson_solutions/PathBasedAccessControl_files/themedata.thmx diff --git a/src/main/webapp/lesson_solutions_1/Phishing_files/image001.jpg b/src/main/webapp/lesson_solutions/Phishing_files/image001.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/Phishing_files/image001.jpg rename to src/main/webapp/lesson_solutions/Phishing_files/image001.jpg diff --git a/src/main/webapp/lesson_solutions_1/ReflectedXSS_files/colorschememapping.xml b/src/main/webapp/lesson_solutions/ReflectedXSS_files/colorschememapping.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/ReflectedXSS_files/colorschememapping.xml rename to src/main/webapp/lesson_solutions/ReflectedXSS_files/colorschememapping.xml diff --git a/src/main/webapp/lesson_solutions_1/ReflectedXSS_files/filelist.xml b/src/main/webapp/lesson_solutions/ReflectedXSS_files/filelist.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/ReflectedXSS_files/filelist.xml rename to src/main/webapp/lesson_solutions/ReflectedXSS_files/filelist.xml diff --git a/src/main/webapp/lesson_solutions_1/ReflectedXSS_files/image001.png b/src/main/webapp/lesson_solutions/ReflectedXSS_files/image001.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/ReflectedXSS_files/image001.png rename to src/main/webapp/lesson_solutions/ReflectedXSS_files/image001.png diff --git a/src/main/webapp/lesson_solutions_1/ReflectedXSS_files/image003.png b/src/main/webapp/lesson_solutions/ReflectedXSS_files/image003.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/ReflectedXSS_files/image003.png rename to src/main/webapp/lesson_solutions/ReflectedXSS_files/image003.png diff --git a/src/main/webapp/lesson_solutions_1/ReflectedXSS_files/image005.jpg b/src/main/webapp/lesson_solutions/ReflectedXSS_files/image005.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/ReflectedXSS_files/image005.jpg rename to src/main/webapp/lesson_solutions/ReflectedXSS_files/image005.jpg diff --git a/src/main/webapp/lesson_solutions_1/ReflectedXSS_files/image006.jpg b/src/main/webapp/lesson_solutions/ReflectedXSS_files/image006.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/ReflectedXSS_files/image006.jpg rename to src/main/webapp/lesson_solutions/ReflectedXSS_files/image006.jpg diff --git a/src/main/webapp/lesson_solutions_1/ReflectedXSS_files/themedata.thmx b/src/main/webapp/lesson_solutions/ReflectedXSS_files/themedata.thmx similarity index 100% rename from src/main/webapp/lesson_solutions_1/ReflectedXSS_files/themedata.thmx rename to src/main/webapp/lesson_solutions/ReflectedXSS_files/themedata.thmx diff --git a/src/main/webapp/lesson_solutions_1/RemoteAdminFlaw_files/colorschememapping.xml b/src/main/webapp/lesson_solutions/RemoteAdminFlaw_files/colorschememapping.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/RemoteAdminFlaw_files/colorschememapping.xml rename to src/main/webapp/lesson_solutions/RemoteAdminFlaw_files/colorschememapping.xml diff --git a/src/main/webapp/lesson_solutions_1/RemoteAdminFlaw_files/filelist.xml b/src/main/webapp/lesson_solutions/RemoteAdminFlaw_files/filelist.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/RemoteAdminFlaw_files/filelist.xml rename to src/main/webapp/lesson_solutions/RemoteAdminFlaw_files/filelist.xml diff --git a/src/main/webapp/lesson_solutions_1/RemoteAdminFlaw_files/image001.png b/src/main/webapp/lesson_solutions/RemoteAdminFlaw_files/image001.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/RemoteAdminFlaw_files/image001.png rename to src/main/webapp/lesson_solutions/RemoteAdminFlaw_files/image001.png diff --git a/src/main/webapp/lesson_solutions_1/RemoteAdminFlaw_files/image002.jpg b/src/main/webapp/lesson_solutions/RemoteAdminFlaw_files/image002.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/RemoteAdminFlaw_files/image002.jpg rename to src/main/webapp/lesson_solutions/RemoteAdminFlaw_files/image002.jpg diff --git a/src/main/webapp/lesson_solutions_1/RemoteAdminFlaw_files/image003.png b/src/main/webapp/lesson_solutions/RemoteAdminFlaw_files/image003.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/RemoteAdminFlaw_files/image003.png rename to src/main/webapp/lesson_solutions/RemoteAdminFlaw_files/image003.png diff --git a/src/main/webapp/lesson_solutions_1/RemoteAdminFlaw_files/image004.jpg b/src/main/webapp/lesson_solutions/RemoteAdminFlaw_files/image004.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/RemoteAdminFlaw_files/image004.jpg rename to src/main/webapp/lesson_solutions/RemoteAdminFlaw_files/image004.jpg diff --git a/src/main/webapp/lesson_solutions_1/RemoteAdminFlaw_files/image005.png b/src/main/webapp/lesson_solutions/RemoteAdminFlaw_files/image005.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/RemoteAdminFlaw_files/image005.png rename to src/main/webapp/lesson_solutions/RemoteAdminFlaw_files/image005.png diff --git a/src/main/webapp/lesson_solutions_1/RemoteAdminFlaw_files/image006.jpg b/src/main/webapp/lesson_solutions/RemoteAdminFlaw_files/image006.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/RemoteAdminFlaw_files/image006.jpg rename to src/main/webapp/lesson_solutions/RemoteAdminFlaw_files/image006.jpg diff --git a/src/main/webapp/lesson_solutions_1/RemoteAdminFlaw_files/themedata.thmx b/src/main/webapp/lesson_solutions/RemoteAdminFlaw_files/themedata.thmx similarity index 100% rename from src/main/webapp/lesson_solutions_1/RemoteAdminFlaw_files/themedata.thmx rename to src/main/webapp/lesson_solutions/RemoteAdminFlaw_files/themedata.thmx diff --git a/src/main/webapp/lesson_solutions_1/SessionFixation_files/sf_stage1.png b/src/main/webapp/lesson_solutions/SessionFixation_files/sf_stage1.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/SessionFixation_files/sf_stage1.png rename to src/main/webapp/lesson_solutions/SessionFixation_files/sf_stage1.png diff --git a/src/main/webapp/lesson_solutions_1/SessionFixation_files/sf_stage2.png b/src/main/webapp/lesson_solutions/SessionFixation_files/sf_stage2.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/SessionFixation_files/sf_stage2.png rename to src/main/webapp/lesson_solutions/SessionFixation_files/sf_stage2.png diff --git a/src/main/webapp/lesson_solutions_1/SessionFixation_files/sf_stage3.png b/src/main/webapp/lesson_solutions/SessionFixation_files/sf_stage3.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/SessionFixation_files/sf_stage3.png rename to src/main/webapp/lesson_solutions/SessionFixation_files/sf_stage3.png diff --git a/src/main/webapp/lesson_solutions_1/SessionFixation_files/sf_stage4_1.png b/src/main/webapp/lesson_solutions/SessionFixation_files/sf_stage4_1.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/SessionFixation_files/sf_stage4_1.png rename to src/main/webapp/lesson_solutions/SessionFixation_files/sf_stage4_1.png diff --git a/src/main/webapp/lesson_solutions_1/SessionFixation_files/sf_stage4_2.png b/src/main/webapp/lesson_solutions/SessionFixation_files/sf_stage4_2.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/SessionFixation_files/sf_stage4_2.png rename to src/main/webapp/lesson_solutions/SessionFixation_files/sf_stage4_2.png diff --git a/src/main/webapp/lesson_solutions_1/SessionFixation_files/sf_success.png b/src/main/webapp/lesson_solutions/SessionFixation_files/sf_success.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/SessionFixation_files/sf_success.png rename to src/main/webapp/lesson_solutions/SessionFixation_files/sf_success.png diff --git a/src/main/webapp/lesson_solutions_1/SilentTransactions_files/colorschememapping.xml b/src/main/webapp/lesson_solutions/SilentTransactions_files/colorschememapping.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/SilentTransactions_files/colorschememapping.xml rename to src/main/webapp/lesson_solutions/SilentTransactions_files/colorschememapping.xml diff --git a/src/main/webapp/lesson_solutions_1/SilentTransactions_files/filelist.xml b/src/main/webapp/lesson_solutions/SilentTransactions_files/filelist.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/SilentTransactions_files/filelist.xml rename to src/main/webapp/lesson_solutions/SilentTransactions_files/filelist.xml diff --git a/src/main/webapp/lesson_solutions_1/SilentTransactions_files/image001.png b/src/main/webapp/lesson_solutions/SilentTransactions_files/image001.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/SilentTransactions_files/image001.png rename to src/main/webapp/lesson_solutions/SilentTransactions_files/image001.png diff --git a/src/main/webapp/lesson_solutions_1/SilentTransactions_files/image003.png b/src/main/webapp/lesson_solutions/SilentTransactions_files/image003.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/SilentTransactions_files/image003.png rename to src/main/webapp/lesson_solutions/SilentTransactions_files/image003.png diff --git a/src/main/webapp/lesson_solutions_1/SilentTransactions_files/image005.png b/src/main/webapp/lesson_solutions/SilentTransactions_files/image005.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/SilentTransactions_files/image005.png rename to src/main/webapp/lesson_solutions/SilentTransactions_files/image005.png diff --git a/src/main/webapp/lesson_solutions_1/SilentTransactions_files/image007.png b/src/main/webapp/lesson_solutions/SilentTransactions_files/image007.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/SilentTransactions_files/image007.png rename to src/main/webapp/lesson_solutions/SilentTransactions_files/image007.png diff --git a/src/main/webapp/lesson_solutions_1/SilentTransactions_files/image009.jpg b/src/main/webapp/lesson_solutions/SilentTransactions_files/image009.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/SilentTransactions_files/image009.jpg rename to src/main/webapp/lesson_solutions/SilentTransactions_files/image009.jpg diff --git a/src/main/webapp/lesson_solutions_1/SilentTransactions_files/image010.jpg b/src/main/webapp/lesson_solutions/SilentTransactions_files/image010.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/SilentTransactions_files/image010.jpg rename to src/main/webapp/lesson_solutions/SilentTransactions_files/image010.jpg diff --git a/src/main/webapp/lesson_solutions_1/SilentTransactions_files/image011.jpg b/src/main/webapp/lesson_solutions/SilentTransactions_files/image011.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/SilentTransactions_files/image011.jpg rename to src/main/webapp/lesson_solutions/SilentTransactions_files/image011.jpg diff --git a/src/main/webapp/lesson_solutions_1/SilentTransactions_files/image012.jpg b/src/main/webapp/lesson_solutions/SilentTransactions_files/image012.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/SilentTransactions_files/image012.jpg rename to src/main/webapp/lesson_solutions/SilentTransactions_files/image012.jpg diff --git a/src/main/webapp/lesson_solutions_1/SilentTransactions_files/themedata.thmx b/src/main/webapp/lesson_solutions/SilentTransactions_files/themedata.thmx similarity index 100% rename from src/main/webapp/lesson_solutions_1/SilentTransactions_files/themedata.thmx rename to src/main/webapp/lesson_solutions/SilentTransactions_files/themedata.thmx diff --git a/src/main/webapp/lesson_solutions_1/SoapRequest_files/colorschememapping.xml b/src/main/webapp/lesson_solutions/SoapRequest_files/colorschememapping.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/SoapRequest_files/colorschememapping.xml rename to src/main/webapp/lesson_solutions/SoapRequest_files/colorschememapping.xml diff --git a/src/main/webapp/lesson_solutions_1/SoapRequest_files/filelist.xml b/src/main/webapp/lesson_solutions/SoapRequest_files/filelist.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/SoapRequest_files/filelist.xml rename to src/main/webapp/lesson_solutions/SoapRequest_files/filelist.xml diff --git a/src/main/webapp/lesson_solutions_1/SoapRequest_files/image001.png b/src/main/webapp/lesson_solutions/SoapRequest_files/image001.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/SoapRequest_files/image001.png rename to src/main/webapp/lesson_solutions/SoapRequest_files/image001.png diff --git a/src/main/webapp/lesson_solutions_1/SoapRequest_files/image002.jpg b/src/main/webapp/lesson_solutions/SoapRequest_files/image002.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/SoapRequest_files/image002.jpg rename to src/main/webapp/lesson_solutions/SoapRequest_files/image002.jpg diff --git a/src/main/webapp/lesson_solutions_1/SoapRequest_files/image003.png b/src/main/webapp/lesson_solutions/SoapRequest_files/image003.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/SoapRequest_files/image003.png rename to src/main/webapp/lesson_solutions/SoapRequest_files/image003.png diff --git a/src/main/webapp/lesson_solutions_1/SoapRequest_files/image004.jpg b/src/main/webapp/lesson_solutions/SoapRequest_files/image004.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/SoapRequest_files/image004.jpg rename to src/main/webapp/lesson_solutions/SoapRequest_files/image004.jpg diff --git a/src/main/webapp/lesson_solutions_1/SoapRequest_files/image005.png b/src/main/webapp/lesson_solutions/SoapRequest_files/image005.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/SoapRequest_files/image005.png rename to src/main/webapp/lesson_solutions/SoapRequest_files/image005.png diff --git a/src/main/webapp/lesson_solutions_1/SoapRequest_files/image006.jpg b/src/main/webapp/lesson_solutions/SoapRequest_files/image006.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/SoapRequest_files/image006.jpg rename to src/main/webapp/lesson_solutions/SoapRequest_files/image006.jpg diff --git a/src/main/webapp/lesson_solutions_1/SoapRequest_files/image007.png b/src/main/webapp/lesson_solutions/SoapRequest_files/image007.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/SoapRequest_files/image007.png rename to src/main/webapp/lesson_solutions/SoapRequest_files/image007.png diff --git a/src/main/webapp/lesson_solutions_1/SoapRequest_files/image008.jpg b/src/main/webapp/lesson_solutions/SoapRequest_files/image008.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/SoapRequest_files/image008.jpg rename to src/main/webapp/lesson_solutions/SoapRequest_files/image008.jpg diff --git a/src/main/webapp/lesson_solutions_1/SoapRequest_files/image009.png b/src/main/webapp/lesson_solutions/SoapRequest_files/image009.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/SoapRequest_files/image009.png rename to src/main/webapp/lesson_solutions/SoapRequest_files/image009.png diff --git a/src/main/webapp/lesson_solutions_1/SoapRequest_files/image010.jpg b/src/main/webapp/lesson_solutions/SoapRequest_files/image010.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/SoapRequest_files/image010.jpg rename to src/main/webapp/lesson_solutions/SoapRequest_files/image010.jpg diff --git a/src/main/webapp/lesson_solutions_1/SoapRequest_files/image011.jpg b/src/main/webapp/lesson_solutions/SoapRequest_files/image011.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/SoapRequest_files/image011.jpg rename to src/main/webapp/lesson_solutions/SoapRequest_files/image011.jpg diff --git a/src/main/webapp/lesson_solutions_1/SoapRequest_files/themedata.thmx b/src/main/webapp/lesson_solutions/SoapRequest_files/themedata.thmx similarity index 100% rename from src/main/webapp/lesson_solutions_1/SoapRequest_files/themedata.thmx rename to src/main/webapp/lesson_solutions/SoapRequest_files/themedata.thmx diff --git a/src/main/webapp/lesson_solutions_1/SqlAddData_files/image001.jpg b/src/main/webapp/lesson_solutions/SqlAddData_files/image001.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/SqlAddData_files/image001.jpg rename to src/main/webapp/lesson_solutions/SqlAddData_files/image001.jpg diff --git a/src/main/webapp/lesson_solutions_1/SqlModifyData_files/image001.jpg b/src/main/webapp/lesson_solutions/SqlModifyData_files/image001.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/SqlModifyData_files/image001.jpg rename to src/main/webapp/lesson_solutions/SqlModifyData_files/image001.jpg diff --git a/src/main/webapp/lesson_solutions_1/SqlNumericInjection_files/colorschememapping.xml b/src/main/webapp/lesson_solutions/SqlNumericInjection_files/colorschememapping.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/SqlNumericInjection_files/colorschememapping.xml rename to src/main/webapp/lesson_solutions/SqlNumericInjection_files/colorschememapping.xml diff --git a/src/main/webapp/lesson_solutions_1/SqlNumericInjection_files/filelist.xml b/src/main/webapp/lesson_solutions/SqlNumericInjection_files/filelist.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/SqlNumericInjection_files/filelist.xml rename to src/main/webapp/lesson_solutions/SqlNumericInjection_files/filelist.xml diff --git a/src/main/webapp/lesson_solutions_1/SqlNumericInjection_files/image001.png b/src/main/webapp/lesson_solutions/SqlNumericInjection_files/image001.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/SqlNumericInjection_files/image001.png rename to src/main/webapp/lesson_solutions/SqlNumericInjection_files/image001.png diff --git a/src/main/webapp/lesson_solutions_1/SqlNumericInjection_files/image002.jpg b/src/main/webapp/lesson_solutions/SqlNumericInjection_files/image002.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/SqlNumericInjection_files/image002.jpg rename to src/main/webapp/lesson_solutions/SqlNumericInjection_files/image002.jpg diff --git a/src/main/webapp/lesson_solutions_1/SqlNumericInjection_files/image003.png b/src/main/webapp/lesson_solutions/SqlNumericInjection_files/image003.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/SqlNumericInjection_files/image003.png rename to src/main/webapp/lesson_solutions/SqlNumericInjection_files/image003.png diff --git a/src/main/webapp/lesson_solutions_1/SqlNumericInjection_files/image004.jpg b/src/main/webapp/lesson_solutions/SqlNumericInjection_files/image004.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/SqlNumericInjection_files/image004.jpg rename to src/main/webapp/lesson_solutions/SqlNumericInjection_files/image004.jpg diff --git a/src/main/webapp/lesson_solutions_1/SqlNumericInjection_files/image005.png b/src/main/webapp/lesson_solutions/SqlNumericInjection_files/image005.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/SqlNumericInjection_files/image005.png rename to src/main/webapp/lesson_solutions/SqlNumericInjection_files/image005.png diff --git a/src/main/webapp/lesson_solutions_1/SqlNumericInjection_files/image006.jpg b/src/main/webapp/lesson_solutions/SqlNumericInjection_files/image006.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/SqlNumericInjection_files/image006.jpg rename to src/main/webapp/lesson_solutions/SqlNumericInjection_files/image006.jpg diff --git a/src/main/webapp/lesson_solutions_1/SqlNumericInjection_files/numericinjection.png b/src/main/webapp/lesson_solutions/SqlNumericInjection_files/numericinjection.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/SqlNumericInjection_files/numericinjection.png rename to src/main/webapp/lesson_solutions/SqlNumericInjection_files/numericinjection.png diff --git a/src/main/webapp/lesson_solutions_1/SqlNumericInjection_files/numericinjection_solved.png b/src/main/webapp/lesson_solutions/SqlNumericInjection_files/numericinjection_solved.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/SqlNumericInjection_files/numericinjection_solved.png rename to src/main/webapp/lesson_solutions/SqlNumericInjection_files/numericinjection_solved.png diff --git a/src/main/webapp/lesson_solutions_1/SqlNumericInjection_files/themedata.thmx b/src/main/webapp/lesson_solutions/SqlNumericInjection_files/themedata.thmx similarity index 100% rename from src/main/webapp/lesson_solutions_1/SqlNumericInjection_files/themedata.thmx rename to src/main/webapp/lesson_solutions/SqlNumericInjection_files/themedata.thmx diff --git a/src/main/webapp/lesson_solutions_1/SqlStringInjection_files/colorschememapping.xml b/src/main/webapp/lesson_solutions/SqlStringInjection_files/colorschememapping.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/SqlStringInjection_files/colorschememapping.xml rename to src/main/webapp/lesson_solutions/SqlStringInjection_files/colorschememapping.xml diff --git a/src/main/webapp/lesson_solutions_1/SqlStringInjection_files/filelist.xml b/src/main/webapp/lesson_solutions/SqlStringInjection_files/filelist.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/SqlStringInjection_files/filelist.xml rename to src/main/webapp/lesson_solutions/SqlStringInjection_files/filelist.xml diff --git a/src/main/webapp/lesson_solutions_1/SqlStringInjection_files/image001.png b/src/main/webapp/lesson_solutions/SqlStringInjection_files/image001.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/SqlStringInjection_files/image001.png rename to src/main/webapp/lesson_solutions/SqlStringInjection_files/image001.png diff --git a/src/main/webapp/lesson_solutions_1/SqlStringInjection_files/image003.png b/src/main/webapp/lesson_solutions/SqlStringInjection_files/image003.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/SqlStringInjection_files/image003.png rename to src/main/webapp/lesson_solutions/SqlStringInjection_files/image003.png diff --git a/src/main/webapp/lesson_solutions_1/SqlStringInjection_files/image005.jpg b/src/main/webapp/lesson_solutions/SqlStringInjection_files/image005.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/SqlStringInjection_files/image005.jpg rename to src/main/webapp/lesson_solutions/SqlStringInjection_files/image005.jpg diff --git a/src/main/webapp/lesson_solutions_1/SqlStringInjection_files/image006.jpg b/src/main/webapp/lesson_solutions/SqlStringInjection_files/image006.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/SqlStringInjection_files/image006.jpg rename to src/main/webapp/lesson_solutions/SqlStringInjection_files/image006.jpg diff --git a/src/main/webapp/lesson_solutions_1/SqlStringInjection_files/themedata.thmx b/src/main/webapp/lesson_solutions/SqlStringInjection_files/themedata.thmx similarity index 100% rename from src/main/webapp/lesson_solutions_1/SqlStringInjection_files/themedata.thmx rename to src/main/webapp/lesson_solutions/SqlStringInjection_files/themedata.thmx diff --git a/src/main/webapp/lesson_solutions_1/StoredXSS_files/colorschememapping.xml b/src/main/webapp/lesson_solutions/StoredXSS_files/colorschememapping.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/StoredXSS_files/colorschememapping.xml rename to src/main/webapp/lesson_solutions/StoredXSS_files/colorschememapping.xml diff --git a/src/main/webapp/lesson_solutions_1/StoredXSS_files/filelist.xml b/src/main/webapp/lesson_solutions/StoredXSS_files/filelist.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/StoredXSS_files/filelist.xml rename to src/main/webapp/lesson_solutions/StoredXSS_files/filelist.xml diff --git a/src/main/webapp/lesson_solutions_1/StoredXSS_files/image001.png b/src/main/webapp/lesson_solutions/StoredXSS_files/image001.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/StoredXSS_files/image001.png rename to src/main/webapp/lesson_solutions/StoredXSS_files/image001.png diff --git a/src/main/webapp/lesson_solutions_1/StoredXSS_files/image003.png b/src/main/webapp/lesson_solutions/StoredXSS_files/image003.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/StoredXSS_files/image003.png rename to src/main/webapp/lesson_solutions/StoredXSS_files/image003.png diff --git a/src/main/webapp/lesson_solutions_1/StoredXSS_files/image005.png b/src/main/webapp/lesson_solutions/StoredXSS_files/image005.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/StoredXSS_files/image005.png rename to src/main/webapp/lesson_solutions/StoredXSS_files/image005.png diff --git a/src/main/webapp/lesson_solutions_1/StoredXSS_files/image007.jpg b/src/main/webapp/lesson_solutions/StoredXSS_files/image007.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/StoredXSS_files/image007.jpg rename to src/main/webapp/lesson_solutions/StoredXSS_files/image007.jpg diff --git a/src/main/webapp/lesson_solutions_1/StoredXSS_files/image008.jpg b/src/main/webapp/lesson_solutions/StoredXSS_files/image008.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/StoredXSS_files/image008.jpg rename to src/main/webapp/lesson_solutions/StoredXSS_files/image008.jpg diff --git a/src/main/webapp/lesson_solutions_1/StoredXSS_files/image009.jpg b/src/main/webapp/lesson_solutions/StoredXSS_files/image009.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/StoredXSS_files/image009.jpg rename to src/main/webapp/lesson_solutions/StoredXSS_files/image009.jpg diff --git a/src/main/webapp/lesson_solutions_1/StoredXSS_files/themedata.thmx b/src/main/webapp/lesson_solutions/StoredXSS_files/themedata.thmx similarity index 100% rename from src/main/webapp/lesson_solutions_1/StoredXSS_files/themedata.thmx rename to src/main/webapp/lesson_solutions/StoredXSS_files/themedata.thmx diff --git a/src/main/webapp/lesson_solutions_1/ThreadSafetyProblem_files/colorschememapping.xml b/src/main/webapp/lesson_solutions/ThreadSafetyProblem_files/colorschememapping.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/ThreadSafetyProblem_files/colorschememapping.xml rename to src/main/webapp/lesson_solutions/ThreadSafetyProblem_files/colorschememapping.xml diff --git a/src/main/webapp/lesson_solutions_1/ThreadSafetyProblem_files/filelist.xml b/src/main/webapp/lesson_solutions/ThreadSafetyProblem_files/filelist.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/ThreadSafetyProblem_files/filelist.xml rename to src/main/webapp/lesson_solutions/ThreadSafetyProblem_files/filelist.xml diff --git a/src/main/webapp/lesson_solutions_1/ThreadSafetyProblem_files/image001.png b/src/main/webapp/lesson_solutions/ThreadSafetyProblem_files/image001.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/ThreadSafetyProblem_files/image001.png rename to src/main/webapp/lesson_solutions/ThreadSafetyProblem_files/image001.png diff --git a/src/main/webapp/lesson_solutions_1/ThreadSafetyProblem_files/image002.jpg b/src/main/webapp/lesson_solutions/ThreadSafetyProblem_files/image002.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/ThreadSafetyProblem_files/image002.jpg rename to src/main/webapp/lesson_solutions/ThreadSafetyProblem_files/image002.jpg diff --git a/src/main/webapp/lesson_solutions_1/ThreadSafetyProblem_files/image003.png b/src/main/webapp/lesson_solutions/ThreadSafetyProblem_files/image003.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/ThreadSafetyProblem_files/image003.png rename to src/main/webapp/lesson_solutions/ThreadSafetyProblem_files/image003.png diff --git a/src/main/webapp/lesson_solutions_1/ThreadSafetyProblem_files/image004.jpg b/src/main/webapp/lesson_solutions/ThreadSafetyProblem_files/image004.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/ThreadSafetyProblem_files/image004.jpg rename to src/main/webapp/lesson_solutions/ThreadSafetyProblem_files/image004.jpg diff --git a/src/main/webapp/lesson_solutions_1/ThreadSafetyProblem_files/image007.png b/src/main/webapp/lesson_solutions/ThreadSafetyProblem_files/image007.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/ThreadSafetyProblem_files/image007.png rename to src/main/webapp/lesson_solutions/ThreadSafetyProblem_files/image007.png diff --git a/src/main/webapp/lesson_solutions_1/ThreadSafetyProblem_files/image009.jpg b/src/main/webapp/lesson_solutions/ThreadSafetyProblem_files/image009.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/ThreadSafetyProblem_files/image009.jpg rename to src/main/webapp/lesson_solutions/ThreadSafetyProblem_files/image009.jpg diff --git a/src/main/webapp/lesson_solutions_1/ThreadSafetyProblem_files/themedata.thmx b/src/main/webapp/lesson_solutions/ThreadSafetyProblem_files/themedata.thmx similarity index 100% rename from src/main/webapp/lesson_solutions_1/ThreadSafetyProblem_files/themedata.thmx rename to src/main/webapp/lesson_solutions/ThreadSafetyProblem_files/themedata.thmx diff --git a/src/main/webapp/lesson_solutions_1/TraceXSS_files/colorschememapping.xml b/src/main/webapp/lesson_solutions/TraceXSS_files/colorschememapping.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/TraceXSS_files/colorschememapping.xml rename to src/main/webapp/lesson_solutions/TraceXSS_files/colorschememapping.xml diff --git a/src/main/webapp/lesson_solutions_1/TraceXSS_files/filelist.xml b/src/main/webapp/lesson_solutions/TraceXSS_files/filelist.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/TraceXSS_files/filelist.xml rename to src/main/webapp/lesson_solutions/TraceXSS_files/filelist.xml diff --git a/src/main/webapp/lesson_solutions_1/TraceXSS_files/image001.png b/src/main/webapp/lesson_solutions/TraceXSS_files/image001.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/TraceXSS_files/image001.png rename to src/main/webapp/lesson_solutions/TraceXSS_files/image001.png diff --git a/src/main/webapp/lesson_solutions_1/TraceXSS_files/image002.jpg b/src/main/webapp/lesson_solutions/TraceXSS_files/image002.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/TraceXSS_files/image002.jpg rename to src/main/webapp/lesson_solutions/TraceXSS_files/image002.jpg diff --git a/src/main/webapp/lesson_solutions_1/TraceXSS_files/themedata.thmx b/src/main/webapp/lesson_solutions/TraceXSS_files/themedata.thmx similarity index 100% rename from src/main/webapp/lesson_solutions_1/TraceXSS_files/themedata.thmx rename to src/main/webapp/lesson_solutions/TraceXSS_files/themedata.thmx diff --git a/src/main/webapp/lesson_solutions_1/UncheckedEmail_files/colorschememapping.xml b/src/main/webapp/lesson_solutions/UncheckedEmail_files/colorschememapping.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/UncheckedEmail_files/colorschememapping.xml rename to src/main/webapp/lesson_solutions/UncheckedEmail_files/colorschememapping.xml diff --git a/src/main/webapp/lesson_solutions_1/UncheckedEmail_files/filelist.xml b/src/main/webapp/lesson_solutions/UncheckedEmail_files/filelist.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/UncheckedEmail_files/filelist.xml rename to src/main/webapp/lesson_solutions/UncheckedEmail_files/filelist.xml diff --git a/src/main/webapp/lesson_solutions_1/UncheckedEmail_files/image001.png b/src/main/webapp/lesson_solutions/UncheckedEmail_files/image001.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/UncheckedEmail_files/image001.png rename to src/main/webapp/lesson_solutions/UncheckedEmail_files/image001.png diff --git a/src/main/webapp/lesson_solutions_1/UncheckedEmail_files/image002.jpg b/src/main/webapp/lesson_solutions/UncheckedEmail_files/image002.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/UncheckedEmail_files/image002.jpg rename to src/main/webapp/lesson_solutions/UncheckedEmail_files/image002.jpg diff --git a/src/main/webapp/lesson_solutions_1/UncheckedEmail_files/image003.png b/src/main/webapp/lesson_solutions/UncheckedEmail_files/image003.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/UncheckedEmail_files/image003.png rename to src/main/webapp/lesson_solutions/UncheckedEmail_files/image003.png diff --git a/src/main/webapp/lesson_solutions_1/UncheckedEmail_files/image004.jpg b/src/main/webapp/lesson_solutions/UncheckedEmail_files/image004.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/UncheckedEmail_files/image004.jpg rename to src/main/webapp/lesson_solutions/UncheckedEmail_files/image004.jpg diff --git a/src/main/webapp/lesson_solutions_1/UncheckedEmail_files/image005.png b/src/main/webapp/lesson_solutions/UncheckedEmail_files/image005.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/UncheckedEmail_files/image005.png rename to src/main/webapp/lesson_solutions/UncheckedEmail_files/image005.png diff --git a/src/main/webapp/lesson_solutions_1/UncheckedEmail_files/image006.jpg b/src/main/webapp/lesson_solutions/UncheckedEmail_files/image006.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/UncheckedEmail_files/image006.jpg rename to src/main/webapp/lesson_solutions/UncheckedEmail_files/image006.jpg diff --git a/src/main/webapp/lesson_solutions_1/UncheckedEmail_files/image007.png b/src/main/webapp/lesson_solutions/UncheckedEmail_files/image007.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/UncheckedEmail_files/image007.png rename to src/main/webapp/lesson_solutions/UncheckedEmail_files/image007.png diff --git a/src/main/webapp/lesson_solutions_1/UncheckedEmail_files/image008.jpg b/src/main/webapp/lesson_solutions/UncheckedEmail_files/image008.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/UncheckedEmail_files/image008.jpg rename to src/main/webapp/lesson_solutions/UncheckedEmail_files/image008.jpg diff --git a/src/main/webapp/lesson_solutions_1/UncheckedEmail_files/themedata.thmx b/src/main/webapp/lesson_solutions/UncheckedEmail_files/themedata.thmx similarity index 100% rename from src/main/webapp/lesson_solutions_1/UncheckedEmail_files/themedata.thmx rename to src/main/webapp/lesson_solutions/UncheckedEmail_files/themedata.thmx diff --git a/src/main/webapp/lesson_solutions_1/WSDLScanning_files/colorschememapping.xml b/src/main/webapp/lesson_solutions/WSDLScanning_files/colorschememapping.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/WSDLScanning_files/colorschememapping.xml rename to src/main/webapp/lesson_solutions/WSDLScanning_files/colorschememapping.xml diff --git a/src/main/webapp/lesson_solutions_1/WSDLScanning_files/filelist.xml b/src/main/webapp/lesson_solutions/WSDLScanning_files/filelist.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/WSDLScanning_files/filelist.xml rename to src/main/webapp/lesson_solutions/WSDLScanning_files/filelist.xml diff --git a/src/main/webapp/lesson_solutions_1/WSDLScanning_files/image001.png b/src/main/webapp/lesson_solutions/WSDLScanning_files/image001.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/WSDLScanning_files/image001.png rename to src/main/webapp/lesson_solutions/WSDLScanning_files/image001.png diff --git a/src/main/webapp/lesson_solutions_1/WSDLScanning_files/image003.png b/src/main/webapp/lesson_solutions/WSDLScanning_files/image003.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/WSDLScanning_files/image003.png rename to src/main/webapp/lesson_solutions/WSDLScanning_files/image003.png diff --git a/src/main/webapp/lesson_solutions_1/WSDLScanning_files/image005.png b/src/main/webapp/lesson_solutions/WSDLScanning_files/image005.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/WSDLScanning_files/image005.png rename to src/main/webapp/lesson_solutions/WSDLScanning_files/image005.png diff --git a/src/main/webapp/lesson_solutions_1/WSDLScanning_files/image007.png b/src/main/webapp/lesson_solutions/WSDLScanning_files/image007.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/WSDLScanning_files/image007.png rename to src/main/webapp/lesson_solutions/WSDLScanning_files/image007.png diff --git a/src/main/webapp/lesson_solutions_1/WSDLScanning_files/image009.jpg b/src/main/webapp/lesson_solutions/WSDLScanning_files/image009.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/WSDLScanning_files/image009.jpg rename to src/main/webapp/lesson_solutions/WSDLScanning_files/image009.jpg diff --git a/src/main/webapp/lesson_solutions_1/WSDLScanning_files/image010.jpg b/src/main/webapp/lesson_solutions/WSDLScanning_files/image010.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/WSDLScanning_files/image010.jpg rename to src/main/webapp/lesson_solutions/WSDLScanning_files/image010.jpg diff --git a/src/main/webapp/lesson_solutions_1/WSDLScanning_files/image011.jpg b/src/main/webapp/lesson_solutions/WSDLScanning_files/image011.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/WSDLScanning_files/image011.jpg rename to src/main/webapp/lesson_solutions/WSDLScanning_files/image011.jpg diff --git a/src/main/webapp/lesson_solutions_1/WSDLScanning_files/image012.jpg b/src/main/webapp/lesson_solutions/WSDLScanning_files/image012.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/WSDLScanning_files/image012.jpg rename to src/main/webapp/lesson_solutions/WSDLScanning_files/image012.jpg diff --git a/src/main/webapp/lesson_solutions_1/WSDLScanning_files/themedata.thmx b/src/main/webapp/lesson_solutions/WSDLScanning_files/themedata.thmx similarity index 100% rename from src/main/webapp/lesson_solutions_1/WSDLScanning_files/themedata.thmx rename to src/main/webapp/lesson_solutions/WSDLScanning_files/themedata.thmx diff --git a/src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/colorschememapping.xml b/src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/colorschememapping.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/colorschememapping.xml rename to src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/colorschememapping.xml diff --git a/src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/filelist.xml b/src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/filelist.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/filelist.xml rename to src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/filelist.xml diff --git a/src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image001.png b/src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image001.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image001.png rename to src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image001.png diff --git a/src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image003.png b/src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image003.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image003.png rename to src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image003.png diff --git a/src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image005.png b/src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image005.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image005.png rename to src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image005.png diff --git a/src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image007.png b/src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image007.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image007.png rename to src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image007.png diff --git a/src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image009.png b/src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image009.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image009.png rename to src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image009.png diff --git a/src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image011.png b/src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image011.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image011.png rename to src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image011.png diff --git a/src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image013.png b/src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image013.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image013.png rename to src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image013.png diff --git a/src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image015.png b/src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image015.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image015.png rename to src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image015.png diff --git a/src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image017.png b/src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image017.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image017.png rename to src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image017.png diff --git a/src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image019.jpg b/src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image019.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image019.jpg rename to src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image019.jpg diff --git a/src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image020.jpg b/src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image020.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image020.jpg rename to src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image020.jpg diff --git a/src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image021.jpg b/src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image021.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image021.jpg rename to src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image021.jpg diff --git a/src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image022.jpg b/src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image022.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image022.jpg rename to src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image022.jpg diff --git a/src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image023.jpg b/src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image023.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image023.jpg rename to src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image023.jpg diff --git a/src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image024.jpg b/src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image024.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image024.jpg rename to src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image024.jpg diff --git a/src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image025.jpg b/src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image025.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image025.jpg rename to src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image025.jpg diff --git a/src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image026.jpg b/src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image026.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image026.jpg rename to src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image026.jpg diff --git a/src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image027.jpg b/src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image027.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/image027.jpg rename to src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/image027.jpg diff --git a/src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/themedata.thmx b/src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/themedata.thmx similarity index 100% rename from src/main/webapp/lesson_solutions_1/WeakAuthenticationCookie_files/themedata.thmx rename to src/main/webapp/lesson_solutions/WeakAuthenticationCookie_files/themedata.thmx diff --git a/src/main/webapp/lesson_solutions_1/WeakSessionID_files/image001.jpg b/src/main/webapp/lesson_solutions/WeakSessionID_files/image001.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/WeakSessionID_files/image001.jpg rename to src/main/webapp/lesson_solutions/WeakSessionID_files/image001.jpg diff --git a/src/main/webapp/lesson_solutions_1/WeakSessionID_files/image002.jpg b/src/main/webapp/lesson_solutions/WeakSessionID_files/image002.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/WeakSessionID_files/image002.jpg rename to src/main/webapp/lesson_solutions/WeakSessionID_files/image002.jpg diff --git a/src/main/webapp/lesson_solutions_1/WeakSessionID_files/image003.jpg b/src/main/webapp/lesson_solutions/WeakSessionID_files/image003.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/WeakSessionID_files/image003.jpg rename to src/main/webapp/lesson_solutions/WeakSessionID_files/image003.jpg diff --git a/src/main/webapp/lesson_solutions_1/WeakSessionID_files/image004.jpg b/src/main/webapp/lesson_solutions/WeakSessionID_files/image004.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/WeakSessionID_files/image004.jpg rename to src/main/webapp/lesson_solutions/WeakSessionID_files/image004.jpg diff --git a/src/main/webapp/lesson_solutions_1/WeakSessionID_files/image005.jpg b/src/main/webapp/lesson_solutions/WeakSessionID_files/image005.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/WeakSessionID_files/image005.jpg rename to src/main/webapp/lesson_solutions/WeakSessionID_files/image005.jpg diff --git a/src/main/webapp/lesson_solutions_1/WeakSessionID_files/image006.jpg b/src/main/webapp/lesson_solutions/WeakSessionID_files/image006.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/WeakSessionID_files/image006.jpg rename to src/main/webapp/lesson_solutions/WeakSessionID_files/image006.jpg diff --git a/src/main/webapp/lesson_solutions_1/WsSAXInjection_files/colorschememapping.xml b/src/main/webapp/lesson_solutions/WsSAXInjection_files/colorschememapping.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/WsSAXInjection_files/colorschememapping.xml rename to src/main/webapp/lesson_solutions/WsSAXInjection_files/colorschememapping.xml diff --git a/src/main/webapp/lesson_solutions_1/WsSAXInjection_files/filelist.xml b/src/main/webapp/lesson_solutions/WsSAXInjection_files/filelist.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/WsSAXInjection_files/filelist.xml rename to src/main/webapp/lesson_solutions/WsSAXInjection_files/filelist.xml diff --git a/src/main/webapp/lesson_solutions_1/WsSAXInjection_files/image001.png b/src/main/webapp/lesson_solutions/WsSAXInjection_files/image001.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/WsSAXInjection_files/image001.png rename to src/main/webapp/lesson_solutions/WsSAXInjection_files/image001.png diff --git a/src/main/webapp/lesson_solutions_1/WsSAXInjection_files/image002.jpg b/src/main/webapp/lesson_solutions/WsSAXInjection_files/image002.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/WsSAXInjection_files/image002.jpg rename to src/main/webapp/lesson_solutions/WsSAXInjection_files/image002.jpg diff --git a/src/main/webapp/lesson_solutions_1/WsSAXInjection_files/image003.png b/src/main/webapp/lesson_solutions/WsSAXInjection_files/image003.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/WsSAXInjection_files/image003.png rename to src/main/webapp/lesson_solutions/WsSAXInjection_files/image003.png diff --git a/src/main/webapp/lesson_solutions_1/WsSAXInjection_files/image004.jpg b/src/main/webapp/lesson_solutions/WsSAXInjection_files/image004.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/WsSAXInjection_files/image004.jpg rename to src/main/webapp/lesson_solutions/WsSAXInjection_files/image004.jpg diff --git a/src/main/webapp/lesson_solutions_1/WsSAXInjection_files/image005.png b/src/main/webapp/lesson_solutions/WsSAXInjection_files/image005.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/WsSAXInjection_files/image005.png rename to src/main/webapp/lesson_solutions/WsSAXInjection_files/image005.png diff --git a/src/main/webapp/lesson_solutions_1/WsSAXInjection_files/image006.jpg b/src/main/webapp/lesson_solutions/WsSAXInjection_files/image006.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/WsSAXInjection_files/image006.jpg rename to src/main/webapp/lesson_solutions/WsSAXInjection_files/image006.jpg diff --git a/src/main/webapp/lesson_solutions_1/WsSAXInjection_files/image007.png b/src/main/webapp/lesson_solutions/WsSAXInjection_files/image007.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/WsSAXInjection_files/image007.png rename to src/main/webapp/lesson_solutions/WsSAXInjection_files/image007.png diff --git a/src/main/webapp/lesson_solutions_1/WsSAXInjection_files/image008.jpg b/src/main/webapp/lesson_solutions/WsSAXInjection_files/image008.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/WsSAXInjection_files/image008.jpg rename to src/main/webapp/lesson_solutions/WsSAXInjection_files/image008.jpg diff --git a/src/main/webapp/lesson_solutions_1/WsSAXInjection_files/image009.png b/src/main/webapp/lesson_solutions/WsSAXInjection_files/image009.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/WsSAXInjection_files/image009.png rename to src/main/webapp/lesson_solutions/WsSAXInjection_files/image009.png diff --git a/src/main/webapp/lesson_solutions_1/WsSAXInjection_files/image010.jpg b/src/main/webapp/lesson_solutions/WsSAXInjection_files/image010.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/WsSAXInjection_files/image010.jpg rename to src/main/webapp/lesson_solutions/WsSAXInjection_files/image010.jpg diff --git a/src/main/webapp/lesson_solutions_1/WsSAXInjection_files/themedata.thmx b/src/main/webapp/lesson_solutions/WsSAXInjection_files/themedata.thmx similarity index 100% rename from src/main/webapp/lesson_solutions_1/WsSAXInjection_files/themedata.thmx rename to src/main/webapp/lesson_solutions/WsSAXInjection_files/themedata.thmx diff --git a/src/main/webapp/lesson_solutions_1/WsSqlInjection_files/colorschememapping.xml b/src/main/webapp/lesson_solutions/WsSqlInjection_files/colorschememapping.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/WsSqlInjection_files/colorschememapping.xml rename to src/main/webapp/lesson_solutions/WsSqlInjection_files/colorschememapping.xml diff --git a/src/main/webapp/lesson_solutions_1/WsSqlInjection_files/filelist.xml b/src/main/webapp/lesson_solutions/WsSqlInjection_files/filelist.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/WsSqlInjection_files/filelist.xml rename to src/main/webapp/lesson_solutions/WsSqlInjection_files/filelist.xml diff --git a/src/main/webapp/lesson_solutions_1/WsSqlInjection_files/image001.png b/src/main/webapp/lesson_solutions/WsSqlInjection_files/image001.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/WsSqlInjection_files/image001.png rename to src/main/webapp/lesson_solutions/WsSqlInjection_files/image001.png diff --git a/src/main/webapp/lesson_solutions_1/WsSqlInjection_files/image002.jpg b/src/main/webapp/lesson_solutions/WsSqlInjection_files/image002.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/WsSqlInjection_files/image002.jpg rename to src/main/webapp/lesson_solutions/WsSqlInjection_files/image002.jpg diff --git a/src/main/webapp/lesson_solutions_1/WsSqlInjection_files/image003.png b/src/main/webapp/lesson_solutions/WsSqlInjection_files/image003.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/WsSqlInjection_files/image003.png rename to src/main/webapp/lesson_solutions/WsSqlInjection_files/image003.png diff --git a/src/main/webapp/lesson_solutions_1/WsSqlInjection_files/image004.jpg b/src/main/webapp/lesson_solutions/WsSqlInjection_files/image004.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/WsSqlInjection_files/image004.jpg rename to src/main/webapp/lesson_solutions/WsSqlInjection_files/image004.jpg diff --git a/src/main/webapp/lesson_solutions_1/WsSqlInjection_files/image005.png b/src/main/webapp/lesson_solutions/WsSqlInjection_files/image005.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/WsSqlInjection_files/image005.png rename to src/main/webapp/lesson_solutions/WsSqlInjection_files/image005.png diff --git a/src/main/webapp/lesson_solutions_1/WsSqlInjection_files/image006.jpg b/src/main/webapp/lesson_solutions/WsSqlInjection_files/image006.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/WsSqlInjection_files/image006.jpg rename to src/main/webapp/lesson_solutions/WsSqlInjection_files/image006.jpg diff --git a/src/main/webapp/lesson_solutions_1/WsSqlInjection_files/image007.png b/src/main/webapp/lesson_solutions/WsSqlInjection_files/image007.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/WsSqlInjection_files/image007.png rename to src/main/webapp/lesson_solutions/WsSqlInjection_files/image007.png diff --git a/src/main/webapp/lesson_solutions_1/WsSqlInjection_files/image008.jpg b/src/main/webapp/lesson_solutions/WsSqlInjection_files/image008.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/WsSqlInjection_files/image008.jpg rename to src/main/webapp/lesson_solutions/WsSqlInjection_files/image008.jpg diff --git a/src/main/webapp/lesson_solutions_1/WsSqlInjection_files/themedata.thmx b/src/main/webapp/lesson_solutions/WsSqlInjection_files/themedata.thmx similarity index 100% rename from src/main/webapp/lesson_solutions_1/WsSqlInjection_files/themedata.thmx rename to src/main/webapp/lesson_solutions/WsSqlInjection_files/themedata.thmx diff --git a/src/main/webapp/lesson_solutions_1/XMLInjection_files/colorschememapping.xml b/src/main/webapp/lesson_solutions/XMLInjection_files/colorschememapping.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/XMLInjection_files/colorschememapping.xml rename to src/main/webapp/lesson_solutions/XMLInjection_files/colorschememapping.xml diff --git a/src/main/webapp/lesson_solutions_1/XMLInjection_files/filelist.xml b/src/main/webapp/lesson_solutions/XMLInjection_files/filelist.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/XMLInjection_files/filelist.xml rename to src/main/webapp/lesson_solutions/XMLInjection_files/filelist.xml diff --git a/src/main/webapp/lesson_solutions_1/XMLInjection_files/image001.png b/src/main/webapp/lesson_solutions/XMLInjection_files/image001.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/XMLInjection_files/image001.png rename to src/main/webapp/lesson_solutions/XMLInjection_files/image001.png diff --git a/src/main/webapp/lesson_solutions_1/XMLInjection_files/image003.png b/src/main/webapp/lesson_solutions/XMLInjection_files/image003.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/XMLInjection_files/image003.png rename to src/main/webapp/lesson_solutions/XMLInjection_files/image003.png diff --git a/src/main/webapp/lesson_solutions_1/XMLInjection_files/image005.png b/src/main/webapp/lesson_solutions/XMLInjection_files/image005.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/XMLInjection_files/image005.png rename to src/main/webapp/lesson_solutions/XMLInjection_files/image005.png diff --git a/src/main/webapp/lesson_solutions_1/XMLInjection_files/image007.png b/src/main/webapp/lesson_solutions/XMLInjection_files/image007.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/XMLInjection_files/image007.png rename to src/main/webapp/lesson_solutions/XMLInjection_files/image007.png diff --git a/src/main/webapp/lesson_solutions_1/XMLInjection_files/image009.png b/src/main/webapp/lesson_solutions/XMLInjection_files/image009.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/XMLInjection_files/image009.png rename to src/main/webapp/lesson_solutions/XMLInjection_files/image009.png diff --git a/src/main/webapp/lesson_solutions_1/XMLInjection_files/image011.png b/src/main/webapp/lesson_solutions/XMLInjection_files/image011.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/XMLInjection_files/image011.png rename to src/main/webapp/lesson_solutions/XMLInjection_files/image011.png diff --git a/src/main/webapp/lesson_solutions_1/XMLInjection_files/image013.png b/src/main/webapp/lesson_solutions/XMLInjection_files/image013.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/XMLInjection_files/image013.png rename to src/main/webapp/lesson_solutions/XMLInjection_files/image013.png diff --git a/src/main/webapp/lesson_solutions_1/XMLInjection_files/image015.png b/src/main/webapp/lesson_solutions/XMLInjection_files/image015.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/XMLInjection_files/image015.png rename to src/main/webapp/lesson_solutions/XMLInjection_files/image015.png diff --git a/src/main/webapp/lesson_solutions_1/XMLInjection_files/image017.jpg b/src/main/webapp/lesson_solutions/XMLInjection_files/image017.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/XMLInjection_files/image017.jpg rename to src/main/webapp/lesson_solutions/XMLInjection_files/image017.jpg diff --git a/src/main/webapp/lesson_solutions_1/XMLInjection_files/image018.jpg b/src/main/webapp/lesson_solutions/XMLInjection_files/image018.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/XMLInjection_files/image018.jpg rename to src/main/webapp/lesson_solutions/XMLInjection_files/image018.jpg diff --git a/src/main/webapp/lesson_solutions_1/XMLInjection_files/image019.jpg b/src/main/webapp/lesson_solutions/XMLInjection_files/image019.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/XMLInjection_files/image019.jpg rename to src/main/webapp/lesson_solutions/XMLInjection_files/image019.jpg diff --git a/src/main/webapp/lesson_solutions_1/XMLInjection_files/image020.jpg b/src/main/webapp/lesson_solutions/XMLInjection_files/image020.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/XMLInjection_files/image020.jpg rename to src/main/webapp/lesson_solutions/XMLInjection_files/image020.jpg diff --git a/src/main/webapp/lesson_solutions_1/XMLInjection_files/image021.jpg b/src/main/webapp/lesson_solutions/XMLInjection_files/image021.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/XMLInjection_files/image021.jpg rename to src/main/webapp/lesson_solutions/XMLInjection_files/image021.jpg diff --git a/src/main/webapp/lesson_solutions_1/XMLInjection_files/image022.jpg b/src/main/webapp/lesson_solutions/XMLInjection_files/image022.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/XMLInjection_files/image022.jpg rename to src/main/webapp/lesson_solutions/XMLInjection_files/image022.jpg diff --git a/src/main/webapp/lesson_solutions_1/XMLInjection_files/image023.jpg b/src/main/webapp/lesson_solutions/XMLInjection_files/image023.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/XMLInjection_files/image023.jpg rename to src/main/webapp/lesson_solutions/XMLInjection_files/image023.jpg diff --git a/src/main/webapp/lesson_solutions_1/XMLInjection_files/image024.jpg b/src/main/webapp/lesson_solutions/XMLInjection_files/image024.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/XMLInjection_files/image024.jpg rename to src/main/webapp/lesson_solutions/XMLInjection_files/image024.jpg diff --git a/src/main/webapp/lesson_solutions_1/XMLInjection_files/themedata.thmx b/src/main/webapp/lesson_solutions/XMLInjection_files/themedata.thmx similarity index 100% rename from src/main/webapp/lesson_solutions_1/XMLInjection_files/themedata.thmx rename to src/main/webapp/lesson_solutions/XMLInjection_files/themedata.thmx diff --git a/src/main/webapp/lesson_solutions_1/XPATHInjection_files/colorschememapping.xml b/src/main/webapp/lesson_solutions/XPATHInjection_files/colorschememapping.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/XPATHInjection_files/colorschememapping.xml rename to src/main/webapp/lesson_solutions/XPATHInjection_files/colorschememapping.xml diff --git a/src/main/webapp/lesson_solutions_1/XPATHInjection_files/filelist.xml b/src/main/webapp/lesson_solutions/XPATHInjection_files/filelist.xml similarity index 100% rename from src/main/webapp/lesson_solutions_1/XPATHInjection_files/filelist.xml rename to src/main/webapp/lesson_solutions/XPATHInjection_files/filelist.xml diff --git a/src/main/webapp/lesson_solutions_1/XPATHInjection_files/image001.png b/src/main/webapp/lesson_solutions/XPATHInjection_files/image001.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/XPATHInjection_files/image001.png rename to src/main/webapp/lesson_solutions/XPATHInjection_files/image001.png diff --git a/src/main/webapp/lesson_solutions_1/XPATHInjection_files/image003.png b/src/main/webapp/lesson_solutions/XPATHInjection_files/image003.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/XPATHInjection_files/image003.png rename to src/main/webapp/lesson_solutions/XPATHInjection_files/image003.png diff --git a/src/main/webapp/lesson_solutions_1/XPATHInjection_files/image005.png b/src/main/webapp/lesson_solutions/XPATHInjection_files/image005.png similarity index 100% rename from src/main/webapp/lesson_solutions_1/XPATHInjection_files/image005.png rename to src/main/webapp/lesson_solutions/XPATHInjection_files/image005.png diff --git a/src/main/webapp/lesson_solutions_1/XPATHInjection_files/image007.jpg b/src/main/webapp/lesson_solutions/XPATHInjection_files/image007.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/XPATHInjection_files/image007.jpg rename to src/main/webapp/lesson_solutions/XPATHInjection_files/image007.jpg diff --git a/src/main/webapp/lesson_solutions_1/XPATHInjection_files/image008.jpg b/src/main/webapp/lesson_solutions/XPATHInjection_files/image008.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/XPATHInjection_files/image008.jpg rename to src/main/webapp/lesson_solutions/XPATHInjection_files/image008.jpg diff --git a/src/main/webapp/lesson_solutions_1/XPATHInjection_files/image009.jpg b/src/main/webapp/lesson_solutions/XPATHInjection_files/image009.jpg similarity index 100% rename from src/main/webapp/lesson_solutions_1/XPATHInjection_files/image009.jpg rename to src/main/webapp/lesson_solutions/XPATHInjection_files/image009.jpg diff --git a/src/main/webapp/lesson_solutions_1/XPATHInjection_files/themedata.thmx b/src/main/webapp/lesson_solutions/XPATHInjection_files/themedata.thmx similarity index 100% rename from src/main/webapp/lesson_solutions_1/XPATHInjection_files/themedata.thmx rename to src/main/webapp/lesson_solutions/XPATHInjection_files/themedata.thmx From be7d40706a4d89909c2d9a5cae523c4b0d04efa4 Mon Sep 17 00:00:00 2001 From: Bruce Mayhew Date: Sun, 7 Sep 2014 16:59:56 -0400 Subject: [PATCH 05/11] WEB-49 Added title to all lessons --- .../java/org/owasp/webgoat/lessons/AbstractLesson.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/owasp/webgoat/lessons/AbstractLesson.java b/src/main/java/org/owasp/webgoat/lessons/AbstractLesson.java index 24b6016b8..8b7eb338c 100644 --- a/src/main/java/org/owasp/webgoat/lessons/AbstractLesson.java +++ b/src/main/java/org/owasp/webgoat/lessons/AbstractLesson.java @@ -19,7 +19,9 @@ import org.apache.ecs.Element; import org.apache.ecs.ElementContainer; import org.apache.ecs.StringElement; import org.apache.ecs.html.Body; +import org.apache.ecs.html.Center; import org.apache.ecs.html.Form; +import org.apache.ecs.html.H1; import org.apache.ecs.html.Head; import org.apache.ecs.html.Html; import org.apache.ecs.html.IMG; @@ -732,7 +734,12 @@ public abstract class AbstractLesson extends Screen implements Comparable Date: Sun, 7 Sep 2014 23:39:05 -0400 Subject: [PATCH 06/11] get the info button functioning --- .../org/owasp/webgoat/controller/About.java | 49 ++++ src/main/webapp/WEB-INF/pages/about.jsp | 124 ++++++++ src/main/webapp/WEB-INF/pages/main_new.jsp | 215 +++++++------- src/main/webapp/js/goatControllers.js | 266 +++++++++--------- 4 files changed, 420 insertions(+), 234 deletions(-) create mode 100644 src/main/java/org/owasp/webgoat/controller/About.java create mode 100644 src/main/webapp/WEB-INF/pages/about.jsp diff --git a/src/main/java/org/owasp/webgoat/controller/About.java b/src/main/java/org/owasp/webgoat/controller/About.java new file mode 100644 index 000000000..479f83a74 --- /dev/null +++ b/src/main/java/org/owasp/webgoat/controller/About.java @@ -0,0 +1,49 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package org.owasp.webgoat.controller; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpSession; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.servlet.ModelAndView; + +/** + * + * @author rlawson + */ +@Controller +public class About { + + final Logger logger = LoggerFactory.getLogger(About.class); + private static final String WELCOMED = "welcomed"; + + @RequestMapping(value = "about.mvc", method = RequestMethod.GET) + public ModelAndView welcome(HttpServletRequest request, + @RequestParam(value = "error", required = false) String error, + @RequestParam(value = "logout", required = false) String logout) { + + // set the welcome attribute + // this is so the attack servlet does not also + // send them to the welcome page + HttpSession session = request.getSession(); + if (session.getAttribute(WELCOMED) == null) { + session.setAttribute(WELCOMED, "true"); + } + + //go ahead and send them to webgoat (skip the welcome page) + ModelAndView model = new ModelAndView(); + //model.setViewName("welcome"); + //model.setViewName("main_new"); + model.setViewName("about"); + return model; + } + +} diff --git a/src/main/webapp/WEB-INF/pages/about.jsp b/src/main/webapp/WEB-INF/pages/about.jsp new file mode 100644 index 000000000..785761353 --- /dev/null +++ b/src/main/webapp/WEB-INF/pages/about.jsp @@ -0,0 +1,124 @@ +<%@ page contentType="text/html; charset=ISO-8859-1" language="java" + errorPage=""%> + + + + + + + + + + diff --git a/src/main/webapp/WEB-INF/pages/main_new.jsp b/src/main/webapp/WEB-INF/pages/main_new.jsp index 9dce8ee1d..602a00a94 100644 --- a/src/main/webapp/WEB-INF/pages/main_new.jsp +++ b/src/main/webapp/WEB-INF/pages/main_new.jsp @@ -76,7 +76,7 @@

Lesson Title in here

- - - + +
- +
@@ -140,57 +140,57 @@
-

Cookies / Parameters

+

Cookies / Parameters


-
-
-

Cookies

- - - - - - - - - - - - -
FieldValue
{{key}}{{value}}
-
-
-

Params

- - - - - - - - - - -
ParamValue
{{param.name}}{{param.value}}
- -
-
+
+
+

Cookies

+ + + + + + + + + + + + +
FieldValue
{{key}}{{value}}
+
+
+

Params

+ + + + + + + + + + +
ParamValue
{{param.name}}{{param.value}}
+ +
+
-
+

Hints

- - -
- {{curHint}} + + +
+ {{curHint}}
@@ -220,7 +220,7 @@

Lesson Plan

- +
@@ -239,7 +239,7 @@

Lesson Source Code

-
{{source}}
+
{{source}}
@@ -255,76 +255,83 @@ + + diff --git a/src/main/webapp/js/goatControllers.js b/src/main/webapp/js/goatControllers.js index e29d16e09..88aa79379 100644 --- a/src/main/webapp/js/goatControllers.js +++ b/src/main/webapp/js/goatControllers.js @@ -7,162 +7,168 @@ * prepares and updates menu topic items for the view */ goat.controller('goatLesson', function($scope, $http, $modal, $log, $templateCache) { - $scope.cookies= []; - $scope.params=[]; + $scope.cookies = []; + $scope.params = []; //TODO: implement via separate promise and use config for menu (goat.data.loadMenuData()) $http({method: 'GET', url: goatConstants.lessonService}).then( - function(menuData) { - var menuItems = goat.utils.addMenuClasses(goatConstants.menuPrefix.concat(menuData.data)); - $scope.menuTopics = menuItems; - }, - function(error) { - // TODO - handle this some way other than an alert - console.error("Error rendering menu: " + error); - } + function(menuData) { + var menuItems = goat.utils.addMenuClasses(goatConstants.menuPrefix.concat(menuData.data)); + $scope.menuTopics = menuItems; + }, + function(error) { + // TODO - handle this some way other than an alert + console.error("Error rendering menu: " + error); + } ); - + $scope.renderLesson = function(url) { //console.log(url + ' was passed in'); // use jquery to render lesson content to div - $scope.hintIndex = 0; - - var curScope = $scope; - - - curScope.parameters = goat.utils.scrapeParams(url); + $scope.hintIndex = 0; + + var curScope = $scope; + + + curScope.parameters = goat.utils.scrapeParams(url); goat.data.loadLessonContent(url).then( - function(reply) { - $("#lesson_content").html(reply); - //hook forms - goat.utils.makeFormsAjax(); - $('#hintsView').hide(); - //render lesson title - $('#lessonTitle').text(goat.utils.extractLessonTitle($(reply))); - //@KLUGE to remove h1 after extracting and moving it to top - $('#lesson_content h1').remove() - // adjust menu to lessonContent size if necssary - //@TODO: this is still clunky ... needs some TLC - if ($('div.panel-body').height() > 400) { - $('#leftside-navigation').height($(window).height()); - } - //cookies - goat.data.loadCookies().then( - function(resp) { - curScope.cookies = resp; - } - ); - //hints - curScope.hintIndex=0; - goat.data.loadHints().then( - function (resp) { - curScope.hints = resp; - if (curScope.hints.length > 0 && curScope.hints[0].hint.indexOf(goatConstants.noHints) === -1) { - goat.utils.displayButton('showHintsBtn',true); - } else { - goat.utils.displayButton('showHintsBtn',false); + function(reply) { + $("#lesson_content").html(reply); + //hook forms + goat.utils.makeFormsAjax(); + $('#hintsView').hide(); + //render lesson title + $('#lessonTitle').text(goat.utils.extractLessonTitle($(reply))); + //@KLUGE to remove h1 after extracting and moving it to top + $('#lesson_content h1').remove() + // adjust menu to lessonContent size if necssary + //@TODO: this is still clunky ... needs some TLC + if ($('div.panel-body').height() > 400) { + $('#leftside-navigation').height($(window).height()); + } + //cookies + goat.data.loadCookies().then( + function(resp) { + curScope.cookies = resp; } - } - ); - //source - goat.data.loadSource().then( - function(resp) { - curScope.source = resp; - } - ); - //plan - goat.data.loadPlan().then( - function(resp) { - curScope.plan = resp; - } - ); - //solution - goat.data.loadSolution().then( - function(resp) { - curScope.solution = resp; - } - ); - goat.utils.scrollToTop(); - } - ); + ); + //hints + curScope.hintIndex = 0; + goat.data.loadHints().then( + function(resp) { + curScope.hints = resp; + if (curScope.hints.length > 0 && curScope.hints[0].hint.indexOf(goatConstants.noHints) === -1) { + goat.utils.displayButton('showHintsBtn', true); + } else { + goat.utils.displayButton('showHintsBtn', false); + } + } + ); + //source + goat.data.loadSource().then( + function(resp) { + curScope.source = resp; + } + ); + //plan + goat.data.loadPlan().then( + function(resp) { + curScope.plan = resp; + } + ); + //solution + goat.data.loadSolution().then( + function(resp) { + curScope.solution = resp; + } + ); + goat.utils.scrollToTop(); + } + ); }; - - $scope.showLessonSource = function () { - $('.lessonHelp').hide(); + + $scope.showLessonSource = function() { + $('.lessonHelp').hide(); $('#lesson_source_row').show(); goat.utils.scrollToHelp(); } - - $scope.showLessonPlan = function () { - $('.lessonHelp').hide(); - $("#lesson_plan").html($scope.plan); + + $scope.showLessonPlan = function() { + $('.lessonHelp').hide(); + $("#lesson_plan").html($scope.plan); $('#lesson_plan_row').show(); goat.utils.scrollToHelp(); } - $scope.showLessonSolution = function () { - $('.lessonHelp').hide(); - $("#lesson_solution").html($scope.solution); + $scope.showLessonSolution = function() { + $('.lessonHelp').hide(); + $("#lesson_solution").html($scope.solution); $('#lesson_solution_row').show(); goat.utils.scrollToHelp(); } - $scope.manageHintButtons = function () { - if ($scope.hintIndex === $scope.hints.length -1) { - $('#showNextHintBtn').css('visibility','hidden'); - } else if ($scope.hintIndex < $scope.hints.length - 1) { - $('#showNextHintBtn').css('visibility','visible'); - } - // - if ($scope.hintIndex === 0) { - $('#showPrevHintBtn').css('visibility','hidden'); - } else if ($scope.hintIndex > 0) { - $('#showPrevHintBtn').css('visibility','visible'); - } + $scope.manageHintButtons = function() { + if ($scope.hintIndex === $scope.hints.length - 1) { + $('#showNextHintBtn').css('visibility', 'hidden'); + } else if ($scope.hintIndex < $scope.hints.length - 1) { + $('#showNextHintBtn').css('visibility', 'visible'); + } + // + if ($scope.hintIndex === 0) { + $('#showPrevHintBtn').css('visibility', 'hidden'); + } else if ($scope.hintIndex > 0) { + $('#showPrevHintBtn').css('visibility', 'visible'); + } }; - + $scope.viewHints = function() { - if (!$scope.hints) { - return; - } - - $('.lessonHelp').hide(); + if (!$scope.hints) { + return; + } + + $('.lessonHelp').hide(); $('#lesson_hint_row').show(); goat.utils.scrollToHelp(); - $scope.curHint = $scope.hints[$scope.hintIndex].hint; - $scope.manageHintButtons(); + $scope.curHint = $scope.hints[$scope.hintIndex].hint; + $scope.manageHintButtons(); }; - + $scope.viewNextHint = function() { - $scope.hintIndex++; - $scope.curHint = $scope.hints[$scope.hintIndex].hint; - $scope.manageHintButtons(); + $scope.hintIndex++; + $scope.curHint = $scope.hints[$scope.hintIndex].hint; + $scope.manageHintButtons(); }; - - $scope.viewPrevHint = function () { - $scope.hintIndex--; - $scope.curHint = $scope.hints[$scope.hintIndex].hint; - $scope.manageHintButtons(); + + $scope.viewPrevHint = function() { + $scope.hintIndex--; + $scope.curHint = $scope.hints[$scope.hintIndex].hint; + $scope.manageHintButtons(); }; - - $scope.hideHints = function () { - + + $scope.hideHints = function() { + }; - - - }).animation('.slideDown', function() { - var NgHideClassName = 'ng-hide'; - return { - beforeAddClass: function(element, className, done) { - if (className === NgHideClassName) { - $(element).slideUp(done); - } - }, - removeClass: function(element, className, done) { - if (className === NgHideClassName) { - $(element).hide().slideDown(done); - } - } - }; - - - }); + + $scope.showAbout = function() { + $('#aboutModal').modal({ + remote: 'about.mvc' + }); + }; + + +}).animation('.slideDown', function() { + var NgHideClassName = 'ng-hide'; + return { + beforeAddClass: function(element, className, done) { + if (className === NgHideClassName) { + $(element).slideUp(done); + } + }, + removeClass: function(element, className, done) { + if (className === NgHideClassName) { + $(element).hide().slideDown(done); + } + } + }; + + +}); From ac46ddd4d9bc692785763b5839e3eec56ae5e235 Mon Sep 17 00:00:00 2001 From: rlawson Date: Mon, 8 Sep 2014 08:20:45 -0400 Subject: [PATCH 07/11] mail and user buttons --- src/main/webapp/WEB-INF/pages/main_new.jsp | 29 ++++++++++++++++------ 1 file changed, 21 insertions(+), 8 deletions(-) diff --git a/src/main/webapp/WEB-INF/pages/main_new.jsp b/src/main/webapp/WEB-INF/pages/main_new.jsp index 602a00a94..26d0081d2 100644 --- a/src/main/webapp/WEB-INF/pages/main_new.jsp +++ b/src/main/webapp/WEB-INF/pages/main_new.jsp @@ -1,6 +1,7 @@ <%@ page contentType="text/html; charset=ISO-8859-1" language="java" errorPage=""%> <%@page import="org.owasp.webgoat.session.WebSession"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> <% WebSession webSession = ((WebSession) session.getAttribute(WebSession.SESSION)); %> @@ -75,16 +76,28 @@

Lesson Title in here

-
- + +
+ - - + + + + +
From f9d14c9b79e808d2786ec025e38b86b0dc0301bc Mon Sep 17 00:00:00 2001 From: nbaars Date: Tue, 9 Sep 2014 18:18:45 +0200 Subject: [PATCH 08/11] Added service for fetching the title of a lesson --- .gitignore | 1 + .../webgoat/service/LessonTitleService.java | 40 +++++++++++++++++++ src/main/webapp/js/goatConstants.js | 1 + src/main/webapp/js/goatControllers.js | 13 +++--- src/main/webapp/js/goatData.js | 5 ++- src/main/webapp/js/goatUtil.js | 9 ----- 6 files changed, 53 insertions(+), 16 deletions(-) create mode 100644 src/main/java/org/owasp/webgoat/service/LessonTitleService.java diff --git a/.gitignore b/.gitignore index a03a5fc01..fae16a7e3 100644 --- a/.gitignore +++ b/.gitignore @@ -12,3 +12,4 @@ /.settings/org.eclipse.wst.jsdt.ui.superType.container /.settings/org.eclipse.wst.jsdt.ui.superType.name /.settings/org.eclipse.wst.validation.prefs +/.externalToolBuilders/ diff --git a/src/main/java/org/owasp/webgoat/service/LessonTitleService.java b/src/main/java/org/owasp/webgoat/service/LessonTitleService.java new file mode 100644 index 000000000..938a06850 --- /dev/null +++ b/src/main/java/org/owasp/webgoat/service/LessonTitleService.java @@ -0,0 +1,40 @@ +package org.owasp.webgoat.service; + +import javax.servlet.http.HttpSession; + +import org.owasp.webgoat.lessons.AbstractLesson; +import org.owasp.webgoat.session.Course; +import org.owasp.webgoat.session.WebSession; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.ResponseBody; + +@Controller +public class LessonTitleService extends BaseService { + + /** + * Returns the title for the current attack + * + * @param session + * @return + */ + @RequestMapping(value = "/lessontitle.mvc", produces = "application/html") + public @ResponseBody + String showPlan(HttpSession session) { + WebSession ws = getWebSession(session); + return getLessonTitle(ws); + } + + private String getLessonTitle(WebSession s) { + String title = ""; + int scr = s.getCurrentScreen(); + Course course = s.getCourse(); + + if (s.isUser() || s.isChallenge()) { + AbstractLesson lesson = course.getLesson(s, scr, AbstractLesson.USER_ROLE); + title = lesson != null ? lesson.getTitle() : ""; + } + return title; + } + +} diff --git a/src/main/webapp/js/goatConstants.js b/src/main/webapp/js/goatConstants.js index bc1e5ed9a..2baf06034 100644 --- a/src/main/webapp/js/goatConstants.js +++ b/src/main/webapp/js/goatConstants.js @@ -19,6 +19,7 @@ var goatConstants = { solutionService:'service/solution.mvc', lessonPlanService:'service/lessonplan.mvc', menuService: 'service/lessonmenu.mvc', + lessonTitleService: 'service/lessontitle.mvc', // literals notFound: 'Could not find', noHints: 'There are no hints defined.' diff --git a/src/main/webapp/js/goatControllers.js b/src/main/webapp/js/goatControllers.js index 88aa79379..157401a4e 100644 --- a/src/main/webapp/js/goatControllers.js +++ b/src/main/webapp/js/goatControllers.js @@ -27,19 +27,20 @@ goat.controller('goatLesson', function($scope, $http, $modal, $log, $templateCac $scope.hintIndex = 0; var curScope = $scope; - - + curScope.parameters = goat.utils.scrapeParams(url); goat.data.loadLessonContent(url).then( function(reply) { $("#lesson_content").html(reply); + goat.data.loadLessonTitle().then( + function(reply) { + $("#lessonTitle").text(reply); + } + ); + //hook forms goat.utils.makeFormsAjax(); $('#hintsView').hide(); - //render lesson title - $('#lessonTitle').text(goat.utils.extractLessonTitle($(reply))); - //@KLUGE to remove h1 after extracting and moving it to top - $('#lesson_content h1').remove() // adjust menu to lessonContent size if necssary //@TODO: this is still clunky ... needs some TLC if ($('div.panel-body').height() > 400) { diff --git a/src/main/webapp/js/goatData.js b/src/main/webapp/js/goatData.js index a2e99c6d8..e94ee1eee 100644 --- a/src/main/webapp/js/goatData.js +++ b/src/main/webapp/js/goatData.js @@ -18,7 +18,7 @@ goat.data = { return $.get(goatConstants.sourceService, {}); }, loadSolution: function () { - return $.get(goatConstants.solutionService, {}) + return $.get(goatConstants.solutionService, {}); }, loadPlan: function () { return $.get(goatConstants.lessonPlanService, {}); @@ -30,5 +30,8 @@ goat.data = { loadMenuData: function() { //TODO use goatConstants var for url return $http({method: 'GET', url: goatConstants.menuService}); + }, + loadLessonTitle: function () { + return $.get(goatConstants.lessonTitleService, {}); } }; diff --git a/src/main/webapp/js/goatUtil.js b/src/main/webapp/js/goatUtil.js index d291dea8d..7cbed8b86 100644 --- a/src/main/webapp/js/goatUtil.js +++ b/src/main/webapp/js/goatUtil.js @@ -15,15 +15,6 @@ goat.utils = { //console.log("Hooking any lesson forms to make them ajax"); $("form").ajaxForm(options); }, - /**goatApp.extractLessonTitle - *pulls lesson title from html fragment returned (looks for it in h1 element) - *@param - html rendered to object passed in - */ - extractLessonTitle: function(el) { - var title = $('h1', el).text(); - // remove title - return title; - }, displayButton: function(id,show) { if ($('#'+id)) { if (show) { From 9fe1982eee64bf2e82f5e0f31e5caa93c51d3b55 Mon Sep 17 00:00:00 2001 From: nbaars Date: Tue, 9 Sep 2014 18:19:34 +0200 Subject: [PATCH 09/11] Removed adding title with h1 to the page and removing it --- .../java/org/owasp/webgoat/lessons/AbstractLesson.java | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/src/main/java/org/owasp/webgoat/lessons/AbstractLesson.java b/src/main/java/org/owasp/webgoat/lessons/AbstractLesson.java index 8b7eb338c..3d85137a7 100644 --- a/src/main/java/org/owasp/webgoat/lessons/AbstractLesson.java +++ b/src/main/java/org/owasp/webgoat/lessons/AbstractLesson.java @@ -731,16 +731,8 @@ public abstract class AbstractLesson extends Screen implements Comparable Date: Wed, 10 Sep 2014 07:52:15 +0200 Subject: [PATCH 10/11] fixed WEB-27 --- src/main/java/org/owasp/webgoat/HammerHead.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/owasp/webgoat/HammerHead.java b/src/main/java/org/owasp/webgoat/HammerHead.java index 61587c65f..faddc8961 100644 --- a/src/main/java/org/owasp/webgoat/HammerHead.java +++ b/src/main/java/org/owasp/webgoat/HammerHead.java @@ -134,8 +134,8 @@ public class HammerHead extends HttpServlet { logger.debug("Response already committed, exiting"); return; } - - if ("true".equals(request.getParameter("start"))) { + + if ("true".equals(request.getParameter("start")) || request.getQueryString() == null) { logger.warn("Redirecting to start controller"); response.sendRedirect("start.mvc"); return; From 8eac6ef8989befca1fea10a33a92d4a5e4fe74bb Mon Sep 17 00:00:00 2001 From: nbaars Date: Wed, 10 Sep 2014 08:46:45 +0200 Subject: [PATCH 11/11] fixed WEB-53 --- .../webgoat/lessons/CrossSiteScripting/CrossSiteScripting.java | 2 +- .../lessons/RoleBasedAccessControl/RoleBasedAccessControl.java | 2 +- .../org/owasp/webgoat/lessons/SQLInjection/SQLInjection.java | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/owasp/webgoat/lessons/CrossSiteScripting/CrossSiteScripting.java b/src/main/java/org/owasp/webgoat/lessons/CrossSiteScripting/CrossSiteScripting.java index 7a9c4004b..95a720a10 100644 --- a/src/main/java/org/owasp/webgoat/lessons/CrossSiteScripting/CrossSiteScripting.java +++ b/src/main/java/org/owasp/webgoat/lessons/CrossSiteScripting/CrossSiteScripting.java @@ -103,7 +103,7 @@ public class CrossSiteScripting extends GoatHillsFinancial { String solutionFileName = null; String stage = getStage(s); - solutionFileName = "/lesson_solutions/Lab XSS/Lab " + stage + ".html"; + solutionFileName = "/lesson_solutions_1/Lab XSS/Lab " + stage + ".html"; return solutionFileName; } diff --git a/src/main/java/org/owasp/webgoat/lessons/RoleBasedAccessControl/RoleBasedAccessControl.java b/src/main/java/org/owasp/webgoat/lessons/RoleBasedAccessControl/RoleBasedAccessControl.java index ceee7619a..ab6c34f22 100644 --- a/src/main/java/org/owasp/webgoat/lessons/RoleBasedAccessControl/RoleBasedAccessControl.java +++ b/src/main/java/org/owasp/webgoat/lessons/RoleBasedAccessControl/RoleBasedAccessControl.java @@ -176,7 +176,7 @@ public class RoleBasedAccessControl extends GoatHillsFinancial { String solutionFileName = null; String stage = getStage(s); - solutionFileName = "/lesson_solutions/Lab Access Control/Lab " + stage + ".html"; + solutionFileName = "/lesson_solutions_1/Lab Access Control/Lab " + stage + ".html"; return solutionFileName; } diff --git a/src/main/java/org/owasp/webgoat/lessons/SQLInjection/SQLInjection.java b/src/main/java/org/owasp/webgoat/lessons/SQLInjection/SQLInjection.java index c840fe83e..e3bd153ca 100644 --- a/src/main/java/org/owasp/webgoat/lessons/SQLInjection/SQLInjection.java +++ b/src/main/java/org/owasp/webgoat/lessons/SQLInjection/SQLInjection.java @@ -272,7 +272,7 @@ public class SQLInjection extends GoatHillsFinancial { String solutionFileName = null; String stage = getStage(s); - solutionFileName = "/lesson_solutions/Lab SQL Injection/Lab " + stage + ".html"; + solutionFileName = "/lesson_solutions_1/Lab SQL Injection/Lab " + stage + ".html"; return solutionFileName; } }