Normas del foro

Curso Hacker
Bienvenido(a), Visitante. Favor de ingresar o registrarse.
¿Perdiste tu email de activación? - Diciembre 03, 2008, 07:26:35
Inicio Ayuda Ingresar Registrarse
Visita: Articulos - Juegos Gratis - Da Foros

Comunidad Underground Hispana  |  Programacion  |  Programación  |  Batch (Moderadores: Espectro Infernal, |Shadow|)  |  Tema: Taskkill + cacls + reg [Mata un proceso de una lista editada por ti y bloquealo] 0 Usuarios y 1 Visitante están viendo este tema. « anterior próximo »
Páginas: [1] Ir Abajo Imprimir
Autor Tema: Taskkill + cacls + reg [Mata un proceso de una lista editada por ti y bloquealo]  (Leído 326 veces)
FOXmx
Habitual
*****
Desconectado Desconectado

Mensajes: 153



Ver Perfil
« en: Julio 29, 2007, 01:11:06 »

juegos gratis
Lo que hace el programa es matar y bloquear los procesos que esten dentro de el archivo deny.txt, ya sea por listas de acceso"pestaña seguridad" o por registros

bueno esta es la version 1.1 del programa y es por listas de acceso.
Código:
tasklist>c:\matat\tlist.txt
for /f "tokens=1*" %%a in (c:\matat\deny.txt) do (
  for /f "tokens=1*" %%b in (c:\matat\tlist.txt) do (
    if "%%a"=="%%b" (
       msg * El programa %%b no esta permitido y sera bloqueado&taskkill /f /im %%b
       set a=%%b
       call :block
       )
    )
)
exit
:block
      cd \
      for /R %%c in (%a:~0,-4%.*) do if "%%~nxc"=="%a%" cacls %%~sc /e /d todos&goto ok
:ok
goto :eof

ahora por algun motivo los comandos de abajo no pueden localizar este archivo "msmsgs.exe", que es el messenger que viene por default en el windows xp, almenos eso me paso en dos computadoras con la misma version del windows.
Código:
for /R %%c in (msmsgs.*) do echo %%~sc>localizacion.txt
y este
Código:
dir msmsgs.exe /s


por eso cree la version 1.2 quien si pudo detener a "msmsgs.exe" haciendolo en el registro.
Código:
for /f "tokens=1" %%c in (c:\matat\ident.txt) do set b=%%c
reg add "hkcu\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer" /t REG_dword /V "DisallowRun" /d "1" /f
tasklist>tlist.txt
for /f "tokens=1*" %%a in (c:\matat\deny.txt) do (
  for /f "tokens=1*" %%b in (c:\matat\tlist.txt) do (
    if "%%a"=="%%b" (
       msg * El programa %%b no esta permitido y sera bloqueado&taskkill /f /im %%b
       set a=%%b
       call :block
       )
    )
)
exit
:block
reg add "hkcu\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\DisallowRun" /t REG_sz /V "%b%" /d "%a%" /f
set /a b=%b%+1
echo %b%           .>c:\matat\ident.txt
goto :eof


el archivo "deny.txt" contiene los procesos que quieres bloquear y debe tener el siguiente aspecto
Código:
msnmsgr.exe
msmsgs.exe
y si los usuarios son muy pro, o nosotros somos muy paranoicos solo fusiona las dos versiones para que bloquees por registro y por listas de acceso

Lo unico que faltaria seria hacer que lo haga cada minuto
Código:
REM -----aqui reactivo la tarea cada minuto y arreglo el error de 59 a 60 en los minutos y de 23 a 24 en las horas y un error con los numeros 08 y 09
set hm=%time:~3,2%
set hh=%time:~0,2%
(if %hm%==07 set hm=7)&(if %hm%==08 set hm=8)&(if %hm%==09 set hm=9)&(if %hh%==07 set hh=7)
(if %hh%==08 set hh=8)&(if %hh%==09 set hh=9)
set /a nm=%hm%+1
if NOT %nm%==60 goto cont
set /a nm=0
set /a hh=%hh%+1
if NOT %hh%==24 goto cont
set /a hh=0
:cont
AT %hh%:%nm% C:\mibat.bat rem aqui va la direccion exacta del archivo.



