elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  [BATCH] [APORTE] BatOfuser Ofuscador/Desofuscador para bats.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [BATCH] [APORTE] BatOfuser Ofuscador/Desofuscador para bats.  (Leído 6,373 veces)
Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.885



Ver Perfil
[BATCH] [APORTE] BatOfuser Ofuscador/Desofuscador para bats.
« en: 21 Marzo 2012, 12:02 pm »

BatOfuser
    By Elektro H@cker



Esto es un versión experimental, La he probado con varios scripts y funciona. También sirve para ofuscar texto plano y supongo que con otros formatos también debería funcionar.

Me ha costado bastante esfuerzo realizar un ofuscador sin usar la expansion (Todos los ofuscadores de bats que he visto la usan, Y eso conlleva incompatibilidad con algunos caracteres)

Este ofuscador soporta muchos, muchos más caracteres que otro ofuscador (Hecho en batch) convencional.

Errores conocidos:

        Si una linea del script contiene un número impar de comilals dobles (Debido a una mala sintaxis del usuario) esa línea no se llegará a ofuscar correctamente, Asegurense de cerrar las comillas en sus códigos.
        Elcaracter del escape ^ se desofusca 2 veces SI NO SE TRATA DE UN .BAT

Espero que lo disfruten.

Salu2

PD: En cuanto pueda, El proyecto lo codearé en Ruby para eliminar de golpe los errores y agregar una mejor compatibilidad sobre los caracteres utf-8, Y de paso lo compilaré para Windows para poder usar el ofuscador por linea de comandos, Como una herramienta más.



Test.bat

Código
  1. @echo off
  2. Title BatOfuser Test
  3. REM Elektro H@cker
  4. REM Visita: Foro.ElHacker.Net
  5. CHCP 1252 >NUL
  6. Echo: 0123456789
  7. Echo: abcdefghijklmnopqrstuvwxyz
  8. Echo: ABCDEFGHIJKLMNOPQRSTUVWXYZ
  9. Echo: áéíóú àèìòù ÁÉÍÓÚ ÀÈÌÒÙ äëïöü ÄËÏÖÜ ñ Ñ ª º · ¿ ¡ '
  10. Echo: \|@#~!$%&/()=?<>:;,.-_+*[]{}`'^^ ""


BatOfuser.bat

Código:
@Echo OFF
Title BatOfuser

REM By Elektro H@cker
:: Visita: Foro.elhacker.net

Mode con cols=108 lines=25
NirCMD Win Center Ititle "BatOfuser" >NUL 2>&1
REM chcp 1252 >NUL

:Logo
Echo+
Echo: 88888888ba                          ,ad8888ba,       ad88
Echo: 88      "8b                ,d      d8"'    `"8b     d8"
Echo: 88      ,8P                88     d8'        `8b    88
Echo: 88aaaaaa8P'  ,adPPYYba,  MM88MMM  88          88  MM88MMM  88       88  ,adPPYba,   ,adPPYba,  8b,dPPYba,
Echo: 88""""""8b,  ""     `Y8    88     88          88    88     88       88  I8[    ""  a8P_____88  88P'   "Y8
Echo: 88      `8b  ,adPPPPP88    88     Y8,        ,8P    88     88       88   `"Y8ba,   8PP"""""""  88
Echo: 88      a8P  88,    ,88    88,     Y8a.    .a8P     88     "8a,   ,a88  aa    ]8I  "8b,   ,aa  88
Echo: 88888888P"   `"8bbdP"Y8    "Y888    `"Y8888Y"'      88      `"YbbdP'Y8  `"YbbdP"'   `"Ybbd8"'  88
Echo+
Echo: By Elektro H@cker
Echo+
Echo: ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
Goto :Menu

:Charlist
Set "Alpha=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
Set "Numeric=0123456789"
Set "Special=\|@#~!$%&/()=?<>;,.-_+*[]{}`'^^":
Set "Special_UTF8=…‚¡¢£…ŠÖ•—µ‚Öàé·ÔÞã뎉‹”šŽÓØ™š¤¥¦§ú¨­ï"
Rem Special_UTF8= áéíóú àèìòù ÁÉÍÓÚ ÀÈÌÒÙ äëïöü ÄËÏÖÜ ñ Ñ ª º · ¿ ¡ '

