Initial commit
This commit is contained in:
commit
517e8092e8
82 files changed
+1969
No files matched your search
@@ -0,0 +1,78 @@
|
||||
<h1>Insecure Direct Object References</h1>
|
||||
|
||||
<img src="/static/img/imgr.png">
|
||||
|
||||
<h2>Image site</h2>
|
||||
|
||||
<p>Ons nieuwe doelwit is de site "imgr", een populaire website waar vaak meme plaatjes naar worden geüpload. Er is geen database
|
||||
dus we kunnen geen SQL injection uitvoeren, en cross-site scripting is ook geen mogelijkheid meer op deze site (...toch?).</p>
|
||||
|
||||
<p>We zijn geïnteresseerd in de inhoud van een bestandje wat staat in de VM: "/etc/geheim.txt". Hack de website en vind uit
|
||||
wat de inhoud van dit bestandje is.</p>
|
||||
|
||||
<p class="hint">
|
||||
<strong>Hint:</strong> het lijkt er op dat je niet alleen plaatjes kan uploaden...</p>
|
||||
|
||||
<p class="hint">
|
||||
<strong>Hint:</strong> Zoek een manier om een eigen php script te uploaden en te runnen</p>
|
||||
|
||||
<div class="question">
|
||||
<span class="question-string">Wat staat er in /etc/geheim.txt? (Het is een supersecret TODO item)</span>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<h2>Image 2</h2>
|
||||
<p>Ga naar "Image 2". De site heeft het probleem opgelost door de upload map te verplaatsen naar een map die niet via de webserver
|
||||
bereikbaar is. De plaatjes worden nu via een speciaal image.php (
|
||||
<a href="https://git.paulwagener.nl/Paul/Security-VM/src/image/image.php">source</a>) bestandje geinclude. Daarmee heeft de site ook weer een enorm security probleem geïntroduceerd! </p>
|
||||
|
||||
<p class="hint">Met een paar extra
|
||||
<code>../</code> kan je file_get_contents() een hele hoop bestanden laten uitlezen!</p>
|
||||
|
||||
<div class="question">
|
||||
<span class="question-string">Met welke URL kan je nu rechtstreeks de inhoud van /etc/geheim.txt uitlezen?</span>
|
||||
</div>
|
||||
|
||||
<p>Verander image.php in image_check_prefix.php (
|
||||
<a href="https://git.paulwagener.nl/Paul/Security-VM/src/master/image/image_check_prefix.php">source</a>) . In dit bestand is een extra beveiliging die checkt of het pad begint met de map 'uploads'</p>
|
||||
|
||||
<div class="question">
|
||||
<span class="question-string">Met welke URL kan je met dit meer 'beveiligde' script de inhoud van /etc/geheim.txt uitlezen?</span>
|
||||
</div>
|
||||
|
||||
<p>Verander de bestandsnaam in image_remove_traversal.php (
|
||||
<a href="https://git.paulwagener.nl/Paul/Security-VM/src/master/image/image_remove_traversal.php">source</a>) , dit script heeft nu een beveiliging die alle '../' uit de string verwijderd zodat je niet meer ../ in de
|
||||
URL kan gebruiken.</p>
|
||||
|
||||
<p class="hint">
|
||||
<strong>Hint:</strong> Weet je nog hoe je deze beveiliging ongedaan hebt gemaakt bij die website die alle SELECT en UNION uit de
|
||||
URL filterde?</p>
|
||||
|
||||
<div class="question">
|
||||
<span class="question-string">Met welke URL kan je via het image_remove_traversal.php script de inhoud van /etc/geheim.txt uitlezen?</span>
|
||||
</div>
|
||||
|
||||
<p>Zoek op internet naar 'Directory traversal' en zoek uit wat voor technieken er nog meer mogelijk zijn.</p>
|
||||
|
||||
<div class="question">
|
||||
<span class="question-string">Beschrijf hoe jij de site zou programmeren zodat alle directory traversal aanvallen niet meer mogelijk zijn.</span>
|
||||
</div>
|
||||
|
||||
<img src="/static/img/parent_dir.png" class="center-block">
|
||||
|
||||
<h2>Image 3</h2>
|
||||
|
||||
<p>Ga naar "Image 3". imgr heeft hun site uitgebreid met extra pagina's (
|
||||
<a href="https://git.paulwagener.nl/Paul/Security-VM/src/image/index_more_pages.php">source</a>). De afbeeldingen hebben ze maar weggehaald omdat daar teveel security problemen mee waren.</p>
|
||||
|
||||
<p class="hint">
|
||||
<strong>Hint:</strong> imgr zijn bezig met het maken van een inlogpagina en een registreren pagina.</p>
|
||||
|
||||
<p class="hint">
|
||||
<strong>Hint:</strong> Heb je de broncode al bekeken? Die regel met
|
||||
<code>include()</code> ziet er interessant uit...</p>
|
||||
|
||||
<div class="question">
|
||||
<span class="question-string">Beschrijf hoe je met deze site de inhoud van /etc/geheim.txt kan achterhalen</span>
|
||||
</div>
|
||||
Reference in new issue
Block a user