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

ASP.NET Discussion :

Comment encoder le ViewState ?


Sujet :

ASP.NET

  1. #1
    Futur Membre du Club Avatar de Elodie-83
    Femme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Novembre 2015
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2015
    Messages : 3
    Par défaut Comment encoder le ViewState ?

    Bonjour a tous,

    Dans le cadre d'un test de sécurité sur un site web aspnet, j'ai besoin de votre aide.

    J'ai récupérer un "viewstate" encodé en base64 que j'ai pu décrypter sans problème (logiciels, outils en ligne..)

    J'ai effectué une modification dans le code du viewstate que j'ai pu décrypter, maintenant ma question est : Comment crypter a nouveau ce ViewState en base64 dans un format valide pour aspnet ?

    J'ai très peut de connaissance en aspnet




  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    777
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2003
    Messages : 777
    Par défaut
    Tu réencodes en base 64 via
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    System.Convert.ToBase64String(tableauDeBytes);

  3. #3
    Futur Membre du Club Avatar de Elodie-83
    Femme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Novembre 2015
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2015
    Messages : 3
    Par défaut re
    Merci de ta réponse Dokho1000,
    J'ai essayé de ré-encoder ce viewstate. Mais ensuite le code n'est plus reconnu comme viewstate, mais seulement comme un simple texte crypté en base64...

    Voici le Viewstate crypté en question : https://jsfiddle.net/fotydq2v/

    Pour le décodé j'utilise cet outil en ligne : http://viewstatedecoder.azurewebsites.net/

    Ensuite je souhaite faire une modification et le ré-encoder. Mais voilà que ce n'est plus un viewstate valide.

    SVP comment faire pour le ré-encoder dans un format valide ?

  4. #4
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Billets dans le blog
    3
    Par défaut
    Citation Envoyé par Elodie-83 Voir le message
    mais seulement comme un simple texte crypté en base64...
    Attention base64 n'est pas du cryptage, c'est un simple encodage. Cela signifie que n'importe qui peut le décoder et voir les données qu'il contient. Avec un cryptage, il serait impossible de voir le contenu.

    Citation Envoyé par Elodie-83 Voir le message
    Ensuite je souhaite faire une modification et le ré-encoder. Mais voilà que ce n'est plus un viewstate valide.
    Si tu as activé la protection par MAC alors il n'est pas possible de le modifier. Cette protection peut être activée soit en utilisant la directive de page EnableViewStateMAC="True" soit via le web.config avec quelque chose de ce genre :
    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <system.web>
        <pages enableViewStateMac="true" />
    </system.web>
    Cette protection permet de vérifier que le ViewState n'as pas été compromis/modifié entre plusieurs post back, à l'aide d'un hash.
    Less Is More
    Pensez à utiliser les boutons , et les balises code
    Desole pour l'absence d'accents, clavier US oblige
    Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.

  5. #5
    Futur Membre du Club Avatar de Elodie-83
    Femme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Novembre 2015
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2015
    Messages : 3
    Par défaut re
    Merci DotNetMatt.

    Alors il existe un outils pour ré-encoder ce viewstate ? Ce n'est pas seulement codé en base64... il manque quelquechose...

  6. #6
    Membre émérite
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    777
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2003
    Messages : 777
    Par défaut
    Citation Envoyé par Elodie-83 Voir le message
    Merci DotNetMatt.

    Alors il existe un outils pour ré-encoder ce viewstate ? Ce n'est pas seulement codé en base64... il manque quelquechose...
    Tu peux y arriver en ajouter le hash qui manque à la fin de ta chaine.. Tu trouveras les infos sur cette page : https://msdn.microsoft.com/en-us/lib...uringViewState

Discussions similaires

  1. Comment encoder en UTF-8 mes fichiers ?
    Par taffMan dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 29/05/2007, 16h35
  2. [AJAX] Java : comment encoder les chaines en latin1 ?
    Par Foub dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 04/04/2007, 10h48
  3. Comment Encoder une URL
    Par LCL2000 dans le forum ASP
    Réponses: 4
    Dernier message: 13/12/2006, 15h13
  4. Réponses: 1
    Dernier message: 11/09/2006, 10h45
  5. Réponses: 4
    Dernier message: 28/01/2006, 20h03

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