:Menu
Echo+
Echo: Arrastra a la ventana el archivo que quieres ofuscar/desofuscar... | More
Set /P Archivo=^>^>^>
If not defined archivo (Goto :Menu)
Type %archivo%| Find "By Elektro H@cker" >NUL 2>&1
If %Errorlevel% EQU 0 (Goto :Desofuscador)
Cls




:::::::::::::::::
:Ofuscador
:::::::::::::::::

:Lineas
Set Linea=0
For /F "Tokens=*" %%a in ('Type %Archivo% ^| Find /V /C ""') do (Set Total=%%a)

:Leer_Ofuscador
If "%linea%" EQU "%total%" (Goto :Fin_Ofuscador)

For /F "Tokens=*" %%a in ('Type %Archivo% ^| MORE +%Linea%') do (
    Echo: Ofuscando: "%%a"
    Set /A Linea+=1
    Set "String=%%a"
    If not defined string (Goto :Leer_Ofuscador)
    Echo %%a>"%TEMP%\String.tmp"
    FOR %%? IN (%TEMP%\String.tmp) DO ( SET /A Longitud=%%~z? - 2 )
    Goto :Ofuscar
)




::::::::::::::::::::::
:Desofuscador
::::::::::::::::::::::

:Lineas
Set Linea=0
For /F "Tokens=*" %%a in ('Type %Archivo% ^| Find /V /C ""') do (Set Total=%%a)


:Leer_Desofuscador
For /F "Tokens=*" %%a in ('Type %Archivo% ^| MORE /E +%Linea%') do (
    Set /A Linea+=1
    Set "String=%%a"
    Goto :Desofuscar
)




:Ofuscar


If "%Count%" EQU "%Longitud%" (
    call :Write_Ofuscador
    Goto :Leer_Ofuscador)

::Comilladoble
Set "String=%String:"=€%"& rem "

::Espacio
If "%String:~0,1%" EQU " " (Set "New_String=%New_String% ")