si quieres que inicie cuando inicie el sistema checa aqui

Necesitas ser usuario para ver los enlaces Crear Usuario  Hacer Sesion

y para que la lista se actualize solita checa aqui

Necesitas ser usuario para ver los enlaces Crear Usuario  Hacer Sesion

solo te faltaria quitar la pestaña seguridad, y que el mismo programa te mande un reporte de los procesos nuevos, y sus direcciones dentro del disco duro del host donde se estan ejecutando, a y bloquear el comando AT con cacls para el usuario especifico y que no puedan borrar nada del programador de tareas.
saludos...
En línea


Si lo que haces no funciona programa otra coza, piensa en nuevas ideas, no en las mismas.
Lo que hagas con un codigo es tu responsabilidad, estoy deacuerdo en joder el windows pero no en joder sus archivos personales.
y0u-uNSeCure
Moderación
Gran Colaborador
*****
Desconectado Desconectado

Mensajes: 3663


TerminalHacker.es


Ver Perfil Email
« Respuesta #1 en: Julio 30, 2007, 11:57:44 »

esta bien currao el codigo, aunk yo creo k seria mas facil un taskill con los programas k kieras y luego blokearlos con el registro y si kieres fastidiar agregas el bat al registro y k se autoinicie con windows no??....

aunk esta es otra manera de acerlo Wink

