Livre d'or sql piraté
Résolu
LLorina
Messages postés
324
Date d'inscription
Statut
Membre
Dernière intervention
-
LLorina Messages postés 324 Date d'inscription Statut Membre Dernière intervention -
LLorina Messages postés 324 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai réalisé un site pour une amie Kinésiologue. Pour la gestion des messages déposés sur le livre d'or, j'ai créé une base de données SQL mais je n'ai pas l'habitude des bases SQL, il se peut que des erreurs trainent d'où cette intrusion... ? Je m'étais aidé d'un code trouvé sur internet pour ça.
En passant par hasard aujourd'hui, je me rends compte que le livre d'or a été piraté (ou hacké).
J'ai tout vidé ma table livredor SQL car il y avait 30 000 messages dessus avec des liens, des phrases en anglais de tout type...
Voici le code, pourriez(vous m'aider à trouver mon erreur qui aurait provoqué cette intrusion ou qu'est-ce qui aurait été rajouté à mon insu ?
J'ai juste un gros doute sur
<SCRIPT language="javascript">
function popup(page,nom,option) {
window.open(page,nom,option); }
</SCRIPT>
car je ne me souviens pas de l'avoir mis...
Qu'en pensez-vous ?
Un énorme merci à vous. Le site en question est http://www.kinesiologie-relaxation.com/livredor.php
bon dimanche !
J'ai réalisé un site pour une amie Kinésiologue. Pour la gestion des messages déposés sur le livre d'or, j'ai créé une base de données SQL mais je n'ai pas l'habitude des bases SQL, il se peut que des erreurs trainent d'où cette intrusion... ? Je m'étais aidé d'un code trouvé sur internet pour ça.
En passant par hasard aujourd'hui, je me rends compte que le livre d'or a été piraté (ou hacké).
J'ai tout vidé ma table livredor SQL car il y avait 30 000 messages dessus avec des liens, des phrases en anglais de tout type...
Voici le code, pourriez(vous m'aider à trouver mon erreur qui aurait provoqué cette intrusion ou qu'est-ce qui aurait été rajouté à mon insu ?
J'ai juste un gros doute sur
<SCRIPT language="javascript">
function popup(page,nom,option) {
window.open(page,nom,option); }
</SCRIPT>
car je ne me souviens pas de l'avoir mis...
Qu'en pensez-vous ?
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <title> Kinésiologie - Relaxation 30 : Médecine Douce </title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link rel="stylesheet" type="text/css" href="style.css" title="défaut"> <SCRIPT language="javascript"> function popup(page,nom,option) { window.open(page,nom,option); } </SCRIPT> </head> <body lang="fr"> <div id="page"> <div id="entete"><?php include("entete.php");?></div> <div id="contenu"> <div id="menuGauche"><?php include("menuGauche2.php");?></div> <div id="texte"> <h1>Livre d'Or</h1> <form method="post" action="livredor.php"> <p>Un avis sur mon site ? Exprimez-vous ici !</p> <p> Pseudo : <input name="pseudo" /><br /> E-mail : <input name="email" /><br /> Message :<br /> <textarea name="message" rows="8" cols="35"></textarea><br /> <input type="submit" value="Envoyer" /> </p> </form> <p class="pages"> <?php mysql_connect("base", "utilisateur", "mdp"); mysql_select_db("utilisateur"); // --------------- Étape 1 ----------------- // Si un message est envoyé, on l'enregistre // ----------------------------------------- if (isset($_POST['pseudo']) AND isset($_POST['message'])) { $date=date("Y-m-d H:i"); $pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo'])); // On utilise mysql_real_escape_string et htmlspecialchars par mesure de sécurité $email = mysql_real_escape_string(htmlspecialchars($_POST['email'])); $message = mysql_real_escape_string(htmlspecialchars($_POST['message'])); // De même pour le message $message = nl2br($message); // Pour le message, comme on utilise un textarea, il faut remplacer les Entrées par des <br /> // On peut enfin enregistrer :o) mysql_query("INSERT INTO livredor VALUES('', '" . $pseudo . "', '" . $message . "', '". $date . "', '" . $email . "')"); } // --------------- Étape 2 ----------------- // On écrit les liens vers chacune des pages // ----------------------------------------- // On met dans une variable le nombre de messages qu'on veut par page $nombreDeMessagesParPage = 30; // Essayez de changer ce nombre pour voir :o) // On récupère le nombre total de messages $retour = mysql_query('SELECT COUNT(*) AS nb_messages FROM livredor'); $donnees = mysql_fetch_array($retour); $totalDesMessages = $donnees['nb_messages']; // On calcule le nombre de pages à créer $nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage); // Puis on fait une boucle pour écrire les liens vers chacune des pages echo 'Page : '; for ($i = 1 ; $i <= $nombreDePages ; $i++) { echo '<a href="livredor.php?page=' . $i . '">' . $i . '</a> '; } ?> </p> <?php // --------------- Étape 3 --------------- // Maintenant, on va afficher les messages // --------------------------------------- if (isset($_GET['page'])) { $page = $_GET['page']; // On récupère le numéro de la page indiqué dans l'adresse (livredor.php?page=4) } else // La variable n'existe pas, c'est la première fois qu'on charge la page { $page = 1; // On se met sur la page 1 (par défaut) } // On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL $premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage; $reponse = mysql_query('SELECT * FROM livredor ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage); while ($donnees = mysql_fetch_array($reponse)) { echo '<p><strong>' . $donnees['pseudo'] . ' (<a href="mailto:' .$donnees['email'] . '">mail</a>) ' . $donnees['date'] . ' ' . $donnees['heure'] . '</strong> a écrit :<br />' . $donnees['message'] . '</p>'; } mysql_close(); // On n'oublie pas de fermer la connexion à MySQL ;o) ?> </div> </div> </div> <div id="pied"> <p>2012 © Kinésiologie - Relaxation</p> <p>Site web créé par NOM WEBMASTER</a></p> </div> </div> </body> </html>
Un énorme merci à vous. Le site en question est http://www.kinesiologie-relaxation.com/livredor.php
bon dimanche !
A voir également:
- Livre d'or sql piraté
- Or - Guide
- Facebook pirate - Guide
- Télécharger livre de lecture ce2 gratuit pdf - Télécharger - Éducatifs
- Livre coran en français pdf - Télécharger - Histoire & Religion
- Compte instagram piraté - Accueil - Guide piratage
5 réponses
Bonjour,
Il est probable qu'il ne soit piraté. mdr.
Il est spammée, Il faut ajouter un code antispams ou une partie admin pour valider les messages
Configuration: Windows XP / Safari 537.1
Il est probable qu'il ne soit piraté. mdr.
Il est spammée, Il faut ajouter un code antispams ou une partie admin pour valider les messages
Configuration: Windows XP / Safari 537.1
Salut,
htmlspecialchars n'est pas suffisant. Comme le nom de la fonction l'indique, ça protège contre l'inclusion de balises HTML mais pas de fonctions SQL. Et même avec l'autre fonction avant ça reste possible à contourner.
Une solution simple : Utiliser les requêtes préparées avec PDO.
https://lmgtfy.app/?q=pdo+requ%C3%AAtes+pr%C3%A9par%C3%A9es+site+du+zero
a+
Edit : Sinon ça peut venir d'autre part. Vérifies, si tu en as, tes scripts d'upload. Si ils sont mal sécurisés les pirates peuvent envoyer ce qu'on appelle un Shell sur ton site et le contrôler presque entièrement.
Et utilise atoi pour la variable page.
Edit : Le popup c'est pour de la musique de fond apparemment.
Musicalement,
DJ Fire-Bl@ck.
htmlspecialchars n'est pas suffisant. Comme le nom de la fonction l'indique, ça protège contre l'inclusion de balises HTML mais pas de fonctions SQL. Et même avec l'autre fonction avant ça reste possible à contourner.
Une solution simple : Utiliser les requêtes préparées avec PDO.
https://lmgtfy.app/?q=pdo+requ%C3%AAtes+pr%C3%A9par%C3%A9es+site+du+zero
a+
Edit : Sinon ça peut venir d'autre part. Vérifies, si tu en as, tes scripts d'upload. Si ils sont mal sécurisés les pirates peuvent envoyer ce qu'on appelle un Shell sur ton site et le contrôler presque entièrement.
Et utilise atoi pour la variable page.
Edit : Le popup c'est pour de la musique de fond apparemment.
Musicalement,
DJ Fire-Bl@ck.
Merci beaucoup de ta réponse aussi rapide.
Par contre dans le tuto du site du zéro, il est noté de modifié le php.ini
Saurais-tu me dire comment on y accède sur un serveur mutualisé ovh ?
Merci par avance.
Par contre dans le tuto du site du zéro, il est noté de modifié le php.ini
Saurais-tu me dire comment on y accède sur un serveur mutualisé ovh ?
Merci par avance.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
j'ai le même problème, j'ai créé un livre d'or sur mon site, mais j'ai entre autre des spams qui viennent polluer le livre d'or avec par exemple nom auteur : dsqhbisdbhisbh, une adresse mail du même type et idem pour le message. Comment faire en sorte que ces spams ne puissent entrer sur le livre d'or sans que j'ai moi-même à les supprimer manuellement de la base de donnée?
Merci d'avance.
Cordialement.
j'ai le même problème, j'ai créé un livre d'or sur mon site, mais j'ai entre autre des spams qui viennent polluer le livre d'or avec par exemple nom auteur : dsqhbisdbhisbh, une adresse mail du même type et idem pour le message. Comment faire en sorte que ces spams ne puissent entrer sur le livre d'or sans que j'ai moi-même à les supprimer manuellement de la base de donnée?
Merci d'avance.
Cordialement.