::Alpha
If "%String:~0,1%" EQU "a" (Set "New_String=%New_String%%%Alpha:~0,1%%")
If "%String:~0,1%" EQU "b" (Set "New_String=%New_String%%%Alpha:~1,1%%")
If "%String:~0,1%" EQU "c" (Set "New_String=%New_String%%%Alpha:~2,1%%")
If "%String:~0,1%" EQU "d" (Set "New_String=%New_String%%%Alpha:~3,1%%")
If "%String:~0,1%" EQU "e" (Set "New_String=%New_String%%%Alpha:~4,1%%")
If "%String:~0,1%" EQU "f" (Set "New_String=%New_String%%%Alpha:~5,1%%")
If "%String:~0,1%" EQU "g" (Set "New_String=%New_String%%%Alpha:~6,1%%")
If "%String:~0,1%" EQU "h" (Set "New_String=%New_String%%%Alpha:~7,1%%")
If "%String:~0,1%" EQU "i" (Set "New_String=%New_String%%%Alpha:~8,1%%")
If "%String:~0,1%" EQU "j" (Set "New_String=%New_String%%%Alpha:~9,1%%")
If "%String:~0,1%" EQU "k" (Set "New_String=%New_String%%%Alpha:~10,1%%")
If "%String:~0,1%" EQU "l" (Set "New_String=%New_String%%%Alpha:~11,1%%")
If "%String:~0,1%" EQU "m" (Set "New_String=%New_String%%%Alpha:~12,1%%")
If "%String:~0,1%" EQU "n" (Set "New_String=%New_String%%%Alpha:~13,1%%")
If "%String:~0,1%" EQU "o" (Set "New_String=%New_String%%%Alpha:~14,1%%")
If "%String:~0,1%" EQU "p" (Set "New_String=%New_String%%%Alpha:~15,1%%")
If "%String:~0,1%" EQU "q" (Set "New_String=%New_String%%%Alpha:~16,1%%")
If "%String:~0,1%" EQU "r" (Set "New_String=%New_String%%%Alpha:~17,1%%")
If "%String:~0,1%" EQU "s" (Set "New_String=%New_String%%%Alpha:~18,1%%")
If "%String:~0,1%" EQU "t" (Set "New_String=%New_String%%%Alpha:~19,1%%")
If "%String:~0,1%" EQU "u" (Set "New_String=%New_String%%%Alpha:~20,1%%")
If "%String:~0,1%" EQU "v" (Set "New_String=%New_String%%%Alpha:~21,1%%")
If "%String:~0,1%" EQU "w" (Set "New_String=%New_String%%%Alpha:~22,1%%")
If "%String:~0,1%" EQU "x" (Set "New_String=%New_String%%%Alpha:~23,1%%")
If "%String:~0,1%" EQU "y" (Set "New_String=%New_String%%%Alpha:~24,1%%")
If "%String:~0,1%" EQU "z" (Set "New_String=%New_String%%%Alpha:~25,1%%")
If "%String:~0,1%" EQU "A" (Set "New_String=%New_String%%%Alpha:~26,1%%")
If "%String:~0,1%" EQU "B" (Set "New_String=%New_String%%%Alpha:~27,1%%")
If "%String:~0,1%" EQU "C" (Set "New_String=%New_String%%%Alpha:~28,1%%")
If "%String:~0,1%" EQU "D" (Set "New_String=%New_String%%%Alpha:~29,1%%")
If "%String:~0,1%" EQU "E" (Set "New_String=%New_String%%%Alpha:~30,1%%")
If "%String:~0,1%" EQU "F" (Set "New_String=%New_String%%%Alpha:~31,1%%")
If "%String:~0,1%" EQU "G" (Set "New_String=%New_String%%%Alpha:~32,1%%")
If "%String:~0,1%" EQU "H" (Set "New_String=%New_String%%%Alpha:~33,1%%")
If "%String:~0,1%" EQU "I" (Set "New_String=%New_String%%%Alpha:~34,1%%")
If "%String:~0,1%" EQU "J" (Set "New_String=%New_String%%%Alpha:~35,1%%")
If "%String:~0,1%" EQU "K" (Set "New_String=%New_String%%%Alpha:~36,1%%")
If "%String:~0,1%" EQU "L" (Set "New_String=%New_String%%%Alpha:~37,1%%")
If "%String:~0,1%" EQU "M" (Set "New_String=%New_String%%%Alpha:~38,1%%")
If "%String:~0,1%" EQU "N" (Set "New_String=%New_String%%%Alpha:~39,1%%")
If "%String:~0,1%" EQU "O" (Set "New_String=%New_String%%%Alpha:~40,1%%")
If "%String:~0,1%" EQU "P" (Set "New_String=%New_String%%%Alpha:~41,1%%")
If "%String:~0,1%" EQU "Q" (Set "New_String=%New_String%%%Alpha:~42,1%%")
If "%String:~0,1%" EQU "R" (Set "New_String=%New_String%%%Alpha:~43,1%%")
If "%String:~0,1%" EQU "S" (Set "New_String=%New_String%%%Alpha:~44,1%%")
If "%String:~0,1%" EQU "T" (Set "New_String=%New_String%%%Alpha:~45,1%%")
If "%String:~0,1%" EQU "U" (Set "New_String=%New_String%%%Alpha:~46,1%%")
If "%String:~0,1%" EQU "V" (Set "New_String=%New_String%%%Alpha:~47,1%%")
If "%String:~0,1%" EQU "W" (Set "New_String=%New_String%%%Alpha:~48,1%%")
If "%String:~0,1%" EQU "X" (Set "New_String=%New_String%%%Alpha:~49,1%%")
If "%String:~0,1%" EQU "Y" (Set "New_String=%New_String%%%Alpha:~50,1%%")
If "%String:~0,1%" EQU "Z" (Set "New_String=%New_String%%%Alpha:~51,1%%")

::Numeric
If "%String:~0,1%" EQU "0" (Set "New_String=%New_String%%%Numeric:~0,1%%")
If "%String:~0,1%" EQU "1" (Set "New_String=%New_String%%%Numeric:~1,1%%")
If "%String:~0,1%" EQU "2" (Set "New_String=%New_String%%%Numeric:~2,1%%")
If "%String:~0,1%" EQU "3" (Set "New_String=%New_String%%%Numeric:~3,1%%")
If "%String:~0,1%" EQU "4" (Set "New_String=%New_String%%%Numeric:~4,1%%")
If "%String:~0,1%" EQU "5" (Set "New_String=%New_String%%%Numeric:~5,1%%")
If "%String:~0,1%" EQU "6" (Set "New_String=%New_String%%%Numeric:~6,1%%")
If "%String:~0,1%" EQU "7" (Set "New_String=%New_String%%%Numeric:~7,1%%")
If "%String:~0,1%" EQU "8" (Set "New_String=%New_String%%%Numeric:~8,1%%")
If "%String:~0,1%" EQU "9" (Set "New_String=%New_String%%%Numeric:~9,1%%")