otra cosa, en este codigo if "%%a"=="%%b" (  por k no pones if "%%a"="%%b" ( si me pudieras explicar k diferencia ay de poner = o == t lo agradeceria


sALuDos__

En línea

[ + ]
Necesitas ser usuario para ver los enlaces Crear Usuario  Hacer Sesion
www.TerminalHacker.es
FOXmx
Habitual
*****
Desconectado Desconectado

Mensajes: 153



Ver Perfil
« Respuesta #2 en: Julio 30, 2007, 07:42:58 »

en el if se pone ==, pues si solo pones = el if no funciona, tambien puedes poner EQU

checa, el taskkill es para los programas que tu quieras, solo los metes en la lista, y los bloquea en el registro como tu lo mencionas, y puse los links donde puedes checar el como agregarlos para que inicien con la pc, y el codigo podria usarse para un ciber, no es necesariamente un codigo maligno  Tongue, ese seria otro uso..

este codigo no solo inicia con windows, si no que se ejecuta cada minuto sin que el usuario lo note...
checa las explicaciones tambien..
En línea


Si lo que haces no funciona programa otra coza, piensa en nuevas ideas, no en las mismas.
Lo que hagas con un codigo es tu responsabilidad, estoy deacuerdo en joder el windows pero no en joder sus archivos personales.
y0u-uNSeCure
Moderación
Gran Colaborador
*****
Desconectado Desconectado

Mensajes: 3663


TerminalHacker.es


Ver Perfil Email
« Respuesta #3 en: Julio 31, 2007, 03:29:28 »

Ok...

solo si tienes tiempo y puedes te agradeceria mazo k pudieras explicarme esta parte:


Código:
REM -----aqui reactivo la tarea cada minuto y arreglo el error de 59 a 60 en los minutos y de 23 a 24 en las horas y un error con los numeros 08 y 09
set hm=%time:~3,2%
set hh=%time:~0,2%
(if %hm%==07 set hm=7)&(if %hm%==08 set hm=8)&(if %hm%==09 set hm=9)&(if %hh%==07 set hh=7)
(if %hh%==08 set hh=8)&(if %hh%==09 set hh=9)
set /a nm=%hm%+1
if NOT %nm%==60 goto cont
set /a nm=0
set /a hh=%hh%+1
if NOT %hh%==24 goto cont
set /a hh=0
:cont
AT %hh%:%nm% C:\mibat.bat rem aqui va la direccion exacta del archivo.


algunas cosas las entiendo(pocas cosas Cheesy) y otras no, por ejemplo por en esta parte set hm=%time:~3,2% & set hh=%time:~0,2% pork pones ~3,2 y ~0,2....

y como seria para k iciera eso cada 5 segundos??(nose si estoy pidiendo algo imposibol)....


bueno seria eso asi explicarmelo asi un poko por encima o darme algun link donde lo expliken bien y poderle echar un vistazo Ok??...y gracias por adelantao Smiley


sALuDos__

« Última modificación: Julio 31, 2007, 09:18:32 por bUsIk49 » En línea

[ + ]
Necesitas ser usuario para ver los enlaces Crear Usuario  Hacer Sesion
www.TerminalHacker.es
FOXmx
Habitual
*****
Desconectado Desconectado

Mensajes: 153



Ver Perfil
« Respuesta #4 en: Julio 31, 2007, 09:40:34 »

un ejemplo
Código:
echo %time%
10:29:49.98
rem pero solo queremos los minutos y las horas
rem los minutos los sacariamos asi, el primer valor "~3" ese el valor es la poscicion en donde empieza a tomar el valor, el segundo valor "2" es la cantidad de caracteres que tomara
echo %time:~3,2%
rem las horas
echo %time:~0,2%


algunos para generar un retraso usan el comando ping, el 5 hace que sean casi 5 segundos, talvez hagan alguna otra modificacion al comando..
seria algo asi
Código:
ping localhost -n 5

saludos...
En línea


Si lo que haces no funciona programa otra coza, piensa en nuevas ideas, no en las mismas.
Lo que hagas con un codigo es tu responsabilidad, estoy deacuerdo en joder el windows pero no en joder sus archivos personales.
y0u-uNSeCure
Moderación
Gran Colaborador
*****
Desconectado Desconectado

Mensajes: 3663


TerminalHacker.es


Ver Perfil Email
« Respuesta #5 en: Julio 31, 2007, 09:52:57 »

Ok, me a costao piyarlo Grin pero ya lo razone Cheesy


sALuDos y gRaCiAs__



En línea

[ + ]
Necesitas ser usuario para ver los enlaces Crear Usuario  Hacer Sesion
www.TerminalHacker.es
Bbrother
Recien Llegado
*
Desconectado Desconectado

Mensajes: 1


Ver Perfil
« Respuesta #6 en: Julio 21, 2008, 12:11:11 »

Lamento entrar preguntando pero es que no tengo el nivel para pillarlo....
Como seria para hacer un IF EXIST con una tarea en concreto?
Algo del tipo... IF EXIST TAREA goto FIN


Edito.....
Creo que ya lo he resuelto... si es que soy mu malo

Código:
:Inicio
tasklist>c:\tlist.txt
for /f "tokens=1*" %%b in (c:\tlist.txt) do (
if "%%b"=="toro1.exe" (msg * El programa %%b no esta permitido y sera bloqueado&goto Fin)
    )

echo NO rula
goto Inicio

:Fin
echo si rula
« Última modificación: Julio 21, 2008, 12:35:25 por Bbrother » En línea
ECDundy
Habitual
*****
Desconectado Desconectado

Mensajes: 239


erick_cartman_ok
Ver Perfil WWW Email
« Respuesta #7 en: Julio 21, 2008, 07:35:27 »

En lugar de:
Citar
tasklist>c:\matat\tlist.txt
for /f "tokens=1*" %%a in (c:\matat\deny.txt) do (
  for /f "tokens=1*" %%b in (c:\matat\tlist.txt) do (
En donde el codigo cobra lentitud...
Se podria hacer de la siguiente manera:
Citar
for /f "tokens=1*" %%a in (c:\matat\deny.txt) do (
for /f %%b in ('tasklist') do (
Un ejemplo para el que no me entienda:
Citar
@echo off
for /f %%a in ('tasklist') do echo %%a
pause
saludos
En línea

Páginas: [1] Ir Arriba Imprimir 
Comunidad Underground Hispana  |  Programacion  |  Programación  |  Batch (Moderadores: Espectro Infernal, |Shadow|)  |  Tema: Taskkill + cacls + reg [Mata un proceso de una lista editada por ti y bloquealo] « anterior próximo »
Ir a:  


Ranking-Hits
Powered by SMF 1.1.7 | SMF © 2006-2007, Simple Machines LLC