diff --git a/securityquiz/urls.py b/securityquiz/urls.py index 0f816aa..b02ebe9 100644 --- a/securityquiz/urls.py +++ b/securityquiz/urls.py @@ -5,9 +5,9 @@ admin.autodiscover() urlpatterns = patterns('', # Examples: - url(r'^$', 'views.home', name='home'), url(r'^callback$', 'views.avans_callback'), url(r'^logout$', 'views.avans_logout'), url(r'^pull$', 'views.pull'), url(r'^admin/', include(admin.site.urls)), + url(r'^(.*)$', 'views.home', name='home'), ) diff --git a/static/css/style.css b/static/css/style.css index 6a892cd..71b5ed3 100644 --- a/static/css/style.css +++ b/static/css/style.css @@ -1,12 +1,10 @@ body { background-color: #e8eef7; + padding: 2em; } -form { - display: block; - margin: 0.5em auto 2.5em; +#quiz { padding: 1em; - width: 45em; background-color: white; border: 1px solid #ccc; } @@ -19,9 +17,15 @@ form { font-weight: bold; } +.center-block { + display: block; + margin-left: auto; + margin-right: auto; +} + textarea { width: 75%; - height: 7em; + height: 9em; } input { diff --git a/templates/base.html b/templates/base.html new file mode 100644 index 0000000..a914fac --- /dev/null +++ b/templates/base.html @@ -0,0 +1,39 @@ + + +
+Voor veel van deze opdrachten heb je een eigen website nodig. Als je niet een eigen website hebt kan je natuurlijk ook gebruik maken van de student.aii.avans.nl webruimte
+ +Zorg dat je de VM op NAT zet zodat deze de de laatste opdrachten kan dowloaden.
+ +We gaan opnieuw kijken naar de Bank website. Ze hebben tijdelijk hun login formulier uitgeschakeld, maar daarmee zijn ze nog steeds niet veilig van hun beveiligingsproblemen.
+ +Ga naar de "Bank (xss)" pagina voor de volgende opdrachten. + +
Leaky heeft zijn webshop uitgebreid: je kan nu op de product pagina's doorklikken op de plaatjes voor een grote ingezoomde afbeelding. Op deze pagina is echter ook een XSS beveiligingslek.
+ +De website heeft nu ook PHP session cookies waar jij als hacker natuurlijk erg in geïnteresseerd bent.
+ +Verander de pagina zodat deze automatisch de cookie naar jouw eigen website toestuurt.
+ +Hint 1: Bekijk de HTML, zoek naar plekken waar de parameter uit de URL worden gebruikt
+ +Hint 2: Cookies kan je in JavaScript uitlezen met document.cookie
+ +Hint 3: Onderzoek het 'onload' attribuut van een img tag in HTML.
+ +Hint 4: Als de src niet naar een geldige afbeelding wijst zal de onload niet uitgevoerd worden
+ +Hint 5: Als je in een URL het + tekentje gebruikt wordt dit vertaald naar een spatie. Als je ook echt een + wilt gebruiken moet je de url encoded versie gebruiken: %2B
+ +We gaan nu een aanval doen op een populaire nieuwssite. Ga naar de "Nieuws" pagina voor de volgende opdrachten.
+ +Deze site heeft geen plekken waar we via de URL's javascript aan de pagina kunnen toevoegen. Bovendien zijn de administrators van deze site veel te slim om op rare links te klikken in vage e-mailtjes. We gaan het via een stored XSS attack te doen.
+ +1. Voeg via de reacties javascript aan de pagina toe die cookies steelt. Je moet deze cookies nu ook echt naar een eigen server sturen om de opdracht te kunnen maken. Zet op een eigen website een scriptje die alle requests in een bestandje/database logt zodat je daar later de cookies kunt uitlezen. Voorbeeld: student.aii.avans.nl/ICT/pwagener/logcookie.php?PHPSESSID=2394fh3dk
+ +2. Je kan nu een ingelogde administrator naar de pagina (met jouw javascript) laten kijken door een melding te maken. Onderaan de reactiepagina staat een link (je kan ook rechtstreeks naar /nieuws/admincheck.php).
+ +3. Als het goed is heb je nu de cookie van de administrator gestolen. Verander in de browser jouw eigen cookie naar de cookie van de administrator. Zoek naar een browserplugin als je dit niet al kan met jouw browser.
+ +4. Bekijk opnieuw de reactiepagina. Je bent nu ingelogd als de administrator!
+ +Tip: op /nieuws/reset.php is een speciale pagina die al het commentaar wist. Dit is handig als je jouw aanval wil verbeteren.
+ +(Let op dat je de VM op NAT hebt ingesteld zodat deze verbinding kan maken naar het internet)
+ +Maak de opgave "6112 - OWASP 2010 - A2 - Cross-Site Scripting" uit het OWASP Top Ten event.
+ +