Le projet est jeune, autant rectifier tout de suite.
Il est où le dépôt de sources ? Le SVN sur SF est vide.
if (isset($_GET['flux'])) require_once 'flux.php';
if (isset($_GET['book'])) require_once 'book.php';
if (isset($_GET['notes'])) require_once 'notes.php';
if (isset($_GET['cave'])) require_once 'cave.php';
if (isset($_GET['admin'])) require_once 'admin.php';
Peut être écrit en toute sécurité :
$module_list = array('flux', /* ...*/ 'admin') ;
foreach($module in $module_list))
if (isset($_GET[$module]))
require_once $module . '.php';
Aïe. Autant faire extract($_POST, $liste_des_variables_a_extraire). Ce sera plus court, et tout aussi horrible. Mais au moins ce sera plus lisible.
if ($_POST) {
$result = mysql_query("SELECT * FROM `log` WHERE `user` = '".$myusername."' AND `pass` = '".$mypassword ."'");
$count=mysql_num_rows($result);
/* ... */
echo '';
Combo SQL injection, CSRF, XSS.
À noter que tout le code est ouvert aux failles de sécurité. Bref, il va falloir suspendre l'ajour de nouvelles fonctionnalités, et penser à s'occuper en priorité de ces petits problèmes.
# Sécurité
Posté par LupusMic (site web personnel, Mastodon) . En réponse à la dépêche Publication de Ardilla 0.1 Bêta. Évalué à 10.
Il est où le dépôt de sources ? Le SVN sur SF est vide.
if (isset($_GET['flux'])) require_once 'flux.php';
if (isset($_GET['book'])) require_once 'book.php';
if (isset($_GET['notes'])) require_once 'notes.php';
if (isset($_GET['cave'])) require_once 'cave.php';
if (isset($_GET['admin'])) require_once 'admin.php';
Peut être écrit en toute sécurité :
$module_list = array('flux', /* ...*/ 'admin') ;
foreach($module in $module_list))
if (isset($_GET[$module]))
require_once $module . '.php';
$myusername = '';
if (!empty ($_POST['pseudo'])) {
$myusername = $_POST['pseudo'];
}
Aïe. Autant faire extract($_POST, $liste_des_variables_a_extraire). Ce sera plus court, et tout aussi horrible. Mais au moins ce sera plus lisible.
if ($_POST) {
$result = mysql_query("SELECT * FROM `log` WHERE `user` = '".$myusername."' AND `pass` = '".$mypassword ."'");
$count=mysql_num_rows($result);
/* ... */
echo '';
Combo SQL injection, CSRF, XSS.
À noter que tout le code est ouvert aux failles de sécurité. Bref, il va falloir suspendre l'ajour de nouvelles fonctionnalités, et penser à s'occuper en priorité de ces petits problèmes.