SYSTÈME D'ADMINISTRATION POUR CRÉATION D'ARTICLES

Messages postés
496
Date d'inscription
jeudi 7 juillet 2005
Statut
Membre
Dernière intervention
24 mai 2017
- - Dernière réponse : tyranausor
Messages postés
3523
Date d'inscription
jeudi 6 août 2009
Statut
Membre
Dernière intervention
21 avril 2019
- 18 avril 2019 à 16:00
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/54920-systeme-d-administration-pour-creation-d-articles

Afficher la suite 
cs_stay
Messages postés
496
Date d'inscription
jeudi 7 juillet 2005
Statut
Membre
Dernière intervention
24 mai 2017
2 -
Salut, tu t'es trompé. tu as mis, Niveau :Initié.
J'ai une question, en faite il y en aurait une dix-saine avant celle-ci du genre, c'est quoi un article pour toi.
Ma question, pour supprimer ou éditer un article, qu'est-ce-que tu as prévu ?
alfrai
Messages postés
69
Date d'inscription
mardi 11 avril 2006
Statut
Membre
Dernière intervention
23 juillet 2013
-
Je suis encore un débutant, merci pour la source !
cs_emilia123
Messages postés
122
Date d'inscription
mercredi 19 décembre 2001
Statut
Membre
Dernière intervention
5 janvier 2009
-
Bonjour,

Effectivement, cette source n'est malheureusement pas du niveau "initié".

Elle comporte des problèmes de sécurité et ne devrait donc pas être utilisée.
Problème SQL :
fichier systeme/script/envoi.php :
------------------------------------
$sql="INSERT INTO ".$bdd." (".$cols.") VALUES ('$titre','$text','$page') ";
------------------------------------
Aucune sécurisation n'est faite sur les variables ($titre, $text, $page) avant de les insérer dans la requête SQL.
En utilisant la bonne écriture, il est facile pour un attaquant de travailler directement sur ta base de donnée (insertion de donnée, création de table, suppression de données/tables, etc...).
Il FAUT TOUJOURS (majuscule, gras, souligné, couleur rouge) sécuriser les variables reçues d'un internaute en la passant par des fonctions du type :
mysql_real_escape_string(...) (dans le cadre de l'utilisation de mysql).

Problème fonctionnel :
fichier systeme/script/envoi.php :
------------------------------------
extract($_POST) ;
------------------------------------
il ne FAUT PAS (majuscule, gras, souligné, couleur rouge) utiliser ce type de fonction.
Dans ton script, si tu as une variable sensible (ex : gestion des droits d'accès) et que tu as oublié de l'initialiser, la présence de la fonction "extract" permet à un attaquant de l'initialiser à ta place... et donc de prendre le contrôle de ton script.
C'est à toi de savoir quelles sont les variables à récupérer et de les récupérer directement à la source ($_POST)...

Bonne continuation

EM.
mysql_query pour un initié ?????
Tout d'abord merci pour vos remarques très pertinente ! Je tient à préciser que vous pourriez surement trouver mon niveau de codage à la limite du ridicule et que j'ai sans doutes surestimer mes compétence à ce niveau. Je tient à dire aussi que ce projet a était réalisé dans le but d'aider certains/certaines débutant(e)s cherchant désespérément un système d'administration pour leurs articles (Évidemment, il y en a 10x mieux que le miens). Par la suite, je l'est aussi posté pour qu'on me critique et que j'essaie d'améliorer mon système notamment comme la sécurité qu'a évoquer emilia123. Je l'améliorait par la suite...

PS: STAY ! Je n'est pas compris ce que tu voulais dire au sujet de : "J'ai une question, en faite il y en aurait une dix-saine avant celle-ci du genre, c'est quoi un article pour toi." ??