mbt masai
 
Welcome !
         

                                
After experiencing a lot of down time, We decided to move this site to CrystalTech.com. CrystalTech.com is powered by only the finest Windows servers providing the best performance, reliability, and value anywhere.

 Encrypted Script

Author Message
TomRiddle

  • Total Posts : 608
  • Scores: 12
  • Reward points : 0
  • Joined: 2/7/2008
  • Location: Australia
  • Status: offline
Encrypted Script Sunday, July 19, 2009 4:56 PM (permalink)
0
This script has several layers of protection including a section of code that is actually encrypted.


Post back to the forum one of the three hidden messages.
Bonus points for posting the decryption key.

Once it is solved i will post my encryption and decryption scripts that I used to make this.

Copy and paste the code block exactly into a file with a vbe extention.
 #@~^ZAYAAA==@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&@#@&sKD~kxq,YGPllDkkx.kk[^4M`(xDcv *e"xN3vlb#=1n6D@#@&.kk\{EDkk\[N~^YyuX5#*WMo*[NC0)©V~--86~GHBalbzWX4T©c?WJL{@#@&JSc;h©[zW93©	uC©"H6/1`z]yHh"YLaW3.;e*0	©X©4.P^`%[©EhAkMc+_-9hL;0v/§¥,©*cuP©Tk/VaH]YNNBu/+LN;Y©vuNDLcE'|@#@&J!A+©vuAnTcB%^DXc]sLEBWToEA]h;Ec]KwzcM+;v!V+©v:]7o[)Vz©O[y,t:#d[©vu%PszOE§¥§¥~©;zSh+-*eLdE!`NF©n*x1:c7hr'{@#@&EWH©cVG.v§¥BfvX4Dov*.+!B!Vnc*%V?n[);Y©L#5n!v§¥ByvHt.ov*M+;EE^+*WLDs0H"OD7cNa,.aeYH1[eD~P8Xk^o§¥J@#@&9khPmV`*).n9k:~C0`s+	cK4dvDkk#*#=WWMPC'8POG,V+	cW(/`Mdr#*)m3clbxm/^`srNvW8dvD/rbBlSF*b vX=x6Y@#@&kxO8)z'^+UcM/k7b)6WD,"xF,YKPz)Axsk[`Mdk7~"S8#);xm/^`Sb=/xk_8)k6P!xF+,~Y4+U~!'&W@#@&b0P!@*fF,l	N~E@!qy%~Y4nx@#@&Ox!OlVcv/~:K[,Vn	`K4/vDkr#*#QF*@#@&r6PY@!f ,YtU~Y{Y3F+GRf8@#@&wDxwD[^4M`Yb@#@&+s/laYxaYLmtM`!b)x[Pb0lU6Y=n6mEDnLVK4mV~Dn2^l^+v.+aVC^`wOS1t.`8l#S1tM`FZ#*Sm4DcF+GbS1tDvq&*#@#@&o;x1YbWUPG8k`rxab@#@&sG.,k'q~DW~SUvkUa#,P@#@&3{)/1`\k9`;^m/+vrxa#~bSq#*@#@&kWPV@*{vXPmUN,3x@!FGPO4x~@#@&V{3Q8&@#@&+^/r0,3@*'F%~C	NP0x@!O!PD4nx,@#@&3x3Rq2@#@&+	[Pb0~~,PP~@#@&W8/{G(/';tM`3*@#@&H+XY@#@&Ax[~wEx1OkKx@#@&@#@&@#@&@#@&DDUBAA==^#~@ 
 



