Il y a actuellement 257 visiteurs
Vendredi 19 Avril 2024
accueilactualitésdossierscomparer les prixtélécharger gratuitement vos logicielsoffres d'emploiforum informatique
Connexion
Créer un compte

M'aider à sécuriser un ficher (faille XSS)

Besoin d'aide pour configurer un serveur ? Vous souhaitez obtenir des conseils pour référencer votre site ? Un petit souci pour accéder à votre FTP ? Des soucis de programmation en PHP / ASP / HTML / XHTML / XML / XSLT / CSS / ReactJS / AngularJS / VueJS / CGI / PERL / C / MySQL / PostgreSQL ??? Nous avons peut-être la solution dans ce forum ...

M'aider à sécuriser un ficher (faille XSS)

Message le 17 Juin 2007 12:27

Bonjour à tous,

Voila j'ai un site sur l'art, et j'ai un script* qui permet à un membre d'annoncer ses futurs expositions, le problème étant que quelqu'un à su pirater mon site grâce à une faille XSS de mon formulaire. Quelqu'un serait-il m'aider à 'enlever cette ou ces failles ? Car je suis assez novice...


Un tout grand merci ;)


*
Code: Tout sélectionner
<? include "../compteur/mclc.php"; ?>
<?php require_once('../Connections/Connection_mysql.php'); ?>
<?php
//   ---------------------------------------------
//   Pure PHP Upload version 1.1
//   -------------------------------------------
if (phpversion() > "4.0.6") {
   $HTTP_POST_FILES = &$_FILES;
}
define("MAX_SIZE",100000);
define("DESTINATION_FOLDER", "./img");
define("no_error", "dernier-ajout.php");
define("yes_error", "erreur.php");
$_accepted_extensions_ = "jpg,jpeg";
if(strlen($_accepted_extensions_) > 0){
   $_accepted_extensions_ = @explode(",",$_accepted_extensions_);
} else {
   $_accepted_extensions_ = array();
}
$_file_ = @$HTTP_POST_FILES['image'];
if(is_uploaded_file($_file_['tmp_name']) &&
$HTTP_POST_FILES['image']['error'] == 0){
   $errStr = "";
   $rubrique = $_POST['rubrique'];
   $departement = $_POST['departement'];
   $pays = $_POST['pays'];
   $nom = $_POST['nom'];
   $prenom = $_POST['prenom'];
   $titre = $_POST['titre'];
   $debut_jour = $_POST['debut_jour'];
   $debut_mois = $_POST['debut_mois'];
   $debut_annee = $_POST['debut_annee'];
   $fin_jour = $_POST['fin_jour'];
   $fin_mois = $_POST['fin_mois'];
   $fin_annee = $_POST['fin_annee'];
   $lieu = $_POST['lieu'];
   $infos = $_POST['infos'];
   $url = $_POST['url'];
   $email = $_POST['email'];
   $description = $_POST['description'];
   $_name_ = $_file_['name'];
   $_type_ = $_file_['type'];
   $_tmp_name_ = $_file_['tmp_name'];
   $_size_ = $_file_['size'];
   if($_size_ > MAX_SIZE && MAX_SIZE > 0){
      $errStr = "Fichier trop lourd";
   }
   $_ext_ = explode(".", $_name_);
   $_ext_ = strtolower($_ext_[count($_ext_)-1]);
   if(!in_array($_ext_, $_accepted_extensions_) &&
count($_accepted_extensions_) > 0){
      $errStr = "Extension non valide";
   }
   if(!is_dir(DESTINATION_FOLDER) && is_writeable(DESTINATION_FOLDER)){
      $errStr = "Cartella di destinazione non valida";
   }
   if(empty($errStr)){

   // enlever les accents dans le champ image
   $_name_ = strtr($_name_,
'AAAAAACEEEEIIIIOOOOOUUUUYàaâaaaçèéêëiiîïðooôoöùuûuyy',
'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
// remplacer les caracteres autres que lettres, chiffres et point par _
$_name_ = preg_replace('/([^.a-z0-9]+)/i', '_', $_name_);

// Convertir le mot en majuscule
$nom = strtoupper($nom);

// Convertir en majuscule les premières lettres de chaques mots
$prenom = ucwords($prenom);

// Convertir en majuscule la première lettre
$titre = ucfirst($titre);
$date = ucfirst($date);
$lieu = ucfirst($lieu);
$infos = ucfirst($infos);
$description = ucfirst($description);

      if(@move_uploaded_file($_tmp_name_,DESTINATION_FOLDER . "/" .
$_name_)){header("Location: " . no_error);
         //enregistrement dans la base de l'édito
         mysql_select_db($database_Connection_mysql, $Connection_mysql);
         $insertEdito = "INSERT INTO exposition (rubrique, departement, pays, nom,
prenom, titre, debut_jour, debut_mois, debut_annee, fin_jour, fin_mois,
fin_annee, lieu, infos, url, email, description,  image ) VALUES
('$rubrique', '$departement','$pays','$nom', '$prenom', '$titre',
'$debut_jour', '$debut_mois', '$debut_annee', '$fin_jour', '$fin_mois',
'$fin_annee', '$lieu', '$infos', '$url', '$email', '$description',
'$_name_')";
         mysql_query($insertEdito, $Connection_mysql) or die(mysql_error());
         } else {
         header("Location: " . yes_error);
      }
   } else {
      header("Location: " . yes_error);
   }
}
?>
<html><!-- InstanceBegin template="/Templates/annonce.dwt"
codeOutsideHTMLIsLocked="false" -->