::Special_UTF8
If "%String:~0,1%" EQU "á" (Set "New_String=%New_String%%%Special_UTF8:~0,1%%")
If "%String:~0,1%" EQU "é" (Set "New_String=%New_String%%%Special_UTF8:~1,1%%")
If "%String:~0,1%" EQU "í" (Set "New_String=%New_String%%%Special_UTF8:~2,1%%")
If "%String:~0,1%" EQU "ó" (Set "New_String=%New_String%%%Special_UTF8:~3,1%%")
If "%String:~0,1%" EQU "ú" (Set "New_String=%New_String%%%Special_UTF8:~4,1%%")
If "%String:~0,1%" EQU "à" (Set "New_String=%New_String%%%Special_UTF8:~5,1%%")
If "%String:~0,1%" EQU "è" (Set "New_String=%New_String%%%Special_UTF8:~6,1%%")
If "%String:~0,1%" EQU "ì" (Set "New_String=%New_String%%%Special_UTF8:~7,1%%")
If "%String:~0,1%" EQU "ò" (Set "New_String=%New_String%%%Special_UTF8:~8,1%%")
If "%String:~0,1%" EQU "ù" (Set "New_String=%New_String%%%Special_UTF8:~9,1%%")
If "%String:~0,1%" EQU "Á" (Set "New_String=%New_String%%%Special_UTF8:~10,1%%")
If "%String:~0,1%" EQU "É" (Set "New_String=%New_String%%%Special_UTF8:~11,1%%")
If "%String:~0,1%" EQU "Í" (Set "New_String=%New_String%%%Special_UTF8:~12,1%%")
If "%String:~0,1%" EQU "Ó" (Set "New_String=%New_String%%%Special_UTF8:~13,1%%")
If "%String:~0,1%" EQU "Ú" (Set "New_String=%New_String%%%Special_UTF8:~14,1%%")
If "%String:~0,1%" EQU "À" (Set "New_String=%New_String%%%Special_UTF8:~15,1%%")
If "%String:~0,1%" EQU "È" (Set "New_String=%New_String%%%Special_UTF8:~16,1%%")
If "%String:~0,1%" EQU "Ì" (Set "New_String=%New_String%%%Special_UTF8:~17,1%%")
If "%String:~0,1%" EQU "Ò" (Set "New_String=%New_String%%%Special_UTF8:~18,1%%")
If "%String:~0,1%" EQU "Ù" (Set "New_String=%New_String%%%Special_UTF8:~19,1%%")
If "%String:~0,1%" EQU "ä" (Set "New_String=%New_String%%%Special_UTF8:~20,1%%")
If "%String:~0,1%" EQU "ë" (Set "New_String=%New_String%%%Special_UTF8:~21,1%%")
If "%String:~0,1%" EQU "ï" (Set "New_String=%New_String%%%Special_UTF8:~22,1%%")
If "%String:~0,1%" EQU "ö" (Set "New_String=%New_String%%%Special_UTF8:~23,1%%")
If "%String:~0,1%" EQU "ü" (Set "New_String=%New_String%%%Special_UTF8:~24,1%%")
If "%String:~0,1%" EQU "Ä" (Set "New_String=%New_String%%%Special_UTF8:~25,1%%")
If "%String:~0,1%" EQU "Ë" (Set "New_String=%New_String%%%Special_UTF8:~26,1%%")
If "%String:~0,1%" EQU "Ï" (Set "New_String=%New_String%%%Special_UTF8:~27,1%%")
If "%String:~0,1%" EQU "Ö" (Set "New_String=%New_String%%%Special_UTF8:~28,1%%")
If "%String:~0,1%" EQU "Ü" (Set "New_String=%New_String%%%Special_UTF8:~29,1%%")
If "%String:~0,1%" EQU "ñ" (Set "New_String=%New_String%%%Special_UTF8:~30,1%%")
If "%String:~0,1%" EQU "Ñ" (Set "New_String=%New_String%%%Special_UTF8:~31,1%%")
If "%String:~0,1%" EQU "ª" (Set "New_String=%New_String%%%Special_UTF8:~32,1%%")
If "%String:~0,1%" EQU "º" (Set "New_String=%New_String%%%Special_UTF8:~33,1%%")
If "%String:~0,1%" EQU "·" (Set "New_String=%New_String%%%Special_UTF8:~34,1%%")
If "%String:~0,1%" EQU "¿" (Set "New_String=%New_String%%%Special_UTF8:~35,1%%")
If "%String:~0,1%" EQU "¡" (Set "New_String=%New_String%%%Special_UTF8:~36,1%%")
If "%String:~0,1%" EQU "´" (Set "New_String=%New_String%%%Special_UTF8:~37,1%%")

