[Tool] TextToASCII



Bueno, esta está en Batch.


Podeis copiar el code de aquí, que es bastante largo..

  • Pide un string
  • Lo convierte en ASCII
  • Da la opcion de copiar el resultado al portapapeles





Dudas, sugerencias, criticas..


bytez! Giñar

"Encriptacion y crackmes en Batch" - by xassi

"Encriptacion y crackmes en Batch desde 0"

by xassiz


>INDICE:

1.Introduccion
2.Usando Variables
3.Extraccion de Caracteres
4.Reemplazo de Caracteres
5.Parametros
6.Despedida





1. Introduccion

Bueno, en este tutorial explicare cosas sobre la encriptacion en Batch.

Codificando nuestros codes, haremos que sea mas dificil la lectura a otras personas por ejemplo para que no nos copien.

Sirve para muchas cosas por ejemplo para encriptar una contraseña dentro del .bat que no queremos que descubran dandole
a editar, un virus para que el antivirus no lo detecte tan facilmente...
y por supuesto para hacer crackmes.



2. Usando variables

Para empezar veremos que ya se hace mas dificil leer un bat si escondemos palabras o incluso
comandos en variables:

@echo off
set cls=echo
set adios=hola
set exit=pause
%cls%.%adios%
%exit%
exit

que seria lo mismo que:

@echo off
echo.hola
pause
exit

En un virus podriamos "setear" (del comando set) estas variables:
set a=s
set b=h
set c=u
set d=t
set e=d
set f=o
set g=w
set h=n

y escribir:
%a%%b%%c%%d%%e%%f%%g%%h% -s

para que se apagase el ordenador.

Para disimular aun mas podemos por ejemplo crear varias variables para el mismo comando o valor, como en el ejemplo anterior.
@echo off
set pau=pau
set se=se
%pau%%se%
exit

Por ejemplo tenemos un bat con contraseña:
@echo off
set/p pass="Password: "
if %pass%==xassiz (echo.Bien) else (echo.Mal)
pause>nul
exit

..y en este se veria claramente que la password es "xassiz".

Si lo pusieramos asi, seria mas dificil:
@echo off
set abc=siz
set cba=xas
set/p pass="Password: "
if "%pass%"=="%cba%%abc%" (echo.Bien) else (echo.Mal)
pause>nul
exit

Y si pusieramos asi, aun seria mucho mas dificil:
@echo off
set alg=xzsasi
set/p pass="Password: "
if "%pass%"=="%alg:~0,1%%alg:~3,1%%alg:~2,1%%alg:~4,1%%alg:~-1%%alg:~1,1%" (echo.Bien) else (echo.Mal)
pause>nul
exit

Este ultimo ejemplo es normal que no lo entendais, es algo mas avanzado que veremos en el siguiente capitulo: La extraccion de caracteres.




3. Extraccion de caracteres

Bueno, esta tecnica, como su nombre indica, es extrayendo caracteres de una variable.

Su sintaxis es sencilla:

%nombre_variable:~caracteres_desechados,caracteres_cogidos%

Si no lo entiendes ahora, no te preocupes, con unos ejemplos todo se arregla:

@echo off
set opc=zzholazz
echo.%opc:~2,4%
::y mostraria "hola"
pause>nul
exit


% = Los dos por cientos indican que es una variable
: = Indican que vamos a trabajar con dicha variable
~ = Indican que la tecnica va ser por extraccion
nombre_variable = opc
caracteres_desechados = 2 (los dos primeros caracteres son zz por lo que no los queremos y los quitamos)
caracteres_cogidos = 4 (los cuatro siguiente caracteres son los que queremos utilizar)

Los verdes son los campos reemplazables


Bien, pues veremos algunos ejemplos rapidos por encima:

@echo off
set alg=jajaHackjajBlackjaj
echo.%alg:~4,4%%alg:~11,5%
pause>nul
exit
Que mostraria HackBlack

@echo off
set alg=jajaHackrBlack
echo.%alg:~4,4%%alg:~9%
pause>nul
exit
Que mostraria lo mismo que el anterior. Aqui vemos que la variable alg no acaba en j, por lo que lo que queremos coger llegaria hasta el final. En la extraccion ponemos ~9, pero como no hay ninguna coma separando algun otro digito, tomaria todos los caracteres apartir del caracter numero 10.

@echo off
set alg=jajaHackBlackj
echo.%alg:~-10,9%
pause>nul
exit
En esta extraccion, vemos que la variable alg tiene el valor jajaHackBlackj; entonces en este caso utilicé una extraccion con valor negativo: -10.
Esto empezaria a contar por el final diez carácteres hasta llegar a la H. A partir de ahi cogeria los 9 siguientes hacia delante porque no queremos que coja la j.

@echo off
set alg=jajaHackBlack
echo.%alg:~-9%
pause>nul
exit
Este es como hace dos ejemplos, pero ahora con valores negativos. Vemos que elimine la j del valor de la variable!
Entonces, contamos 9 hacia atras y llegamos a la H; como no hay coma separando otro digito coge hasta el final y muestra HackBlack.

@echo off
set alg=jajaHackBlackj
echo.%alg:~-10,-1%
pause>nul
exit
Ahora le volvimos a cambiar el valor de alg a jajaHackBlackj. En este caso ves que podemos combinar valores negativos en la extraccion -10,-1, que seguiria mostrando HackBlack porque coge desde la H (-12) hasta la k (-1).


Inventandonos ejemplos veremos cosas utiles que podemos hacer... ahora podemos hacer el programa de la Password usando la Extraccion de Caracteres:

@echo off
set alg=xzsasi
set/p pass="Password: "
if "%pass%"=="%alg:~0,1%%alg:~3,1%%alg:~2,1%%alg:~4,1%%alg:~-1%%alg:~1,1%" (echo.Bien) else (echo.Mal)
pause>nul
exit
Este era el ultimo ejemplo del programa, que supongo que ahora ya entenderas.




4. Reemplazo de caracteres

Bueno, esta es una tecnica usada mas bien para otro tipo de cosas, pero puede utilizarse tambien para encriptacion.

La sintaxis es parecida a la extraccion pero es mas facil de entender:

%nombre_variable:caracter_reemplazador=caracter_reemplazado%

@echo off
set alg=H4ckBl4ck
echo.De %alg% a %alg:4=a%
pause>nul
exit
Muestra primero la variable alg (H4ckBl4ck) y luego muestra la misma variable pero los cuatros que aparecian se convirtieron en as (HackBlack).


% = Los dos por cientos indican que es una variable
: = Indican que vamos a trabajar con dicha variable
caracter_reemplazador = 4 (cambiamos los cuatros..)
= = Indica que se va a reemplazar
caracter_reemplazado = a (..por as)

Los verdes son los campos reemplazables


Bueno, con esta tecnica se juega mas cambiando el valor de la variable, por ejemplo que la variable alg de valor H4ckBl4ck se quede HackBlack (aunque no la mostremos).

Cambiando la variable (o creando otra) podemos cambiar varios caracteres, como veremos en el siguiente ejemplo:

@echo off
set alg=x4ss1z
set alg2=%alg:4=a%
set alg2=%alg2:1=i%
echo.De %alg% a %alg2%
pause>nul
exit
Que mostraria primero x4ss1z y despues xassiz.

Con esto podriamos crear un "encriptador":
@echo off
set/p palabra="Palabra>> "
set alg=%palabra:x=123%
set alg=%alg:a=234%
set alg=%alg:s=345%
set alg=%alg:i=456%
set alg=%alg:z=567%
cls
echo."%palabra%" encriptado = %alg%
pause>nul
exit
Que si en donde nos pide la palabra escribimos xassiz, nos devolveria:
"xassiz" encriptado = 123234345345456567

El programa de la contraseña podriamos hacerlo asi:
@echo off
set alg=xzsasi
set alg=%alg:a=4%
set alg=%alg:i=1%
set/p pass="Password: "
if "%pass%"=="%alg:~0,1%%alg:~3,1%%alg:~2,1%%alg:~4,1%%alg:~-1%%alg:~1,1%" (echo.Bien) else (echo.Mal)
pause>nul
exit
Que para que nos diera correcto tendriamos que cambiar las a por 4 y las i por 1:
Password: x4ss1z
Bien



5. Parametros

Bueno, esto se utiliza mas bien para las llamadas Funciones, pero tambien se utiliza bastante en los virus para ahorrar lineas, o tambien en los crackmes!

Vamos a poner un ejemplo sencillito para ver como se utilizan:
@echo off
set/p palab="Palabra>> "
call :alg %palab%
echo."%palab%" encriptado = %par%
pause>nul
exit
:alg
set par=%1
set alg=%par:x=123%
set alg=%alg:a=234%
set alg=%alg:s=345%
set alg=%alg:i=456%
set alg=%alg:z=567%
goto:eof
Que seria exactamente igual que el encriptador de antes. La gente que no sepa usar parametros le va ser imposible de sacar y a la que los sabe utilizar le va ser mas complicado que de la otra manera, pero mas adelante veremos un ejemplo mejor.

Analizando el codigo vemos lo que pasa:
-Primero preguntamos el valor de la variable %palab%.
-Ahora llamamos a la etiqueta :alg con call pasandole como primer parametro la palabra que escribiera el user:
call :alg %palab%
Hasta ahi sencillo no? Pues ahora llegan los parametros.
-Seteamos la variable par como %1. Eso es un parametro, el parametro 1. Los parametros son numeros, en este caso es el primer parametro. Es como una variable, cual sera su valor? pues lo que vaya despues de call+:etiqueta, que en este caso es otra variable, %palab%.
Entonces si el user escribiera xassiz seria como si hiciesemos:
set par=xassiz

A partir de ahi se van reemplazando los caracteres.. hacemos un goto:eof para salir de la etiqueta y el programa vuelve a la linea siguiente al call.

Pondre un ejemplo mas facil:
@echo off
call :alg en Registrate Www.HackBlack.neT
pause>nul
exit
:alg
echo.%2 %1 %3
Que mostraria "Registrate en Www.HackBlack.neT".
- Porque no mostraria "en Registrate Www.HackBlack.neT"?
- Facil. Cuando usamos los parametros no ponemos:
echo.%1 %2 %3
sino que ponemos:
%2 %1 %3
ordenando las palabras.

Tambien te preguntaras por que no puse goto:eof para salir de la etiqueta.. pues es solo para demostrar una curiosidad, que es que si cuando se acaba la etiqueta no hay mas codigo delante, no haría falta ponerlo. Por lo que si el code fuera asi no valdria:
@echo off
call :alg en Registrate Www.HackBlack.neT
pause>nul
exit
:alg
echo.%2 %1 %3
:nada
cls
echo.Esto se vera porque el code sigue despues de la etiqueta :alg
pause>nul
exit


Ahora os mostrare el programa de contraseña mezclando todo lo que vimos hasta aqui en el tutorial:
@echo off
set echo=set alg2
set alg=xassiz
set/p pass="Password: "
call :alg %alg%
if "%pass%"=="%alg2%" (echo.Bien) else (echo.Mal)
pause>nul
exit
:alg
%echo%=%1
%echo%=%alg2:a=4%
%echo%=%alg2:i=1%
La contraseña es x4ss1z, que si seguiste el tutorial supongo que sabrias ^^




6. Despedida

Despues de todo este rollo espero que aprendierais.. xD

O sino a leerlo otra vez! Para que os quede probad los codes y cread los vuestros =P

Espero que os gustara..


Saludos! Sonrisa


ATENCION: si vas a copiar este tutorial menciona autor (xassiz) y fuente (Www.HackBlack.neT), y no lo modifiques

XSendMails - by xassiz

XSendMails - by xassiz

Bueno, hoy os traigo esta aplicación que hice en VB6, con la cual pueden mandar correos.


Espero que os guste:


YouTube: tres años con Google, 1.000 millones de videos diario

YouTube celebra el tercer cumpleaños bajo el manto del gigante de Internet, incluyendo en su logotipo una reseña a los más de 1.000 millones de videos servidos de media diariamente. Además, el portal de videos es ya la segunda página web mundial por accesos, sólo superado por “papa” Google.

Se cumplen tres años tras la adquisición de YouTube - por la que Google desembolsó 1.650 millones de dólares- en medio del debate de si la cantidad pagada fue excesiva. Quizá sí, aunque el éxito del portal de videos es indudable y muestra de ello son los 1.000 millones de videos que se reproducen de media diaria en YouTube, con picos todavía más elevados en los últimos meses.

Chad Hurley, CEO y Co-fundador de la plataforma aprovechó el aniversario para subrayar que el aumento de uso del portal se debe a los avances de la banda ancha que han permitido conexiones más veloces y una reproducción en streaming sin interrupciones.

No obstante, Hurley explicó que a pesar de “seguir comprometidos con los mismos principios desde su creación, saben que las cosas han cambiado”, en referencia principalmente a la introducción de películas y series en YouTube.

Fuente: theinquirer.es

Bug en el comando set de batch

Descubierto por 0x0309:

Yo había leído en un sitio que para asignar con el comando set es lo mismo:

set "variable=valor"

que

(set variable=valor)

Sin embargo, he encontrado un bug de cmd.exe.

Cuando cmd.exe reconoce una sola comilla dentro de paréntesis termina el archivo por lotes.

Por eso si se hace:


(")
el archivo por lotes termina.

Por eso si tenemos el siguiene código:

test.cmd

@echo off
(set var=%1)
echo.El texto se muestra.

y ejecutamos:


test.cmd "
el texto no se muestra porque el archivo por lotes concluyó antes por el bug.

Pero si hacemos:

test.cmd

@echo off
set "var=%1"
echo.El texto se muestra.

el texto si es mostrado.

Entonces no es lo mismo:

(set variable=valor)
que contiene el bug.

que:

set "variable=valor"