Merge branch 'image' of https://github.com/Avans/Security-Workshop into xss
@ -0,0 +1,7 @@ |
|||||||
|
<?php |
||||||
|
|
||||||
|
header('Content-Type: image/jpeg'); |
||||||
|
|
||||||
|
echo file_get_contents($_GET['file']); |
||||||
|
|
||||||
|
?> |
@ -0,0 +1,41 @@ |
|||||||
|
<?php |
||||||
|
if($_FILES) { |
||||||
|
move_uploaded_file($_FILES["file"]["tmp_name"], "uploads/" . $_FILES["file"]["name"]); |
||||||
|
} |
||||||
|
?><!DOCTYPE html> |
||||||
|
<html lang="en"> |
||||||
|
<head> |
||||||
|
<meta charset="utf-8"> |
||||||
|
<title>imgr: the simple image sharer</title> |
||||||
|
|
||||||
|
<link rel="stylesheet" href="/themes/css/bootstrap.min.css" media="screen"/> |
||||||
|
<link rel="stylesheet" href="/themes/css/imgr.css" media="screen"/> |
||||||
|
|
||||||
|
<!-- De code in dit bestand is met opzet slecht en zeer onveilig opgezet. |
||||||
|
GEBRUIK DEZE CODE NIET als referentiemateriaal voor je eigen PHP projecten! --> |
||||||
|
</head> |
||||||
|
|
||||||
|
<body class="row-fluid"> |
||||||
|
|
||||||
|
<div id="site-header"> |
||||||
|
<img src="/themes/images/imgr.png" class="offset1"> |
||||||
|
</div> |
||||||
|
|
||||||
|
<div class="panel span6 offset1 images"> |
||||||
|
<div class="header">The <em>meest recente</em> plaatjes van vandaag:</div> |
||||||
|
<?php |
||||||
|
foreach ( glob('uploads/*') as $image ) { |
||||||
|
echo '<a href="image.php?file='.$image.'"><img src="'.$image.'"></a>'; |
||||||
|
} |
||||||
|
?> |
||||||
|
</div> |
||||||
|
|
||||||
|
<div class="panel span4"> |
||||||
|
<form enctype="multipart/form-data" method="POST"> |
||||||
|
<input type="file" name="file"> |
||||||
|
<button type="submit">Upload afbeelding</button> |
||||||
|
</form> |
||||||
|
</div> |
||||||
|
|
||||||
|
</body> |
||||||
|
</html> |
After Width: | Height: | Size: 429 KiB |
After Width: | Height: | Size: 405 KiB |
After Width: | Height: | Size: 372 KiB |
After Width: | Height: | Size: 91 KiB |
After Width: | Height: | Size: 353 KiB |
After Width: | Height: | Size: 521 KiB |
@ -0,0 +1,72 @@ |
|||||||
|
body { |
||||||
|
background-color: #121211; |
||||||
|
color: white; |
||||||
|
margin: 0 auto; |
||||||
|
font-family: Arial, sans-serif; |
||||||
|
} |
||||||
|
|
||||||
|
#center { |
||||||
|
margin: 0 auto; |
||||||
|
float: none; |
||||||
|
} |
||||||
|
|
||||||
|
#site-header { |
||||||
|
background-color: #2b2b2b; |
||||||
|
border-bottom: 4px solid #444442; |
||||||
|
height: 36px; |
||||||
|
margin-bottom: 10px; |
||||||
|
} |
||||||
|
|
||||||
|
#site-header img { |
||||||
|
height: 36px; |
||||||
|
} |
||||||
|
|
||||||
|
.panel { |
||||||
|
background-color: #2b2b2b; |
||||||
|
padding: 25px; |
||||||
|
-webkit-border-radius: 10px; |
||||||
|
-moz-border-radius: 10px; |
||||||
|
border-radius: 10px; |
||||||
|
font-weight: 700; |
||||||
|
} |
||||||
|
|
||||||
|
.header { |
||||||
|
background-color: #181817; |
||||||
|
-webkit-border-radius: 4px; |
||||||
|
-moz-border-radius: 4px; |
||||||
|
border-radius: 4px; |
||||||
|
padding: 10px; |
||||||
|
margin-bottom: 10px; |
||||||
|
height: 19px; |
||||||
|
line-height: 18px; |
||||||
|
color: #ddddd1; |
||||||
|
} |
||||||
|
|
||||||
|
.header em { |
||||||
|
font-style: normal; |
||||||
|
color: #85bf25; |
||||||
|
} |
||||||
|
|
||||||
|
.images img { |
||||||
|
width: 135px; |
||||||
|
height: 135px; |
||||||
|
margin: 3px; |
||||||
|
float: left; |
||||||
|
border: 3px solid #444442; |
||||||
|
} |
||||||
|
|
||||||
|
button { |
||||||
|
background: #2b2b2b; |
||||||
|
background: -moz-linear-gradient(top,#2b2b2b 0,#444442 0,#121211 100%); |
||||||
|
background: -webkit-gradient(linear,left top,left bottom,color-stop(0%,#2b2b2b),color-stop(0%,#444442),color-stop(100%,#121211)); |
||||||
|
background: -webkit-linear-gradient(top,#2b2b2b 0,#444442 0,#121211 100%); |
||||||
|
background: -o-linear-gradient(top,#2b2b2b 0,#444442 0,#121211 100%); |
||||||
|
background: -ms-linear-gradient(top,#2b2b2b 0,#444442 0,#121211 100%); |
||||||
|
background: linear-gradient(to bottom,#2b2b2b 0,#444442 0,#121211 100%); |
||||||
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#444442', endColorstr='#121211', GradientType=0); |
||||||
|
border-radius: 8px; |
||||||
|
color: white; |
||||||
|
font-weight: 700; |
||||||
|
width: 100%; |
||||||
|
padding: 4px; |
||||||
|
} |
After Width: | Height: | Size: 1.6 KiB |