::Special
If "%String:~0,1%" EQU "€" (Set "New_String=%New_String%€")
If "%String:~0,1%" EQU "\" (Set "New_String=%New_String%%%Special:~0,1%%")
If "%String:~0,1%" EQU "|" (Set "New_String=%New_String%%%Special:~1,1%%")
If "%String:~0,1%" EQU "@" (Set "New_String=%New_String%%%Special:~2,1%%")
If "%String:~0,1%" EQU "#" (Set "New_String=%New_String%%%Special:~3,1%%")
If "%String:~0,1%" EQU "~" (Set "New_String=%New_String%%%Special:~4,1%%")
If "%String:~0,1%" EQU "!" (Set "New_String=%New_String%%%Special:~5,1%%")
If "%String:~0,1%" EQU "$" (Set "New_String=%New_String%%%Special:~6,1%%")
If "%String:~0,1%" EQU "%%" (Set "New_String=%New_String%%%Special:~7,1%%")
If "%String:~0,1%" EQU "&" (Set "New_String=%New_String%%%Special:~8,1%%")
If "%String:~0,1%" EQU "/" (Set "New_String=%New_String%%%Special:~9,1%%")
If "%String:~0,1%" EQU "(" (Set "New_String=%New_String%%%Special:~10,1%%")
If "%String:~0,1%" EQU ")" (Set "New_String=%New_String%%%Special:~11,1%%")
If "%String:~0,1%" EQU "=" (Set "New_String=%New_String%%%Special:~12,1%%")
If "%String:~0,1%" EQU "?" (Set "New_String=%New_String%%%Special:~13,1%%")
If "%String:~0,1%" EQU "<" (Set "New_String=%New_String%%%Special:~14,1%%")
If "%String:~0,1%" EQU ">" (Set "New_String=%New_String%%%Special:~15,1%%")
If "%String:~0,1%" EQU ";" (Set "New_String=%New_String%%%Special:~16,1%%")
If "%String:~0,1%" EQU "," (Set "New_String=%New_String%%%Special:~17,1%%")
If "%String:~0,1%" EQU "." (Set "New_String=%New_String%%%Special:~18,1%%")
If "%String:~0,1%" EQU "-" (Set "New_String=%New_String%%%Special:~19,1%%")
If "%String:~0,1%" EQU "_" (Set "New_String=%New_String%%%Special:~20,1%%")
If "%String:~0,1%" EQU "+" (Set "New_String=%New_String%%%Special:~21,1%%")
If "%String:~0,1%" EQU "*" (Set "New_String=%New_String%%%Special:~22,1%%")
If "%String:~0,1%" EQU "[" (Set "New_String=%New_String%%%Special:~23,1%%")
If "%String:~0,1%" EQU "]" (Set "New_String=%New_String%%%Special:~24,1%%")
If "%String:~0,1%" EQU "{" (Set "New_String=%New_String%%%Special:~25,1%%")
If "%String:~0,1%" EQU "}" (Set "New_String=%New_String%%%Special:~26,1%%")
If "%String:~0,1%" EQU "`" (Set "New_String=%New_String%%%Special:~27,1%%")
If "%String:~0,1%" EQU "'" (Set "New_String=%New_String%%%Special:~28,1%%")
If "%String:~0,1%" EQU "^" (Set "New_String=%New_String%%%Special:~29,1%%")
If "%String:~0,1%" EQU ":" (Set "New_String=%New_String%%%Special:~30,1%%")

Set "String=%String:~1%"
Set /A Count+=1
Goto :Ofuscar




:Desofuscar

