RegistrierenSidebar verstecken
Nickname: 
Passwort: 
Sitzung auf IP beschränken 
Fragen  |  score: 3  |  4.07 5.40 5.19 |  Von 1100 Mitgliedern gelöst  |  94421 views  |  seit 30. Mai 2009 04:33:53

PHP 0815 (Exploit, PHP)

PHP 0815
Ich habe dieses Script geschrieben, aber es ist anfällig für SQL Injection.
Deine Aufgabe ist es eine fehlerbereinigte Version zu senden.
Die Lösung ist "der Fix/Patch" mit dem geringsten Schreibaufwand, welcher sicherstellt das das Script auch weiterhin funktioniert.
Wenn du denkst, "urldecode()" würde das Script reparieren, gebe es einfach als Lösung ein.
Die Lösung besteht aus allen Zeichen, die du hinzufügen müsstest.
GeSHi`ed PHP Quelltext
1
2
3
4
56
7
8
9
1011
12
13
14
1516
17
18
19
2021
<?php
# Only allow these ID's
$whitelist = array(1, 2, 3);
 
# if show is not set die with error.if (false === ($show = isset($_GET['show']) ? $_GET['show'] : false)) {
        die('MISSING PARAMETER; USE foo.bar?show=[1-3]');
}
# check if get var is sane (is it in whitelist ?)
elseif (in_array($show, $whitelist)){
        $query = "SELECT 1 FROM `table` WHERE `id`=$show";
        echo 'Query: '.htmlspecialchars($query, ENT_QUOTES).'<br/>';
        die('SHOWING NUMBER '.htmlspecialchars($show, ENT_QUOTES));
}else # Not in whitelist !
{
        die('HACKER NONONO');
}
?> 
© 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023 und 2024 by Gizmore