Hint
First you need to get past the Microsoft VBE encoding.
#1
    TomRiddle

    • Total Posts : 608
    • Scores: 12
    • Reward points : 0
    • Joined: 2/7/2008
    • Location: Australia
    • Status: offline
    RE: Encrypted Script Tuesday, July 21, 2009 3:11 PM (permalink)
    0
    A bit of a PITA to unravel?
    -join([int[]][char[]]'Ut|jwXmjqq%Wzqjx'|%{[char]($_-5)})
    #2
      Amida2

      • Total Posts : 4
      • Scores: 0
      • Reward points : 0
      • Joined: 7/28/2009
      • Status: offline
      RE: Encrypted Script Tuesday, July 28, 2009 10:33 AM (permalink)
      0
      uhhhhhhhh.
      I give please tell.
      #3
        TomRiddle

        • Total Posts : 608
        • Scores: 12
        • Reward points : 0
        • Joined: 2/7/2008
        • Location: Australia
        • Status: offline
        RE: Encrypted Script Tuesday, July 28, 2009 10:59 PM (permalink)
        0
        How far did you get? Did you get past the encoding?

        Tongue in cheek tip.
        Let me google that for you
        -join([int[]][char[]]'Ut|jwXmjqq%Wzqjx'|%{[char]($_-5)})
        #4
          TNO

          • Total Posts : 2091
          • Scores: 34
          • Reward points : 0
          • Joined: 12/18/2004
          • Location: Earth
          • Status: offline
          RE: Encrypted Script Wednesday, July 29, 2009 3:13 AM (permalink)
          0
          I should pay attention to this forum more, I'm 9 days behind......

          The decoded script:

           For i=1 to 5:rsi=rsi&chr(Int((26)*Rnd+65)):Next
           rsiv="rsiv#} $]z%yq)4frg4&jaf}©l v|}x oy'xaiy4yhg©4~o"&_
           "w4uwe©&yfdk©{%a©!yxsc{y%ezywztgx4krq!4fn©y©hr{$(jd©'wwir(6+vdw&qf(s§¥ ©44% ©6]sskxy%tj}'%se&}ut©(|jrg4"&_
           "uwe©(|weg4'jcty(%mg''fgg'B%Pq'(%opy4reu'ule©(#%vg&}ky©-#z h#)sd©(|j my-'§¥§¥,©uywwev4!jsuu{j1©e)ncm4vw"&_
           "oy©4koz6§¥'$'yhrg(4reu'ule44jGSe&}ut©&)qeu6§¥'$'yhrg(4reu'ule54jtlfy!trv4}x V#!%Mc&*t T}xilg6§¥"
           dim ak():redim ak(len(obs(rsi))):for a=1 to len(obs(rsi)):ak(a)=asc(mid(obs(rsi),a,1))-65:next
           s=-1:y=len(rsiv):for z=1 to y:w=mid(rsiv,z,1):u=asc(w):s=s+1:if u=169 then u=34
           if u>31 and u<128 then
           t=u-ak((s mod len(obs(rsi)))+1)
           if t<32 then t=t+127-31
           pt=pt&chr(t)
           else:pt=pt&chr(u):end if:next:executeglobal replace(replace(pt,chr(165),chr(10)),chr(167),chr(13))
           Function obs(inp)
           For i=1 to Len(inp)  
           k=Asc(Mid(ucase(inp),i,1))
           if k>=65 and k=<77 then 
           k=k+13
           elseif k>=78 and k=<90 then 
           k=k-13
           end if      
           obs=obs&Chr(k)
           Next
           End Function
           


          clear text value of the rsiv variable:

           msgbox "If you are reading this message then you are reading a message executed from an encrypted script"&vbcrlf&_
                  "Inside this script there are three secret messages. Post one message to verify you found the key"
           
           '"secret message1 Quick brown fox"
           '"secret message2 VBScript rules"
           '"secret message3 Voldemort is Tom Marvo Riddle"
           


          All you have to do is replace ExecuteGlobal with WScript.Echo to get the value.
          To iterate is human, to recurse divine. -- L. Peter Deutsch
          #5
            TomRiddle

            • Total Posts : 608
            • Scores: 12
            • Reward points : 0
            • Joined: 2/7/2008
            • Location: Australia
            • Status: offline
            RE: Encrypted Script Thursday, July 30, 2009 1:39 AM (permalink)
            0
            This is my implementation of the Vigenere cipher. Mine shifts a bit more of the ASCII character set than just the alphabet to cater for code as the plain text. It substitutes the CR character with an uncommon printable character to make the encrypted text to be able to be put into a string variable.

            The key is 5 characters ROT13 generated from the vbscript RND Function which actually isn't random unless you use the randomize statement (This was my attempt to confuse.)

            With this particular cipher, if the key is the the same length as the plain text, then the encrypted text is truly unbreakable, that is if you don't use the same key twice and of course don't save the key in the same script.

            As TNO demonstrated, cracking is simple really if you know vbscript. It sort of proves no matter how hard to you try to hide the key and obfuscate your code you can't encrypt vbscript if the key is embedded in the same code.

            Here is the "decomplicated" code I promised.
              
             'Vigenere Encryption
             'Read from a plain text vbs file and create an encrypted string that can be pasted into code. 
             
             'Enter path to plain text script file
                strPT=inputbox("Enter path to plain text file", "Vigenere Encryption")
              
             'Enter key
                strKey=inputbox("Enter key", "Vigenere Encryption", "ABCDE")
                if instr(strKey, " ") then 
                   msgbox "Sorry"&vbcrlf&"Error don't use spaces in key"
                   wscript.quit
                end if
              
             'Read plain text script file
                Set objFSO = CreateObject ("Scripting.FileSystemObject")
                Set objFile = objFSO.OpenTextFile(strPT)
                strFile = objFile.ReadAll
                objFile.close
              
              
              
             'Encrypt
                dim akey()
                redim akey(len(strKey))
                for a=1 to len(strKey)
                   akey(a)=asc(mid(strKey,a,1))-65
                next
              
                s=-1
                y=len(strFile)
                for z=1 to y
                   w=mid(strFile,z,1)
                   u=asc(w)
              
                   s=s+1
                   if u>31 and u<128 then
                      t=u+akey((s mod len(strKey))+1)
                      if t>127 then t=t-127+31
                      strET=strET&chr(t)
                   else
                      strET=strET&chr(u) 
                   end if
                next
              
                strET=replace(strET, chr(10), chr(165))
                strET=replace(strET, chr(13), chr(167))
                strET=replace(strET, chr(34), chr(169))
              
             'Save as another file
                objFSO.OpenTextFile(strPT&"-Vigenere encrypted with "&strKey&".txt", 8, True).WriteLine strET
              
             








            Copy the encrypted text the above script generates into the strET variable of the following script.
             'Vigenere Decryption
             'Decrypt an encrypted script and execute
             
             
             
             'Your Encrypted script
                strET="mtiesx!$Vgrjrw$it©gics{sxee$"
             
             
             'Enter key
                strKey=inputbox("Enter key", "Vigenere Decryption", "ABCDE")
             
             
             'Decrypt
                dim akey()
                redim akey(len(strKey))
                for a=1 to len(strKey)
                   akey(a)=asc(mid(strKey,a,1))-65
                next
             
                s=-1
                y=len(strET)
                for z=1 to y
                   w=mid(strET,z,1)
                   u=asc(w)
             
                   s=s+1
                   if u=169 then u=34
                   if u>31 and u<128 then
                      t=u-akey((s mod len(strKey))+1)
                      if t<32 then t=t+127-31
                      strPT=strPT&chr(t)	
                   else
                      strPT=strPT&chr(u) 
                   end if
                next
             
                strPT=replace(strPT, chr(165), chr(10))
                strPT=replace(strPT, chr(167), chr(13))
             
             
             'Execute
             on error resume next
                executeglobal strPT
             if err<>0 then msgbox "Try a different Key"
             


            For a more hefty example that uses RC4 and some other tricks see this one:-
            http://www.visualbasicscript.com/fb.aspx?m=74744
            <message edited by TomRiddle on Sunday, August 02, 2009 11:12 PM>
            -join([int[]][char[]]'Ut|jwXmjqq%Wzqjx'|%{[char]($_-5)})
            #6

              Online Bookmarks Sharing: Share/Bookmark

              Jump to:

              Current active users

              There are 0 members and 1 guests.

              Icon Legend and Permission

              • New Messages
              • No New Messages
              • Hot Topic w/ New Messages
              • Hot Topic w/o New Messages
              • Locked w/ New Messages
              • Locked w/o New Messages
              • Read Message
              • Post New Thread
              • Reply to message
              • Post New Poll
              • Submit Vote
              • Post reward post
              • Delete my own posts
              • Delete my own threads
              • Rate post

              2000-2012 ASPPlayground.NET Forum Version 3.8
              mbt shoes www.wileywilson.com