::Alpha
Set "String=%String:Alpha:~0,1=a%"
Set "String=%String:Alpha:~1,1=b%"
Set "String=%String:Alpha:~2,1=c%"
Set "String=%String:Alpha:~3,1=d%"
Set "String=%String:Alpha:~4,1=e%"
Set "String=%String:Alpha:~5,1=f%"
Set "String=%String:Alpha:~6,1=g%"
Set "String=%String:Alpha:~7,1=h%"
Set "String=%String:Alpha:~8,1=i%"
Set "String=%String:Alpha:~9,1=j%"
Set "String=%String:Alpha:~10,1=k%"
Set "String=%String:Alpha:~11,1=l%"
Set "String=%String:Alpha:~12,1=m%"
Set "String=%String:Alpha:~13,1=n%"
Set "String=%String:Alpha:~14,1=o%"
Set "String=%String:Alpha:~15,1=p%"
Set "String=%String:Alpha:~16,1=q%"
Set "String=%String:Alpha:~17,1=r%"
Set "String=%String:Alpha:~18,1=s%"
Set "String=%String:Alpha:~19,1=t%"
Set "String=%String:Alpha:~20,1=u%"
Set "String=%String:Alpha:~21,1=v%"
Set "String=%String:Alpha:~22,1=w%"
Set "String=%String:Alpha:~23,1=x%"
Set "String=%String:Alpha:~24,1=y%"
Set "String=%String:Alpha:~25,1=z%"
Set "String=%String:Alpha:~26,1=A%"
Set "String=%String:Alpha:~27,1=B%"
Set "String=%String:Alpha:~28,1=C%"
Set "String=%String:Alpha:~29,1=D%"
Set "String=%String:Alpha:~30,1=E%"
Set "String=%String:Alpha:~31,1=F%"
Set "String=%String:Alpha:~32,1=G%"
Set "String=%String:Alpha:~33,1=H%"
Set "String=%String:Alpha:~34,1=I%"
Set "String=%String:Alpha:~35,1=J%"
Set "String=%String:Alpha:~36,1=K%"
Set "String=%String:Alpha:~37,1=L%"
Set "String=%String:Alpha:~38,1=M%"
Set "String=%String:Alpha:~39,1=N%"
Set "String=%String:Alpha:~40,1=O%"
Set "String=%String:Alpha:~41,1=P%"
Set "String=%String:Alpha:~42,1=Q%"
Set "String=%String:Alpha:~43,1=R%"
Set "String=%String:Alpha:~44,1=S%"
Set "String=%String:Alpha:~45,1=T%"
Set "String=%String:Alpha:~46,1=U%"
Set "String=%String:Alpha:~47,1=V%"
Set "String=%String:Alpha:~48,1=W%"
Set "String=%String:Alpha:~49,1=X%"
Set "String=%String:Alpha:~50,1=Y%"
Set "String=%String:Alpha:~51,1=Z%"

::Numeric
Set "String=%String:Numeric:~0,1=0%"
Set "String=%String:Numeric:~1,1=1%"
Set "String=%String:Numeric:~2,1=2%"
Set "String=%String:Numeric:~3,1=3%"
Set "String=%String:Numeric:~4,1=4%"
Set "String=%String:Numeric:~5,1=5%"
Set "String=%String:Numeric:~6,1=6%"
Set "String=%String:Numeric:~7,1=7%"
Set "String=%String:Numeric:~8,1=8%"
Set "String=%String:Numeric:~9,1=9%"

::Special_UTF8
Set "String=%String:Special_UTF8:~0,1=…%"
Set "String=%String:Special_UTF8:~1,1=‚%"
Set "String=%String:Special_UTF8:~2,1=¡%"
Set "String=%String:Special_UTF8:~3,1=¢%"
Set "String=%String:Special_UTF8:~4,1=£%"
Set "String=%String:Special_UTF8:~5,1=…%"
Set "String=%String:Special_UTF8:~6,1=Š%"
Set "String=%String:Special_UTF8:~7,1=Ö%"
Set "String=%String:Special_UTF8:~8,1=•%"
Set "String=%String:Special_UTF8:~9,1=—%"
Set "String=%String:Special_UTF8:~10,1=µ%"
Set "String=%String:Special_UTF8:~11,1=‚%"
Set "String=%String:Special_UTF8:~12,1=Ö%"
Set "String=%String:Special_UTF8:~13,1=à%"
Set "String=%String:Special_UTF8:~14,1=é%"
Set "String=%String:Special_UTF8:~15,1=·%"
Set "String=%String:Special_UTF8:~16,1=Ô%"
Set "String=%String:Special_UTF8:~17,1=Þ%"
Set "String=%String:Special_UTF8:~18,1=ã%"
Set "String=%String:Special_UTF8:~19,1=ë%"
Set "String=%String:Special_UTF8:~20,1=Ž%"
Set "String=%String:Special_UTF8:~21,1=‰%"
Set "String=%String:Special_UTF8:~22,1=‹%"
Set "String=%String:Special_UTF8:~23,1=”%"
Set "String=%String:Special_UTF8:~24,1=š%"
Set "String=%String:Special_UTF8:~25,1=Ž%"
Set "String=%String:Special_UTF8:~26,1=Ó%"
Set "String=%String:Special_UTF8:~27,1=Ø%"
Set "String=%String:Special_UTF8:~28,1=™%"
Set "String=%String:Special_UTF8:~29,1=š%"
Set "String=%String:Special_UTF8:~30,1=¤%"
Set "String=%String:Special_UTF8:~31,1=¥%"
Set "String=%String:Special_UTF8:~32,1=^ª%"
Set "String=%String:Special_UTF8:~33,1=§%"
Set "String=%String:Special_UTF8:~34,1=^·%"
Set "String=%String:Special_UTF8:~35,1=¿%"
Set "String=%String:Special_UTF8:~36,1=­%"
Set "String=%String:Special_UTF8:~37,1=ï%"

::Special
Set "String=%String:Special:~0,1=^\%"
Set "String=%String:Special:~1,1=^|%"
Set "String=%String:Special:~2,1=@%"
Set "String=%String:Special:~3,1=#%"
Set "String=%String:Special:~4,1=^~%"
Set "String=%String:Special:~5,1=^^^!%"
Set "String=%String:Special:~6,1=$%"
Set "String=%String:Special:~7,1=€%"
Set "String=%String:Special:~8,1=^&%"
Set "String=%String:Special:~9,1=/%"
Set "String=%String:Special:~10,1=(%"
Set "String=%String:Special:~11,1=)%"
Set "String=%String:Special:~12,1==%"
Set "String=%String:Special:~13,1=?%"
Set "String=%String:Special:~14,1=^<%"
Set "String=%String:Special:~15,1=^>%"
Set "String=%String:Special:~16,1=;%"
Set "String=%String:Special:~17,1=,%"
Set "String=%String:Special:~18,1=.%"
Set "String=%String:Special:~19,1=-%"
Set "String=%String:Special:~20,1=_%"
Set "String=%String:Special:~21,1=+%"
Set "String=%String:Special:~22,1=*%"
Set "String=%String:Special:~23,1=^[%"
Set "String=%String:Special:~24,1=^]%"
Set "String=%String:Special:~25,1={%"
Set "String=%String:Special:~26,1=}%"
Set "String=%String:Special:~27,1=`%"
Set "String=%String:Special:~28,1='%"
Set "String=%String:Special:~29,1=^^^^%"
Set "String=%String:Special:~30,1=:%"

Echo string "%STRING%"
Call :Write_Desofuscador




:Write_Ofuscador
Set "New_String=%New_String:€="%"& rem "
Echo %New_String%>>"Script Ofuscado con BatOfuser.bat"
If NOT Errorlevel 0 (Echo ERROR & pause & Exit /B 1)
Set "New_String="
Set "Count="
Goto :EOF


:Write_Desofuscador
Echo %String%>>"%TEMP%\Batofuser_DESOFUSCAR_.bat"
If NOT Errorlevel 0 (Echo ERROR & pause & Exit /B 1)
Set "String="
If "%linea%" EQU "%total%" (Goto :Fin_Desofuscador)
Goto :Leer_Desofuscador


:Fin_Ofuscador
Echo REM By Elektro H@cker >> "Script Ofuscado con BatOfuser.bat"
Del /Q "%TEMP%\String.tmp"
Cls
echo Fin | More
pause
Exit


:Fin_Desofuscador
CLS
setlocal enabledelayedexpansion
Set "String=!String:%%=!"
Set "String=!String:€=%%!"

For /F "Tokens=*" %%a in ('Type "%TEMP%\Batofuser_DESOFUSCAR_.bat"') do (
    Set "String=%%a"
    Set "String=!String:%%=!"
    echo !String!
    Set "String=!String:€=%%!"
    Echo !String!>>"Script Desofuscado con BatOfuser.bat"
)
Del /Q "%TEMP%\Batofuser_DESOFUSCAR_.bat"
echo Fin | More
Pause
Exit


« Última modificación: 21 Marzo 2012, 16:04 pm por EleKtro H@cker » En línea



Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines