IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Sécurisation de page


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 23
    Points : 14
    Points
    14
    Par défaut Sécurisation de page
    Bonjour,

    Je vous explique mon problème en essayant d'être le plus compréhensible.

    Je dispose d'un script Allopass (qui permet d'acheter un code), ce script Allopass, redirige, si le code est bon, sur une autre page où est donné le code (page payante donc).

    Cette page payante, améliore également le Statut du membre qui l'achète
    (Membre -> Membre V.I.P), ainsi qu'un historique d'achats, avec le code.

    J'ai donc, tranquillement insérer le script de protection que fourni Allopass, pour ce qui est du code aucun problèmes, Allopass me redirige vers une page d'erreur si j'essaie d'accéder directement à cette page, ou si le code est mauvais.
    Mais le problème, c'est que ce script allopass ne me BLOQUE PAS l'exécution de mes scripts php.

    Donc l'utilisateur peut aller sur ma page payante directement, le code ne lui sera pas donner, mais les scripts vont quand même s'exécuter, donc l'utilisateur va se retrouver Membre V.I.P avec le code dans ses historiques d'achat, même si son code n'est pas bon, ou qu'il accède directement. (puis il va être redirigé vers une page d'erreur)

    Je précise que j'ai bien placé le script de protection AVANT les scripts PHP.

    C'est vraiment très agacent.

    Donc ma question est :

    - Comment bloquer l'exécution d'un script PHP sur une page "payante" qui ne peut être accessible que si le code est bon ? (Parce que là vous avez juste à aller sur www.monsite.fr/codeVIP.php, et vous serez Membre V.I.P avec le code, sans rien avoir payer.)

    Cordialement,
    SoGeek,
    en espérant qu'une âme charitable viennent s'intéresser à ce sujet.

  2. #2
    Membre émérite
    Avatar de gene69
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 769
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 769
    Points : 2 446
    Points
    2 446
    Par défaut
    c'est un script php le allopass? ou est-ce que je peux en obtenir une copie?

  3. #3
    Membre émérite Avatar de Madfrix
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 326
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 326
    Points : 2 566
    Points
    2 566
    Par défaut
    Bonjour,

    Citation Envoyé par SoGeek Voir le message
    Donc l'utilisateur peut aller sur ma page payante directement, le code ne lui sera pas donner, mais les scripts vont quand même s'exécuter, donc l'utilisateur va se retrouver Membre V.I.P
    tu n'utilises pas le retour de allopass afin de savoir si l'utilisateur a bien payé avant de la passer VIP ?

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 23
    Points : 14
    Points
    14
    Par défaut
    Bonsoir,
    Bien entendu j'utilise le script de sécurisation allopass, ce dernier protége bien ma page, mais pas l'execution des scripts php qui font passer le membre en vip, donc l'utilisateur peut aller directement sur ma page payante, il sera rediriger vers la page d'erreur allopass, mais il se retrouvera membre vip car le script de protection allopass ne me bloque pas l'execution des scritps. Et j'utilise le script iframe d'allopass.
    Bonne soirée à vous, et merci de prêter attention a ce sujet,
    Cordialement,
    SoGeek.

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 23
    Points : 14
    Points
    14
    Par défaut
    Et au fait, si cela peut vous aider , voici les codes sources des pages :

    voici les codes de ma page (où l'on paye pour accéder a la page payante)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    <?php
    session_start();
     
    if(!empty($_POST))
    {
      $valid = true;
      extract($_POST);
     
      if(empty($login))
      {
        $valid = false;
        $erreurlogin = 'Indiquez votre login';
      }
     
      if(empty($pass))
      {
        $valid = false;
        $erreurpass = 'Indiquez votre mot de passe';
      }
     
      if($valid)
      {
    try 
        {
            $bdd = new PDO('mysql:host=db2754.1and1.fr;dbname=db341723991', 'dbo341723991', 'azeqsdwxc') or die(print_r($bdd->errorInfo()));
            $bdd->exec('SET NAMES utf8');
        }
     
        catch(Exeption $e){
            die('Erreur :' .$e->getMessage());
     
        }
     
      $req = $bdd->prepare('SELECT * FROM membre WHERE login=:login AND pass=:pass');
      $req->execute(array(
        'login'=>$login,
        'pass'=>sha1($pass)
      ));
      $data = $req->fetch();
      if($req->rowCount()==0)
      {
        $valid = false;
        $erreurid = 'Identifiants incorrects';
      }
     
      if($req->rowCount()>0 && $data['actif']==0)
      {
        $valid = false;
        $erreurid1 = 'Votre compte n\'est pas actif, consultez le mail envoyé pour l\'activer.';
      }
      else
      {
        if($req->rowCount()>0 && $data['actif']==1)
        {
          $_SESSION['membre'] = $login;
        }
      }
     
        $req->closeCursor();
        if($valid)
        {
          header('Location: VIPGETCV3.php');
        }
     
     
      }
     
    }
     
        $redirect = 'VIPGETCV3.php'
     
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
    <title>Team SkyZen</title>         
    <link rel="shortcut icon" href="favicon.ico" />
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252" />
    <meta http-equiv="content-language" content="fr" />
    <link href="style.css"    title="Défaut" rel="stylesheet" type="text/css" media="screen" /> 
    <link rel="shortcut icon" href="favicon.ico" >
    <link rel="icon" href="animated_favicon.gif" type="image/gif" >
    </head>
    <body>    
     
    <div id="conteneur">
      <p><a href="index.php"><img src="images/titre.png" alt="" width="800"/></a>
     
      <body style="overflow: auto;" onload="setHover('menu');">
    <ul class="menu">
    <li><a href="index.php">Accueil</a></li>
      <li><a href="logiciels.php">Logiciels</a></li>
    <li><a href="download.php">T&eacute;l&eacute;chargements</a></li>
      <li><a href="contact.php">Contactez-nous</a></li>
      <li><a href="videos.php">Vid&eacute;os</a></li>
      <li><a href="teamskyzen.php">Team SkyZen</a></li>
      <li><a href="FAQ.php">F.A.Q</a></li>
      <li><a href="http://forum.team-skyzen.fr">Forum</a></li>
        <li class="current"><a href="VIP.php">Onglet V.I.P</a></li>
          <li><a href="Donate.php">Dons</a></li>
    </ul>
     
     
     
     
    <p>
    <?php include('menus.php'); ?>
    </p>
    <p>&nbsp; </p>
    <div id="header">
     
     
     
    </div>
    <!-- Header -->
    <div id="contenu"><!-- CONTENU -->    
     
    <?php include('ColonneG.php') ?>
     
    <div id="right">
     
      <div class="cadre_fond"></div>
      <div class="cadre_haut">
     
     
    </div><div class="cadre_fond"><!-- CADRE -->
     
     
        <?php
      if(empty($_SESSION['membre']))
      {
          ?>
          Vous devez être <a href="login.php">connect&eacute;</a> et/ou <a href="inscription.php">inscrit</a> pour pouvoir acheter l'onglet V.I.P, pour beneficier AUSSI des avantages sur votre compte.
          <?php
      }
      else
      {
          ?>
     
    <table border="0" width="436" height="411" style="border: 1px solid #E5E3FF;" cellpadding="0" cellspacing="0">
     <tr>
      <td colspan="2" width="436">
       <table width="436" border="0" cellpadding="0" cellspacing="0">
        <tr height="27">
         <td width="127" align="left" bgcolor="#D0D0FD">
          <a href="http://www.allopass.com/" target="_blank"><img src="http://payment.allopass.com/imgweb/common/access/logo.gif" width="127" height="27" border="0" alt="Allopass"></a>
         </td>
             <td width="309" align="right" bgcolor="#D0D0FD">
          <font style="font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10px; color: #000084; font-style : none; font-weight: bold; text-decoration: none;">
           Solution de micro paiement sécurisé<br>Secure micro payment solution
          </font>
         </td>
        </tr>
        <tr height="30">
         <td colspan="2" width="436" align="center" valign="middle" bgcolor="#F1F0FF">
          <font style="font-family: Arial, Helvetica, sans-serif; font-size: 9px; color: #000084; font-style : none; font-weight: bold; text-decoration: none;">
           Pour acheter ce contenu, insérez le code obtenu en cliquant sur le drapeau de votre pays      </font>
          <br>
          <font style="font-family: Arial, Helvetica, sans-serif; font-size: 9px; color: #5E5E90; font-style : none; font-weight: bold; text-decoration: none;">
           To buy this content, insert your access code obtained by clicking on your country flag
          </font>
         </td>
        </tr>
            <tr height="2"><td colspan="2" width="436" bgcolor="#E5E3FF"></td></tr>
       </table>
      </td>
     </tr>
     <tr height="347">
      <td width="284">
       <iframe name="APsleft"  width="284" height="347" frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://payment.allopass.com/acte/scripts/iframe/left.apu?ids=232877&amp;idd=917891&amp;lang=fr"></iframe>
      </td>
      <td width="152">
       <iframe name="APsright" width="152" height="347" frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://payment.allopass.com/acte/scripts/iframe/right.apu?ids=232877&amp;idd=917891&amp;lang=fr"></iframe>
      </td>
     </tr>
     <tr height="5"><td colspan="2" bgcolor="#D0D0FD" width="436"></td></tr>
    </table>
        <p>&nbsp;</p>
        <?php
        }
      ?>
    </div>
    <div class="cadre_fond">
      <p>&nbsp;</p>
    </div>
    <div class="cadre_bas"></div><!-- FIN CADRE --> 
     
    </div><!-- FIN COLONNE DE DROITE -->
     
    <div id="clear"></div><!-- NE PAS SUPPRIMER -->     
    </div><!-- FIN CONTENU --> 
     
    <div id="pied"></div><!-- PIED -->
    </div><!-- FIN GLOBAL -->      
    <!-- mention de copyright Ne pas retirer sans autorisation écrite -->
    <div class="copyright"><?php include('copyright.php'); ?></div>
    <!-- mention de copyright Ne pas retirer sans autorisation écrite -->    
    </body>
    </html>
    Et voici le code source de la page où on obtient le code (page payante)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    <?php
    session_start();
     
    $nom = $_SESSION['membre'];
        try 
        {
            $bdd = new PDO('mysql:host=db2754.1and1.fr;dbname=db341723991', 'dbo341723991', 'azeqsdwxc') or die(print_r($bdd->errorInfo()));
            $bdd->exec('SET NAMES utf8');
        }
     
        catch(Exeption $e){
            die('Erreur :' .$e->getMessage());
     
        }
     
    $req = $bdd->prepare('SELECT * FROM membre WHERE login=:login');
    $req->execute(array('login'=>$_SESSION['membre']));
    $data = $req->fetch();
    $req->closeCursor();
     
     
        if(!empty($_POST))
    {
      $valid = true;
      extract($_POST);
     
      if(empty($login))
      {
        $valid = false;
        $erreurlogin = 'Indiquez votre login';
      }
     
      if(empty($pass))
      {
        $valid = false;
        $erreurpass = 'Indiquez votre mot de passe';
      }
     
      if($valid)
      {
    try 
        {
            $bdd = new PDO('mysql:host=db2754.1and1.fr;dbname=db341723991', 'dbo341723991', 'azeqsdwxc') or die(print_r($bdd->errorInfo()));
            $bdd->exec('SET NAMES utf8');
        }
     
        catch(Exeption $e){
            die('Erreur :' .$e->getMessage());
     
        }
     
      $req = $bdd->prepare('SELECT * FROM membre WHERE login=:login AND pass=:pass');
      $req->execute(array(
        'login'=>$login,
        'pass'=>sha1($pass)
      ));
      $data = $req->fetch();
      if($req->rowCount()==0)
      {
        $valid = false;
        $erreurid = 'Identifiants incorrects';
      }
     
      if($req->rowCount()>0 && $data['actif']==0)
      {
        $valid = false;
        $erreurid1 = 'Votre compte n\'est pas actif, consultez le mail envoyé pour l\'activer.';
      }
      else
      {
        if($req->rowCount()>0 && $data['actif']==1)
        {
          $_SESSION['membre'] = $login;
        }
      }
     
        $req->closeCursor();
        if($valid)
        {
          header('Location: VIPGETCV3.php');
        }
     
     
      }
     
    }
        $redirect = VIPGETCV3.php;
     
    ?>
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
     
    // PROTECTION ALLOPASS
     
    <noscript><meta http-equiv="Refresh" content="0;url=https://payment.allopass.com/error.apu?ids=232877&idd=917891"></noscript>
    <script type="text/javascript" src="https://payment.allopass.com/api/secure.apu?ids=232877&idd=917891"></script>
     
    // PROTECTION ALLOPASS
     
    <title>Team SkyZen - Obtenir le mot de passe de l'onglet V.I.P de CrashServer3</title>         
    <link rel="shortcut icon" href="favicon.ico" />
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252" />
    <meta http-equiv="content-language" content="fr" />
    <link href="style.css"    title="Défaut" rel="stylesheet" type="text/css" media="screen" /> 
    <link rel="shortcut icon" href="favicon.ico" >
    <link rel="icon" href="animated_favicon.gif" type="image/gif" >
     
    </head>
    <body>    
     
    <div id="conteneur">
      <p><a href="index.php"><img src="images/titre.png" alt="" width="800"/></a>  
      <p>
        </p>
      <?php include('menu.php'); ?>
      <p>
        <?php include('menus.php'); ?>
    </p>
    <p>&nbsp; </p>
    <div id="header">
     
     
     
    </div>
    <!-- Header -->
    <div id="contenu"><!-- CONTENU -->    
     
    <?php include('ColonneG.php') ?>
     
    <div id="right">
     
      <div class="cadre_fond"><!-- CADRE --></div>
      <div class="cadre_haut">
     
     
    </div><div class="cadre_fond"><!-- CADRE -->
      <p>&nbsp;</p>
      <p><span></p>
      <center>
        <h2><a href="VIPGETCV3.php">Obtenir le mot de passe de l'onglet V.I.P</a></h2>
        <p>&nbsp;</p>
        <p><img src="images/cadre.png" alt="g" width="501" height="25" /></p>
      </center>
      <p><center>Merci d'avoir achet&eacute; l'onglet V.I.P.</center></p>
      <p><img src="images/cadre.png" alt="g" width="501" height="25" /></p>
      <p>&nbsp;</p>
      <h2>Votre mot de passe de l'onglet V.I.P est :</h2>
      <p>&nbsp;</p>
      <h5>Generate a password ...</h5>
      <h5>Check account ...</h5>
      <h5>Update account ...</h5>
      <p>&nbsp;</p>
      <h2><b><font color=red>g4g5er4g7r8g</font></b></h2>
      <p>&nbsp;</p>
      <p><img src="images/cadre.png" alt="g" width="501" height="25" /></p>
      <p>&nbsp;</p>
      <p><font color=red>ATTENTION</font> : Merci de ne pas donner ce mot de passe &agrave; n'importe qui, si vous donnez ce mot de passe &agrave; une personne, et que cette personne rentre le MEME code que vous dans son CrashServer v.3.0 VOS DEUX logiciels seront <font color=red>bannis &agrave; vie</font>. (Les mots de passe g&eacute;n&eacute;r&eacute;s sont du genre : <font color=red>X54X5e4g5G4gr5h7rR</font>, donc aucunes plaintes ne sera accept&eacute;e en cas de bannissement de logiciels.)</p>
      <p>&nbsp;</p>
      <p><img src="images/cadre.png" alt="g" width="501" height="25" /></p>
      <p>Vous &ecirc;tes pass&eacute; du statut <?php
     
     
        if ($data['statut']==0)
        {
     
    echo 'Membre à Membre V.I.P';
     
        }
     
        if ($data['statut']==1)
        {
               echo 'Membre V.I.P à Membre V.I.P Premium.';
        }
     
        if ($data['statut']==2)
        {
     
    echo 'Membre V.I.P Premium à Membre V.I.P Premium (+).';
     
     
     
        }    
        ?></p>
      <p>&nbsp;</p>
     
      <p><a href="index.php">Retourner &agrave; l'accueil</a></p>
      <p>&nbsp;</p>
      <p><a href="logout.php">Se d&eacute;connecter</a></p>
      <p>&nbsp;</p>
      <p><a href="profil.php">Modifier votre profil</a></p>
      <p>&nbsp;</p>
    </div>
    <div class="cadre_fond"> </div>
    <div class="cadre_bas"></div><!-- FIN CADRE --> 
     
    </div><!-- FIN COLONNE DE DROITE -->
     
    <div id="clear"></div><!-- NE PAS SUPPRIMER -->     
    </div><!-- FIN CONTENU --> 
     
    <div id="pied"></div><!-- PIED -->
    </div><!-- FIN GLOBAL -->      
    <!-- mention de copyright Ne pas retirer sans autorisation écrite -->
    <div class="copyright"><?php include('copyright.php'); ?></div>
    <!-- mention de copyright Ne pas retirer sans autorisation écrite -->    
    </body>
    </html>
    Cordialement,
    SoGeek,
    bonne soirée à vous.

Discussions similaires

  1. [Sécurité] sécuriser une page
    Par samsso2006 dans le forum Langage
    Réponses: 1
    Dernier message: 21/05/2007, 12h10
  2. Réponses: 2
    Dernier message: 04/05/2007, 22h15
  3. sécuriser mes pages web
    Par kwakly dans le forum WebDev
    Réponses: 2
    Dernier message: 16/04/2007, 08h32
  4. Sécuriser une page web
    Par MORPHEUS50 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 05/02/2007, 21h14
  5. [HTTPS] Sécuriser certaines page web
    Par biglittlekiss dans le forum Apache
    Réponses: 3
    Dernier message: 26/12/2006, 12h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo