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

VBScript Discussion :

A l'aide (décryptage script VBS)


Sujet :

VBScript

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 2
    Points : 1
    Points
    1
    Par défaut A l'aide (décryptage script VBS)
    bonsoir amis developpeurs

    voici mon souci jai a ma disposition un script VBS ke je dois déchiffrer mai j'ai déjà du mal des le premier terme alors si une âme charitable pourrais m' aiguiller ce serai sympathique voici le script :

    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
    If Wscript.Arguments.Count = 0 Then
        strComputer = inputbox("Entrez le nom de l ordinateur dont vous voulez la clé","Nom de l ordinateur")
        if strComputer = "" then wscript.quit
    Else
        strCOmputer = Wscript.Arguments.Item(0)
    End If
     
     
    Dim Digits (24)
     
    Digits (0) = "B" : Digits (1) = "C": Digits (2) = "D": Digits (3) = "F":
    Digits (4) = "G": Digits (5) = "H": Digits (6) = "J": Digits (7) = "K":
    Digits (8) = "M": Digits (9) = "P": Digits (10) = "Q": Digits (11) = "R":
    Digits (12) = "T": Digits (13) = "V": Digits (14) = "W": Digits (15) = "X":
    Digits (16) = "Y": Digits (17) = "2": Digits (18) = "3": Digits (19) = "4":
    Digits (20) = "6" : Digits (21) = "7" : Digits (22) = "8": Digits (23) = "9"
     
    Dim HexBuf (100), HexDigitalPID (15)
    'Création d'un objet 
    Set objReg = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "\root\default:StdRegProv")
     
    objReg.GetBinaryValue &H80000002, "SOFTWARE\Microsoft\Windows NT\CurrentVersion\", "DigitalProductId", HexBuf
    StartOffset = 52 : EndOffset =67
     
    For i = StartOffset to EndOffset
      HexDigitalPID (i-StartOffset) = HexBuf(i)
    next
     
    ' Convertit la clé produit codée en clé d activation
    dLen = 29 : sLen = 15
     
    KEYSTRING =""
    for i=dLen-1 to 0 step -1
      if ((i + 1) mod 6) = 0 then
        KEYSTRING = KEYSTRING & "-"
      else
        HN = 0
        For N = (sLen -1) to 0 step -1
          Value = ( (HN *2^8 ) Or HexDigitalPID (N))
          HexDigitalPID (N) = Value \ 24
          HN = (Value mod 24)
        next
        KEYSTRING = KEYSTRING & Digits(HN)
      end if
    next
     
    KEYSTRING2 = StrReverse (KEYSTRING)
    WScript.Echo KEYSTRING2
    Merci d'avance

    ha petite précision ce script affiche pour un nom d'un pc sur un réseau donné la clé windows de ce pc

  2. #2
    Membre actif
    Inscrit en
    Mai 2008
    Messages
    189
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 189
    Points : 212
    Points
    212
    Par défaut
    Le script vérifie s'il y a une valeur passée en paramètre.

    s'il il y en a une, elle l'affecte à la variable strCOmputer, s'il n'y en a pas elle affiche une InputBox qui permet la saisie de cette valeur, pour ensuite l'affecter à la variable strCOmputer.

    Ensuite il a l'air d'aller chercher la clé windows du pc et l'affiche.

  3. #3
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Dans quel but veux tu comprendre ce script ?
    Pour faire quel type de modification ?

    Si on le sait on pourrait t'expliquer plus en détail la partie qui doit être impacté par les modifications.

    Mais en gros :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    If Wscript.Arguments.Count = 0 Then
        strComputer = inputbox("Entrez le nom de l ordinateur dont vous voulez la clé","Nom de l ordinateur")
        if strComputer = "" then wscript.quit
    Else
        strCOmputer = Wscript.Arguments.Item(0)
    End If
    Le script vérifie s'il y a une valeur passée en paramètre.

    s'il il y en a une, elle l'affecte à la variable strCOmputer, s'il n'y en a pas elle affiche une InputBox qui permet la saisie de cette valeur, pour ensuite l'affecter à la variable strCOmputer.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Dim Digits (24)
     
    Digits (0) = "B" : Digits (1) = "C": Digits (2) = "D": Digits (3) = "F":
    Digits (4) = "G": Digits (5) = "H": Digits (6) = "J": Digits (7) = "K":
    Digits (8) = "M": Digits (9) = "P": Digits (10) = "Q": Digits (11) = "R":
    Digits (12) = "T": Digits (13) = "V": Digits (14) = "W": Digits (15) = "X":
    Digits (16) = "Y": Digits (17) = "2": Digits (18) = "3": Digits (19) = "4":
    Digits (20) = "6" : Digits (21) = "7" : Digits (22) = "8": Digits (23) = "9"
    On crée un tableau et on le remplit de caractère.



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Dim HexBuf (100), HexDigitalPID (15)
    'Création d'un objet 
    Set objReg = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "\root\default:StdRegProv")
     
    objReg.GetBinaryValue &H80000002, "SOFTWARE\Microsoft\Windows NT\CurrentVersion\", "DigitalProductId", HexBuf
    StartOffset = 52 : EndOffset =67
     
    For i = StartOffset to EndOffset
      HexDigitalPID (i-StartOffset) = HexBuf(i)
    next
    Recherche dans la base de registre de la clé d'activation.




    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
    ' Convertit la clé produit codée en clé d activation
    dLen = 29 : sLen = 15
     
    KEYSTRING =""
    for i=dLen-1 to 0 step -1
      if ((i + 1) mod 6) = 0 then
        KEYSTRING = KEYSTRING & "-"
      else
        HN = 0
        For N = (sLen -1) to 0 step -1
          Value = ( (HN *2^8 ) Or HexDigitalPID (N))
          HexDigitalPID (N) = Value \ 24
          HN = (Value mod 24)
        next
        KEYSTRING = KEYSTRING & Digits(HN)
      end if
    next
     
    KEYSTRING2 = StrReverse (KEYSTRING)
    WScript.Echo KEYSTRING2
    La clé est convertie en chaine de caractère et elle est affiché.
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

  4. #4
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Dans quel but veux tu comprendre ce script ?
    Pour faire quel type de modification ?
    Je travaille pour un Administrateur réseau, et il m'a confié ce script et ma demandé de le comprendre de A a Z. J'ai commencé a apprendre les bases du langage mais c'est plutôt compliqué.

    Afin d'évoluer on y rajoutera quelque information tel que connaitre le système d'exploitation ainsi que les configuration matériel des différente machine.


    Un truc m'échappe a premières vue pourquoi toute les lettres de l'alphabet ne sont pas dans le tableau?
    Windows utilise que certaine lettre pour ses clé CD?

    Je vais potasser tout cela et reviendrais poster des questions merci

    Bonne journée ced600!

  5. #5
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Je travaille pour un Administrateur réseau, et il m'a confié ce script et ma demandé de le comprendre de A a Z. J'ai commencé a apprendre les bases du langage mais c'est plutôt compliqué.
    Pour cela que je pensais que tu voulais faire une modification. C'est compliqué comme script pour un débutant.
    En général on commence par plus simple.

    Un truc m'échappe a premières vue pourquoi toute les lettres de l'alphabet ne sont pas dans le tableau?
    Windows utilise que certaine lettre pour ses clé CD?
    Je ne sais pas pourquoi il n'y a pas les voyelles, pose la question sur le sous forums windows, peut être que quelqu'un pourra répondre à la questio.
    Peut être une histoire de compatibilité à cause des accents sur les voyelles ?
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

Discussions similaires

  1. Aide pour réaliser un petit script vbs
    Par gogéta91 dans le forum VBScript
    Réponses: 1
    Dernier message: 04/08/2008, 13h33
  2. Aide en script VBS
    Par scova dans le forum Windows
    Réponses: 1
    Dernier message: 01/11/2007, 22h04
  3. script vbs : besoin d'aide
    Par 7alex dans le forum VBScript
    Réponses: 13
    Dernier message: 10/01/2006, 15h00
  4. [intermedia] besoin d'aide sur script PL/SQL
    Par SteelBox dans le forum PL/SQL
    Réponses: 8
    Dernier message: 05/01/2004, 19h59
  5. aides pour script en shell
    Par komatek dans le forum Langages de programmation
    Réponses: 2
    Dernier message: 12/08/2003, 15h36

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