<head>
<meta http-equiv="Content-Language" content="en-us">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Aux aRtistes peinTres</title>
<script language="javascript">
<!--
function popupcentree(page,largeur,hauteur,options)
{
var top=(screen.height-hauteur)/2;
var left=(screen.width-largeur)/2;
window.open(page,"","top="+top+",left="+left+",width="+largeur+",height="+hauteur+","+options);
}
//-->
</script>
<script LANGUAGE="JavaScript">
<!--
function PopupImage(img) {
   titre=".:: Aux aRtistes peinTres ::.";
   w=open("",'image','width=400,height=300,toolbar=no,scrollbars=no,resizable=yes');
   w.document.write("<HTML><HEAD><TITLE>"+titre+"</TITLE></HEAD>");
   w.document.write("<SCRIPT language=javascript>function checksize()  { if
(document.images[0].complete) { 
window.resizeTo(document.images[0].width+12,document.images[0].height+30);
window.focus();} else { setTimeout('check()',250) } }</"+"SCRIPT>");
   w.document.write("<BODY onload='checksize()' leftMargin=0 topMargin=0
marginwidth=0 marginheight=0><IMG src='"+img+"' border=0>");
   w.document.write("");
   w.document.write("</BODY></HTML>");
   w.document.close();
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length;
i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document;
if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++)
x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++)
x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function YY_checkform() { //v4.71
//copyright (c)1998,2002 Yaromat.com
  var
a=YY_checkform.arguments,oo=true,v='',s='',err=false,r,o,at,o1,t,i,j,ma,rx,cd,cm,cy,dte,at;
  for (i=1; i<a.length;i=i+4){
    if (a[i+1].charAt(0)=='#'){r=true;
a[i+1]=a[i+1].substring(1);}else{r=false}
    o=MM_findObj(a[i].replace(/[d+]/ig,""));
    o1=MM_findObj(a[i+1].replace(/[d+]/ig,""));
    v=o.value;t=a[i+2];
    if (o.type=='text'||o.type=='password'||o.type=='hidden'){
      if (r&&v.length==0){err=true}
      if (v.length>0)
      if (t==1){ //fromto
        ma=a[i+1].split('_');if(isNaN(v)||v<ma[0]/1||v > ma[1]/1){err=true}
      } else if (t==2){
        rx=new
RegExp("^[\w.=-]+@[\w\.-]+\.[a-zA-Z]{2,4}$");if(!rx.test(v))err=true;
      } else if (t==3){ // date
        ma=a[i+1].split("#");at=v.match(ma[0]);
        if(at){
          cd=(at[ma[1]])?at[ma[1]]:1;cm=at[ma[2]]-1;cy=at[ma[3]];
          dte=new Date(cy,cm,cd);
         
if(dte.getFullYear()!=cy||dte.getDate()!=cd||dte.getMonth()!=cm){err=true};
        }else{err=true}
      } else if (t==4){ // time
        ma=a[i+1].split("#");at=v.match(ma[0]);if(!at){err=true}
      } else if (t==5){ // check this 2
            if(o1.length)o1=o1[a[i+1].replace(/(.*[)|(].*)/ig,"")];
            if(!o1.checked){err=true}
      } else if (t==6){ // the same
            if(v!=MM_findObj(a[i+1]).value){err=true}
      }
    } else
    if (!o.type&&o.length>0&&o[0].type=='radio'){
          at = a[i].match(/(.*)[(d+)].*/i);
          o2=(o.length>1)?o[at[2]]:o;
      if (t==1&&o2&&o2.checked&&o1&&o1.value.length/1==0){err=true}
      if (t==2){
        oo=false;
        for(j=0;j<o.length;j++){oo=oo||o[j].checked}
        if(!oo){s+='* '+a[i+3]+'
'}
      }
    } else if (o.type=='checkbox'){
     
if((t==1&&o.checked==false)||(t==2&&o.checked&&o1&&o1.value.length/1==0)){err=true}
    } else if (o.type=='select-one'||o.type=='select-multiple'){
      if(t==1&&o.selectedIndex/1==0){err=true}
    }else if (o.type=='textarea'){
      if(v.length<a[i+1]){err=true}
    }
    if (err){s+='* '+a[i+3]+'
'; err=false}
  }
  if (s!=''){alert('The required information is incomplete or contains
errors:               

'+s)}
  document.MM_returnValue = (s=='');
}
//-->
</SCRIPT>
<link href="../style.css" rel="stylesheet" type="text/css">
<style type="text/css">
<!--
.Style5 {font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 9px;
}
-->
</style>
</head>
<body bgcolor="#333333" background="../images/design/bg.gif">
<DIV ID="overDiv" STYLE="position:absolute; visibility:hide; z-index: 1;">
</DIV>

<SCRIPT LANGUAGE="JavaScript" SRC="../Templates/overlib.js">
</SCRIPT>
<div align="center">
  <table border="0" width="600" cellspacing="0" cellpadding="0"
style="border: 1 solid #000000">
    <tr>
      <td width="100%" bgcolor="#999999">        <div align="left"><?
include("http://auxartistespeintres.fr/menu/logo.php"); ?></div></td>
    </tr>
    <tr>
      <td bgcolor="#CCCCCC"><table width="100%"  border="0" cellpadding="0"
cellspacing="1">
        <tr>
          <td><? include("http://auxartistespeintres.fr/menu/banniere.php");
?></td>
        </tr>
      </table></td>
    </tr>
    <tr>
      <td valign="top" bgcolor="#999999"><div align="center">
        <table width="100%"  border="0" cellpadding="0" cellspacing="0">
          <tr>
            <td align="left" valign="top"><img
src="../images/texte/agenda.gif" width="35" height="300"></td>
            <td valign="top"><div align="center">
              <table width="100%" border="0">
                <tr>
                  <td><?
include("http://auxartistespeintres.fr/menu/menu_diaporama2.php"); ?></td>
                  </tr>
                <tr>
                  <td><div align="center"><!-- InstanceBeginEditable
name="index" -->
                    <table width="100%" border="0">
                      <tr>
                        <td>                              <h1
align="left"><img src="../images/design/flecheV.gif" width="10"
height="10"><a href="http://auxartistespeintres.fr/annonce/index.php">
Consulter les annonces d'expositions </a></h1></td></tr>
                      <tr>
                        <td><div align="center">
                          <form method="POST" enctype="multipart/form-data"
name="form1" id="form1" onSubmit="YY_checkform('form1','lieu','#q','0','Le
champ 'lieu' n'est pas rempli.','nom','#q','0','Le champ 'nom' n'est
pas rempli.','email','#S','2','Le champ 'email' n'est pas
valide.','rubrique','#q','1','Le champ 'rubrique' n'est pas
rempli.');return document.MM_returnValue">
                            <table width="95%" border="0" align="center"
cellpadding="5">
                              <tr>
                                <td colspan="2" class="Style5"><div
align="center">
                                  <h2>Ajouter un &eacute;venement en
remplissant correctement le formulaire ci-dessous
                                      <input type="hidden"
name="hiddenField" />
                                    </h2>
                                </div></td>
                              </tr>
                              <tr>
                                <td colspan="2" nowrap="nowrap"
class="Style5"><div align="center" class="Style5" style="font-weight: bold">
Infos sur l'exposition : </div></td>
                                </tr>
                              <tr>
                                <td nowrap="nowrap" class="Style5"><div
align="right">Rubriques : </div></td>
                                <td nowrap="nowrap" class="Style5"><span
class="form">
                                  <select name="rubrique" id="rubrique">
                                    <option>Choississez...</option>
                                    <option value="expositions
personnelles">expositions personnelles</option>
                                    <option value="expositions
collectives">expositions collectives</option>
                                    <option value="concours de
peinture">concours de peinture </option>
                                    <option value="stages et
formations">stages et formations </option>
                                    <option value="festivals et marches
d'art">festivals et marches d'art </option>
                                  </select>
                                </span></td>
                              </tr>
                              <tr>
                                <td nowrap="nowrap" class="Style5"><div
align="right">D&eacute;partement de l'&eacute;v&egrave;nement : </div></td>
                                <td nowrap="nowrap" class="Style5"><label>
                                  <span class="form">
                                  <select name="departement"
id="departement">
                                    <option value=>Choississez...</option>
                                    <option
value="61,departement,ain,01,rhone-alpes,1"
                        >ain </option>
                                    <option
value="62,departement,aisne,02,picardie,1"
                        >aisne </option>
                                    <option
value="63,departement,allier,03,auvergne,1"
                        >allier </option>
                                    <option
value="64,departement,alpes-haute-provence,04,provence-alpes-cote-d-azur,1"
                        >alpes-haute-provence </option>
                                    <option
value="66,departement,alpes-maritimes,06,provence-alpes-cote-d-azur,1"
                        >alpes-maritimes </option>
                                    <option
value="67,departement,ardeche,07,rhone-alpes,1"
                        >ardeche </option>
                                    <option
value="68,departement,ardennes,08,champagne-ardenne,1"
                        >ardennes </option>
                                    <option
value="35,departement,ariege,09,midi-pyrenees,1"
                        >ariege </option>
                                    <option
value="69,departement,aube,10,champagne-ardenne,1"
                        >aube </option>
                                    <option
value="46,departement,aude,11,languedoc-roussillon,1"
                        >aude </option>
                                    <option
value="54,departement,aveyron,12,midi-pyrenees,1"
                        >aveyron </option>
                                    <option
value="87,departement,bas-rhin,67,alsace,1"
                        >bas-rhin </option>
                                    <option
value="70,departement,bouches-du-rhone,13,provence-alpes-cote-d-azur,1"
                        >bouches-du-rhone </option>
                                    <option
value="58,departement,calvados,14,basse-normandie,1"
                        >calvados </option>
                                    <option
value="55,departement,cantal,15,auvergne,1"
                        >cantal </option>
                                    <option
value="45,departement,charente,16,poitou-charente,1"
                        >charente </option>
                                    <option
value="34,departement,charente-maritime,17,poitou-charentes,1"
                        >charente-maritime </option>
                                    <option
value="52,departement,cher,18,centre,1"
                        >cher </option>
                                    <option
value="47,departement,correze,19,limousin,1"
                        >correze </option>
                                    <option
value="71,departement,cote-d'or,21,bourgogne,1"
                        >cote-d'or </option>
                                    <option value="21,departement,cotes
d'armor,22,bretagne,1"
                        >cotes d'armor </option>
                                    <option
value="23,departement,creuse,23,limousin,1"
                        >creuse </option>
                                    <option
value="27,departement,deux-sevres,79,poitou-charentes,1"
                        >deux-sevres </option>
                                    <option
value="37,departement,dordogne,24,aquitaine,1"
                        >dordogne </option>
                                    <option
value="72,departement,doubs,25,franche-comte,1"
                        >doubs </option>
                                    <option
value="73,departement,drome,26,rhone-alpes,1"
                        >drome </option>
                                    <option
value="104,departement,essonne,91,ile-de-france,1"
                        >essonne </option>
                                    <option
value="50,departement,eure,27,haute-normandie,1"
                        >eure </option>
                                    <option
value="49,departement,eure-et-loir,28,centre,1"
                        >eure-et-loir </option>
                                    <option
value="20,departement,finistere,29,bretagne,1"
                        >finistere </option>
                                    <option
value="90,departement,gard,30,languedoc-roussillon,1"
                        >gard </option>
                                    <option
value="31,departement,gers,32,midi-pyrenees,1"
                        >gers </option>
                                    <option
value="26,departement,gironde,33,aquitaine,1"
                        >gironde </option>
                                    <option
value="167,departement,guadeloupe,971,dom-tom,1"
                        >guadeloupe </option>
                                    <option
value="166,departement,guyane,973,dom-tom,1"
                        >guyane </option>
                                    <option
value="88,departement,haut-rhin,68,alsace,1"
                        >haut-rhin </option>
                                    <option
value="25,departement,haute-garonne,31,midi-pyrenees,1"
                        >haute-garonne </option>
                                    <option
value="91,departement,haute-loire,43,auvergne,1"
                        >haute-loire </option>
                                    <option
value="82,departement,haute-marne,52,champagne-ardenne,1"
                        >haute-marne </option>
                                    <option
value="94,departement,haute-saone,70,franche-comte,1"
                        >haute-saone </option>
                                    <option
value="97,departement,haute-savoie,74,rhone-alpes,1"
                        >haute-savoie </option>
                                    <option
value="36,departement,haute-vienne,87,limousin,1"
                        >haute-vienne </option>
                                    <option
value="65,departement,hautes-alpes,05,provence-alpes-cote-d-azur,1"
                        >hautes-alpes </option>
                                    <option
value="41,departement,hautes-pyrenees,65,midi-pyrenees,1"
                        >hautes-pyrenees </option>
                                    <option
value="105,departement,hauts-de-seine,92,ile-de-france,1"
                        >hauts-de-seine </option>
                                    <option
value="53,departement,herault,34,languedoc-roussillon,1"
                        >herault </option>
                                    <option
value="19,departement,ille-et-vilaine,35,bretagne,1"
                        >ille-et-vilaine </option>
                                    <option
value="48,departement,indre,36,centre,1"
                        >indre </option>
                                    <option
value="29,departement,indre-et-loire,37,centre,1"
                        >indre-et-loire </option>
                                    <option
value="77,departement,isere,38,rhone-alpes,1"
                        >isere </option>
                                    <option
value="78,departement,jura,39,franche-comte,1"
                        >jura </option>
                                    <option
value="33,departement,landes,40,aquitaine,1"
                        >landes </option>
                                    <option
value="28,departement,loir-et-cher,41,centre,1"
                        >loir-et-cher </option>
                                    <option
value="79,departement,loire,42,rhone-alpes,1"
                        >loire </option>
                                    <option
value="3,departement,loire-atlantique,44,pays-de-loire,1"
                        >loire-atlantique </option>
                                    <option
value="51,departement,loiret,45,centre,1"
                        >loiret </option>
                                    <option
value="44,departement,lot,46,midi-pyrenees,1"
                        >lot </option>
                                    <option
value="43,departement,lot-et-garonne,47,aquitaine,1"
                        >lot-et-garonne </option>
                                    <option
value="92,departement,lozere,48,languedoc-roussillon,1"
                        >lozere </option>
                                    <option
value="8,departement,maine-et-loire,49,pays-de-loire,1"
                        >maine-et-loire </option>
                                    <option
value="30,departement,manche,50,basse-normandie,1"
                        >manche </option>
                                    <option
value="81,departement,marne,51,champagne-ardenne,1"
                        >marne </option>
                                    <option
value="168,departement,martinique,972,dom-tom,1"
                        >martinique </option>
                                    <option
value="2,departement,mayenne,53,pays-de-loire,1"
                        >mayenne </option>
                                    <option
value="83,departement,meurthe-et-moselle,54,lorraine,1"
                        >meurthe-et-moselle </option>
                                    <option
value="84,departement,meuse,55,lorraine,1"
                        >meuse </option>
                                    <option
value="22,departement,morbihan,56,bretagne,1"
                        >morbihan </option>
                                    <option
value="85,departement,moselle,57,lorraine,1"
                        >moselle </option>
                                    <option
value="75,departement,nievre,58,bourgogne,1"
                        >nievre </option>
                                    <option
value="86,departement,nord,59,nord-pas-de-calais,1"
                        >nord </option>
                                    <option
value="56,departement,oise,60,picardie,1"
                        >oise </option>
                                    <option
value="24,departement,orne,61,basse-normandie,1"
                        >orne </option>
                                    <option
value="98,departement,paris,75,ile-de-france,1"
                        >paris </option>
                                    <option
value="93,departement,pas-de-calais,62,nord-pas-de-calais,1"
                        >pas-de-calais </option>
                                    <option
value="76,departement,puy-de-dome,63,auvergne,1"
                        >puy-de-dome </option>
                                    <option
value="40,departement,pyrenees-atlantiques,64,aquitaine,1"
                        >pyrenees-atlantiques </option>
                                    <option
value="42,departement,pyrenees-orientales,66,languedoc-roussillon,1"
                        >pyrenees-orientales </option>
                                    <option
value="169,departement,r&eacute;union,974,dom-tom,1">r&eacute;union
</option>
                                    <option
value="89,departement,rhone,69,rhone-alpes,1"
                        >rhone </option>
                                    <option
value="170,departement,saint-pierre-et-miquelon,975,dom-tom,1"
                        >saint-pierre-et-miquelon </option>
                                    <option
value="95,departement,saone-et-loire,71,bourgogne,1"
                        >saone-et-loire </option>
                                    <option
value="5,departement,sarthe,72,pays-de-loire,1"
                        >sarthe </option>
                                    <option
value="96,departement,savoie,73,rhone-alpes,1"
                        >savoie </option>
                                    <option
value="99,departement,seine-et-marne,77,ile-de-france,1"
                        >seine-et-marne </option>
                                    <option
value="57,departement,seine-maritime,76,haute-normandie,1"
                        >seine-maritime </option>
                                    <option
value="106,departement,seine-saint-denis,93,ile-de-france,1"
                        >seine-saint-denis </option>
                                    <option
value="114,departement,somme,80,picardie,1"
                        >somme </option>
                                    <option
value="101,departement,tarn,81,midi-pyrenees,1"
                        >tarn </option>
                                    <option
value="32,departement,tarn-et-garonne,82,midi-pyrenees,1"
                        >tarn-et-garonne </option>
                                    <option
value="108,departement,val-d'oise,95,ile-de-france,1"
                        >val-d'oise </option>
                                    <option
value="107,departement,val-de-marne,94,ile-de-france,1"
                        >val-de-marne </option>
                                    <option
value="60,departement,var,83,provence-alpes-cote-d-azur,1"
                        >var </option>
                                    <option
value="102,departement,vaucluse,84,provence-alpes-cote-d-azur,1"
                        >vaucluse </option>
                                    <option
value="6,departement,vendee,85,pays-de-loire,1"
                        >vendee </option>
                                    <option
value="38,departement,vienne,86,poitou-charentes,1"
                        >vienne </option>
                                    <option
value="103,departement,vosges,88,lorraine,1"
                        >vosges </option>
                                    <option
value="74,departement,yonne,89,bourgogne,1"
                        >yonne </option>
                                    <option
value="100,departement,yvelines,78,ile-de-france,1"
                        >yvelines </option>
                                          </select>
                                  </span>
                                ou pays
                                <span class="form">
                                <select name="pays" id="pays">
                                  <option value="France">France</option>
                                  <option value="472,pays,allemagne,,,5"
                        >allemagne</option>
                                  <option value="161,pays,belgique,,,5"
                        >belgique</option>
                                  <option value="172,pays,cameroun,,,5"
                        >cameroun</option>
                                  <option value="159,pays,canada,,,5"
                        >canada</option>
                                  <option value="968,pays,espagne,,,5"
                        >espagne</option>
                                  <option value="163,pays,gabon,,,5"
                        >gabon</option>
                                  <option value="649,pays,haiti,,,5"
                        >haiti</option>
                                  <option value="970,pays,israel,,,5"
                        >israel</option>
                                  <option value="900,pays,italie,,,5"
                        >italie</option>
                                  <option value="174,pays,luxembourg,,,5"
                        >luxembourg</option>
                                  <option value="162,pays,maroc,,,5"
                        >maroc</option>
                                  <option value="quebec">quebec</option>
                                  <option
value="611,pays,s&eacute;n&eacute;gal,,,5">s&eacute;n&eacute;gal</option>
                                  <option value="164,pays,suisse,,,5"
                        >suisse</option>
                                  <option value="173,pays,tunisie,,,5"
                        >tunisie</option>
                                  <option value="648,pays,USA,,,5"
                        >USA</option>
                                          </select>
                                </span>                               
</label></td>
                              </tr>
                              <tr>
                                <td nowrap="nowrap" class="Style5"><div
align="right">Titre de l'exposition ou de l'&eacute;v&egrave;nement :
</div></td>
                                <td nowrap="nowrap" class="Style5"><label>
                                  <input name="titre" type="text" id="titre"
size="40" maxlength="40" />
                                40 car. max. </label></td>
                              </tr>
                              <tr>
                                <td nowrap="nowrap" class="Style5"><div
align="right">Date  :<span style="font-style: italic"> </span></div></td>
                                <td nowrap="nowrap" class="Style5"><font
size="1" face="Verdana, Arial, Helvetica, sans-serif">
                                  Du
                                  <select name="debut_jour" class="input2"
id="debut_jour">
                                    <option selected>jour</option>
                                    <option value="01">1</option>
                                    <option value="02">2</option>
                                    <option value="03">3</option>
                                    <option value="04">4</option>
                                    <option value="05">5</option>
                                    <option value="06">6</option>
                                    <option value="07">7</option>
                                    <option value="08">8</option>
                                    <option value="09">9</option>
                                    <option value="10">10</option>
                                    <option value="11">11</option>
                                    <option value="12">12</option>
                                    <option value="13">13</option>
                                    <option value="14">14</option>
                                    <option value="15">15</option>
                                    <option value="16">16</option>
                                    <option value="17">17</option>
                                    <option value="18">18</option>
                                    <option value="19">19</option>
                                    <option value="20">20</option>
                                    <option value="21">21</option>
                                    <option value="22">22</option>
                                    <option value="23">23</option>
                                    <option value="24">24</option>
                                    <option value="25">25</option>
                                    <option value="26">26</option>
                                    <option value="27">27</option>
                                    <option value="28">28</option>
                                    <option value="29">29</option>
                                    <option value="30">30</option>
                                    <option value="31">31</option>
                                          </select>
                                  <select name="debut_mois" size="1"
class="input2" id="debut_mois">
                                    <option selected>mois</option>
                                    <option value="01">janvier</option>
                                    <option
value="02">f&eacute;vrier</option>
                                    <option value="03">mars</option>
                                    <option value="04">avril</option>
                                    <option value="05">mai</option>
                                    <option value="06">juin</option>
                                    <option value="07">juillet</option>
                                    <option value="08">ao&ucirc;t</option>
                                    <option value="09">septembre</option>
                                    <option value="10">octobre</option>
                                    <option value="11">novembre</option>
                                    <option
value="12">d&eacute;cembre</option>
                                  </select>
                                  <select name="debut_annee" size="1"
class="input2" id="debut_annee">
                                    <option value="2007">2007</option>
                                    <option value="2008">2008</option>
                                    <option value="2009">2009</option>
                                  </select>

                                  Au
                                  <select name="fin_jour" class="input2"
id="fin_jour">
                                    <option>jour</option>
                                    <option value="01">1</option>
                                    <option value="02">2</option>
                                    <option value="03">3</option>
                                    <option value="04">4</option>
                                    <option value="05">5</option>
                                    <option value="06">6</option>
                                    <option value="07">7</option>
                                    <option value="08">8</option>
                                    <option value="09">9</option>
                                    <option value="10">10</option>
                                    <option value="11">11</option>
                                    <option value="12">12</option>
                                    <option value="13">13</option>
                                    <option value="14">14</option>
                                    <option value="15">15</option>
                                    <option value="16">16</option>
                                    <option value="17">17</option>
                                    <option value="18">18</option>
                                    <option value="19">19</option>
                                    <option value="20">20</option>
                                    <option value="21">21</option>
                                    <option value="22">22</option>
                                    <option value="23">23</option>
                                    <option value="24">24</option>
                                    <option value="25">25</option>
                                    <option value="26">26</option>
                                    <option value="27">27</option>
                                    <option value="28">28</option>
                                    <option value="29">29</option>
                                    <option value="30">30</option>
                                    <option value="31">31</option>
                                  </select>
                                  <select name="fin_mois" size="1"
class="input2" id="select2">
                                    <option selected>mois</option>
                                    <option value="01">janvier</option>
                                    <option
value="02">f&eacute;vrier</option>
                                    <option value="03">mars</option>
                                    <option value="04">avril</option>
                                    <option value="05">mai</option>
                                    <option value="06">juin</option>
                                    <option value="07">juillet</option>
                                    <option value="08">ao&ucirc;t</option>
                                    <option value="09">septembre</option>
                                    <option value="10">octobre</option>
                                    <option value="11">novembre</option>
                                    <option
value="12">d&eacute;cembre</option>
                                  </select>
                                  <select name="fin_annee" size="1"
class="input2" id="select3">
                                    <option value="2007"
selected>2007</option>
                                    <option value="2008">2008</option>
                                    <option value="2009">2009</option>
                                  </select>
</font></td>
                              </tr>
                              <tr>
                                <td nowrap="nowrap" class="Style5"><div
align="right">Lieu : <br />
                                        <em>Adresse compl&egrave;te de
l'&eacute;venement </em> </div></td>
                                <td nowrap="nowrap" class="Style5"><input
name="lieu" type="text" id="lieu" size="70" maxlength="80" />
                                  80 car. max.</td>
                              </tr>
                              <tr>
                                <td nowrap="nowrap" class="Style5"><div
align="right">Info compl&eacute;mentaire sur l'&eacute;v&egrave;nement : <br
/>
                                        <em>Nom , Email, Telephone de la
personne &agrave; contacter</em> </div></td>
                                <td nowrap="nowrap" class="Style5"><label>
                                  <input name="infos" type="text" id="infos"
size="70" maxlength="80" />
                                80 car. max. </label></td>
                              </tr>
                              <tr>
                                <td nowrap="nowrap" class="Style5"><div
align="right">Description : </div></td>
                                <td nowrap="nowrap" class="Style5"><label>
                                  <textarea name="description" cols="50"
rows="7" id="description"></textarea>
                                </label></td>
                              </tr>
                              <tr>
                                <td colspan="2" nowrap="nowrap"
class="Style5"><div align="center" class="Style5" style="font-weight: bold">
Infos sur l'exposant : </div></td>
                              </tr>
                              <tr>
                                <td nowrap="nowrap" class="Style5"><div
align="right">Nom : </div></td>
                                <td nowrap="nowrap" class="Style5"><label>
                                  <input name="nom" type="text" id="nom"
size="30" />
                                </label></td>
                              </tr>
                              <tr>
                                <td nowrap="nowrap" class="Style5"><div
align="right">Pr&eacute;nom : </div></td>
                                <td nowrap="nowrap" class="Style5"><label>
                                  <input name="prenom" type="text"
id="prenom" size="30" />
                                </label></td>
                              </tr>
                              <tr>
                                <td nowrap="nowrap" class="Style5"><div
align="right">Site web de l'exposant : </div></td>
                                <td nowrap="nowrap" class="Style5"><label>
                                  <input name="url" type="text" id="url"
value="http://" size="40" />
                                </label></td>
                              </tr>
                              <tr>
                                <td nowrap="nowrap" class="Style5"><div
align="right">E-mail de l'exposant : </div></td>
                                <td nowrap="nowrap" class="Style5"><label>
                                  <input name="email" type="text" id="email"
size="40" />
                                </label></td>
                              </tr>

                              <tr>
                                <td nowrap="nowrap" class="Style5"><div
align="right">Image :<br />
                                        <br />
                                </div></td>
                                <td nowrap class="Style5"><label>
                                  <input name="image" type="file" id="image"
/>
                                  </label>
                                    <div align="center"><em> Inclure une
photo qui apparaitra dans votre annonce        ( <span style="font-weight:
bold">Format :</span> jpg, jpeg. <span style="font-weight: bold">Poids
:</span> 100ko max ) </em></div></td>
                              </tr>
                              <tr>
                                <td colspan="2" nowrap="nowrap"><div
align="center">
                                    <label> <br />
                                    <input name="I3" type=image
src="http://auxartistespeintres.fr/images/design/valider.gif" width="61"
height="30">
                                    </label>
                                </div></td>
                              </tr>
                            </table>
                          </form>
                        </div></td>
                      </tr>
                      <tr>
                        <td>&nbsp;</td>
                      </tr>
                    </table>
                  <!-- InstanceEndEditable --></div></td>
                  </tr>
                <tr>
                  <td>&nbsp;</td>
                  </tr>
              </table>
            </div></td>
            </tr>
        </table>
      </div></td>
    </tr>
    <tr>
      <td bgcolor="#808080"><? include
"http://auxartistespeintres.fr/menu/nbr_connecte.php"; ?></td>
    </tr>
  </table>
</div>
</body>

<!-- InstanceEnd --></html>

Sebasti1
Visiteur
Visiteur
 
Messages: 3
Inscription: 17 Juin 2007 12:25
 


Message le 18 Juin 2007 16:07

Personne :( ?


Merci
Sebasti1
Visiteur
Visiteur
 
Messages: 3
Inscription: 17 Juin 2007 12:25
 

Message le 18 Juin 2007 16:15

Salut,

Si tu sais que la personne en question est arrivé à ses fins par une faille XSS, c'est donc que tu sais plus ou moins comment elle a fait non ?
Comment en es-tu arrivé à la conclusion que c'était bien une faille XSS qui avait été exploitée ?

Sinon, ben la faiblesse se situe probablement ici :
Code: Tout sélectionner
$rubrique = $_POST['rubrique'];
$departement = $_POST['departement'];
$pays = $_POST['pays'];
$nom = $_POST['nom'];
$prenom = $_POST['prenom'];
$titre = $_POST['titre'];
$debut_jour = $_POST['debut_jour'];
$debut_mois = $_POST['debut_mois'];
$debut_annee = $_POST['debut_annee'];
$fin_jour = $_POST['fin_jour'];
$fin_mois = $_POST['fin_mois'];
$fin_annee = $_POST['fin_annee'];
$lieu = $_POST['lieu'];
$infos = $_POST['infos'];
$url = $_POST['url'];
$email = $_POST['email'];
$description = $_POST['description'];


Il ne faut pas récupérer directement les champs du formulaires si tu veux que cela soit un minimum sécurisé, il faudrait plutot faire :
Code: Tout sélectionner
$rubrique = htmlspecialchars($_POST['rubrique']);
etc... (a chaque fois qu'il y a une variable POST ou GET, c'est le même principe)


Sinon, il y en a peut-être d'autres dans le code javascript, je ne l'ai pas lu.
Avatar de l'utilisateur
coyote89
PC-Infopraticien
PC-Infopraticien
 
Messages: 7862
Inscription: 07 Mai 2003 17:39
Localisation: Chine :)
 

Message le 18 Juin 2007 16:58

Donc je devrais écrire exactement comme ça:

Code: Tout sélectionner
$rubrique = htmlspecialchars($_POST['rubrique']);
$departement = htmlspecialchars($_POST['departement']);
$pays = htmlspecialchars($_POST['pays']);
$nom = htmlspecialchars($_POST['nom']);
$prenom = htmlspecialchars($_POST['prenom']);
ect...


???


Merci ;)
Sebasti1
Visiteur
Visiteur
 
Messages: 3
Inscription: 17 Juin 2007 12:25
 

Message le 18 Juin 2007 17:17

Oui.
Avatar de l'utilisateur
coyote89
PC-Infopraticien
PC-Infopraticien
 
Messages: 7862
Inscription: 07 Mai 2003 17:39
Localisation: Chine :)
 



Sujets similaires

Message Quelle box prendre pour sécuriser le wifi de mon gîte?
Bonjour,je suis Robert, 40 ans, et je suis en train de terminer les travaux d'un gîte que j'aimerais ensuite louer à des touristes/vacanciers.J'ai fait une recherche sur le forum, mais vu le caractère un peu spécial de ma demande, je n'ai pas vraiment trouvé de réponse.Je compte proposer une connexi ...
Réponses: 7

Message 10 Méthodes de sécuriser vos comptes de médias sociaux
1.Changer régulièrement votre mot de passe de vos comptes de médias sociaux2.Utiliser authentification à deux facteurs3.Ne pas Cliquer les URLs courtes4.Accepter ami demande sélectivité5.Fermez vos anciens médias sociaux6.Ne pas utiliser la fonction auto login7.Verrouillez vos appareils8.Éviter de c ...
Réponses: 5

Message Sécuriser le contenu d'un PC
Re En parallèle à ma réflexion pour l'achat d'un nouveau PC (monté ou mini, encore en discussion avec moi-même), je me questionne sur la sécurisation des données que j'utilise en local. J'ai de nombreux mots de passe sensibles en gestion pour mes clients, notamment FTP.Actuellement sous Win 7 sur un ...
Réponses: 9

Message comment faire pour securiser un site sur firefox
salut tout le monde depuis quelque temps j'ai un site important (ma secu) qui sur Firefox affiche ces messages me signifiant que n'importe qui peut voir mes données ce qui est embêtant de plus car je doit rentrer mon identifiant INSEE et le mot de passe pouvez vous m'aider à résoudre ce problème sv ...
Réponses: 12

Message comment sécuriser la connexion wifi
Bonjour,Je possède un ordinateur portable qui date de 2007. J'ai été obligé de changer de modem. (le nouveau est un b-box 3) Mais Kaspersky 2015 me signale que la connexion n'est pas sécurisée.Comment faire pour sécuriser WifI ? Merci pour l'aide.Philou
Réponses: 1

Message Carte mére Neuve HS ?????? Helppp aider moi svp !
Carte mére z97X gaming 5 de gigabyte Alors bonjours tout le monde ! je suis face a un problème vraiment tout béte... je vais etre direct ! Je n'arrive pas a faire en sorte que mon SSD boot en premier au démarrage de mon PC . J'ai tout essayer ( Débrancher les Sata un par un , J'ai essayer tout les p ...
Réponses: 16

Message Besoin d'aider pour l'achat d'un PC de gaming moderne !
Bonjour à tous les membres du Forum !Je viens tout juste de tomber sur cette page et de m'inscrire. Je m'excuse d'avance si je parais pour un noob mais le langage informatique n'est pas celui que je maitrise le mieux. (je maitrise mal l'andalous du sud aussi et je patine un peu avec le mandarin du X ...
Réponses: 4


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 4 invités


.: Nous contacter :: Flux RSS :: Données personnelles :.