181 lines
9.6 KiB
HTML
181 lines
9.6 KiB
HTML
<html xmlns:th="http://www.thymeleaf.org">
|
|
|
|
<div class="lesson-page-wrapper">
|
|
<!-- reuse this lesson-page-wrapper block for each 'page' of content in your lesson -->
|
|
<!-- include content here, or can be placed in another location. Content will be presented via asciidocs files,
|
|
which you put in src/main/resources/plugin/lessonplans/{lang}/{fileName}.adoc -->
|
|
<div class="adoc-content" th:replace="doc:XXE_plan.adoc"></div>
|
|
</div>
|
|
|
|
<div class="lesson-page-wrapper">
|
|
<!-- reuse this lesson-page-wrapper block for each 'page' of content in your lesson -->
|
|
<!-- include content here, or can be placed in another location. Content will be presented via asciidocs files,
|
|
which you put in src/main/resources/plugin/lessonplans/{lang}/{fileName}.adoc -->
|
|
<div class="adoc-content" th:replace="doc:XXE_intro.adoc"></div>
|
|
</div>
|
|
|
|
<div class="lesson-page-wrapper">
|
|
<!-- reuse this block for each 'page' of content -->
|
|
<!-- sample ascii doc content for second page -->
|
|
<div class="adoc-content" th:replace="doc:XXE_simple.adoc"></div>
|
|
<!-- if including attack, reuse this section, leave classes in place -->
|
|
<div class="attack-container">
|
|
<div class="assignment-success"><i class="fa fa-2 fa-check hidden" aria-hidden="true"></i></div>
|
|
<!-- using attack-form class on your form will allow your request to be ajaxified and stay within the display framework for webgoat -->
|
|
<!-- you can write your own custom forms, but standard form submission will take you to your endpoint and outside of the WebGoat framework -->
|
|
<!-- of course, you can write your own ajax submission /handling in your own javascript if you like -->
|
|
<form class="attack-form" accept-charset="UNKNOWN" prepareData="register" method="POST" name="form"
|
|
action="/WebGoat/XXE/simple" contentType="application/xml">
|
|
<script th:src="@{/plugin_lessons/plugin/XXE/js/xxe.js}"
|
|
language="JavaScript"></script>
|
|
<div id="lessonContent">
|
|
<strong>Registration form</strong>
|
|
<form prepareData="register" accept-charset="UNKNOWN" method="POST" name="form" action="#attack/307/100">
|
|
<table>
|
|
<tr>
|
|
<td>Username</td>
|
|
<td><input name="username" value="" type="TEXT"/></td>
|
|
</tr>
|
|
<tr>
|
|
<td>E-mail</td>
|
|
<td><input name="email" value="" type="TEXT"/></td>
|
|
</tr>
|
|
<tr>
|
|
<td>Password</td>
|
|
<td><input name="email" value="" type="TEXT"/></td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td align="right"><input type="submit" id="registerButton" value="Sign up"/></td>
|
|
</tr>
|
|
</table>
|
|
<br/>
|
|
<br/>
|
|
</form>
|
|
<div class="attack-feedback"></div>
|
|
<div class="attack-output"></div>
|
|
</div>
|
|
</form>
|
|
<div id='registration_success'></div>
|
|
</div>
|
|
<!-- do not remove the two following div's, this is where your feedback/output will land -->
|
|
<div class="attack-feedback"></div>
|
|
<div class="attack-output"></div>
|
|
<!-- ... of course, you can move them if you want to, but that will not look consistent to other lessons -->
|
|
</div>
|
|
|
|
<div class="lesson-page-wrapper">
|
|
<!-- reuse this lesson-page-wrapper block for each 'page' of content in your lesson -->
|
|
<!-- include content here, or can be placed in another location. Content will be presented via asciidocs files,
|
|
which you put in src/main/resources/plugin/lessonplans/{lang}/{fileName}.adoc -->
|
|
<div class="adoc-content" th:replace="doc:XXE_changing_content_type.adoc"></div>
|
|
<div class="attack-container">
|
|
<div class="assignment-success"><i class="fa fa-2 fa-check hidden" aria-hidden="true"></i></div>
|
|
<!-- using attack-form class on your form will allow your request to be ajaxified and stay within the display framework for webgoat -->
|
|
<!-- you can write your own custom forms, but standard form submission will take you to your endpoint and outside of the WebGoat framework -->
|
|
<!-- of course, you can write your own ajax submission /handling in your own javascript if you like -->
|
|
<form class="attack-form" accept-charset="UNKNOWN" prepareData="registerJson" method="POST" name="form"
|
|
action="/WebGoat/XXE/content-type" contentType="application/json">
|
|
<script th:src="@{/plugin_lessons/plugin/XXE/js/xxe.js}"
|
|
language="JavaScript"></script>
|
|
<div id="lessonContent">
|
|
<strong>Registration form</strong>
|
|
<form prepareData="registerJson" accept-charset="UNKNOWN" method="POST" name="form" action="#attack/307/100">
|
|
<table>
|
|
<tr>
|
|
<td>Username</td>
|
|
<td><input name="username" value="" type="TEXT"/></td>
|
|
</tr>
|
|
<tr>
|
|
<td>E-mail</td>
|
|
<td><input name="email" value="" type="TEXT"/></td>
|
|
</tr>
|
|
<tr>
|
|
<td>Password</td>
|
|
<td><input name="email" value="" type="TEXT"/></td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td align="right"><input type="submit" value="Sign up"/></td>
|
|
</tr>
|
|
</table>
|
|
<br/>
|
|
<br/>
|
|
</form>
|
|
<div class="attack-feedback"></div>
|
|
<div class="attack-output"></div>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div class="lesson-page-wrapper">
|
|
<!-- reuse this lesson-page-wrapper block for each 'page' of content in your lesson -->
|
|
<!-- include content here, or can be placed in another location. Content will be presented via asciidocs files,
|
|
which you put in src/main/resources/plugin/lessonplans/{lang}/{fileName}.adoc -->
|
|
<div class="adoc-content" th:replace="doc:XXE_overflow.adoc"></div>
|
|
</div>
|
|
|
|
<div class="lesson-page-wrapper">
|
|
<!-- reuse this lesson-page-wrapper block for each 'page' of content in your lesson -->
|
|
<!-- include content here, or can be placed in another location. Content will be presented via asciidocs files,
|
|
which you put in src/main/resources/plugin/lessonplans/{lang}/{fileName}.adoc -->
|
|
<div class="adoc-content" th:replace="doc:XXE_blind.adoc"></div>
|
|
</div>
|
|
|
|
<div class="lesson-page-wrapper">
|
|
<!-- reuse this lesson-page-wrapper block for each 'page' of content in your lesson -->
|
|
<!-- include content here, or can be placed in another location. Content will be presented via asciidocs files,
|
|
which you put in src/main/resources/plugin/lessonplans/{lang}/{fileName}.adoc -->
|
|
<div class="adoc-content" th:replace="doc:XXE_blind_assignment.adoc"></div>
|
|
<div class="attack-container">
|
|
<div class="assignment-success"><i class="fa fa-2 fa-check hidden" aria-hidden="true"></i></div>
|
|
<!-- using attack-form class on your form will allow your request to be ajaxified and stay within the display framework for webgoat -->
|
|
<!-- you can write your own custom forms, but standard form submission will take you to your endpoint and outside of the WebGoat framework -->
|
|
<!-- of course, you can write your own ajax submission /handling in your own javascript if you like -->
|
|
<form class="attack-form" accept-charset="UNKNOWN" prepareData="registerJson" method="POST" name="form"
|
|
action="/WebGoat/XXE/content-type" contentType="application/json">
|
|
<script th:src="@{/plugin_lessons/plugin/XXE/js/xxe.js}"
|
|
language="JavaScript"></script>
|
|
<div id="lessonContent">
|
|
<strong>Registration form</strong>
|
|
<form prepareData="registerJson" accept-charset="UNKNOWN" method="POST" name="form" action="#attack/307/100">
|
|
<table>
|
|
<tr>
|
|
<td>Username</td>
|
|
<td><input name="username" value="" type="TEXT"/></td>
|
|
</tr>
|
|
<tr>
|
|
<td>E-mail</td>
|
|
<td><input name="email" value="" type="TEXT"/></td>
|
|
</tr>
|
|
<tr>
|
|
<td>Password</td>
|
|
<td><input name="email" value="" type="TEXT"/></td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td align="right"><input type="submit" value="Sign up"/></td>
|
|
</tr>
|
|
</table>
|
|
<br/>
|
|
<br/>
|
|
</form>
|
|
<div class="attack-feedback"></div>
|
|
<div class="attack-output"></div>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div class="lesson-page-wrapper">
|
|
<!-- reuse this lesson-page-wrapper block for each 'page' of content in your lesson -->
|
|
<!-- include content here, or can be placed in another location. Content will be presented via asciidocs files,
|
|
which you put in src/main/resources/plugin/lessonplans/{lang}/{fileName}.adoc -->
|
|
<div class="adoc-content" th:replace="doc:XXE_mitigation.adoc"></div>
|
|
</div>
|
|
|
|
|
|
</html> |