elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Como proteger una cartera - billetera de Bitcoin


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  como eliminar los pif o exe (Virus) Code para Mejorar "Solo Experto en Batch"
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: como eliminar los pif o exe (Virus) Code para Mejorar "Solo Experto en Batch"  (Leído 3,619 veces)
raftv79

Desconectado Desconectado

Mensajes: 17


Ver Perfil
como eliminar los pif o exe (Virus) Code para Mejorar "Solo Experto en Batch"
« en: 18 Abril 2015, 05:22 am »

Aquí traigo otro code, es muy interesante, esto lo hize con la ayuda del foro de esta pagina, podría decir que es una ensalada de código de muchos moderadores y le he sacado el jugo  a este programita, lo comparto con ustedes porque necesito mejorarlo y convertirlo en exe con icono, ya probe mucho convert pero me da error, pruebenlo ustedes, y veras que funciona, pero quiero respuesta, mejorar el code y convertirlo en exe sin error de windows.

si logramos resolver este tema, lanzo otro programa mas interesante.

Código
  1. echo off
  2. title Programa By Rafael Chourio
  3. :inicio
  4. Copy %0 %homedrive%\Users\%username%\AppData\Roaming\Microsoft\Windows\SendTo\
  5.  
  6. cls
  7. del /q Cazador.txt>nul
  8. cls
  9. DEL /Q encontrado.txt
  10. del /q 1.txt
  11. del /q Procesos.txt
  12. DEL /Q "Eliminado.txt", "size.txt", "1.txt" , "Ext.txt" , "Dir.txt"
  13. cls
  14. mode con cols=55
  15. mode con lines=10
  16. color 1F
  17.  
  18. :n
  19. cls
  20. @echo off
  21. echo         Programador Tecnico Computarizado
  22. echo                        BY
  23. echo                *****Rafael Ch*****
  24. echo %1>>1.txt
  25. cls
  26. Echo. Presione Enter para Borrar Virus y Crear Carpeta.
  27. Set /p PTH=%1
  28. attrib -h -s -r -a -i %1
  29. cls
  30. set /p a= <1.txt
  31. cls
  32. cls
  33.  
  34. for %%i in (e f g h i j k l m n o p q r s t u v w x y z) do (
  35.   dir /b %%i:\ > nul 2>&1 && (
  36.  
  37. echo Unidades Presente: %%i:\
  38. dir /b /a:h %%i:\
  39. CLS
  40. attrib -h -S -R -A %%i:\*.pif
  41. attrib -h -S -R -A %%i:\*.exe
  42. attrib -h -S -R -A %%i:\autorun.inf
  43. ))
  44.  
  45.  
  46. :a1
  47. attrib -h -s -r -a -i %a%
  48. CLS
  49. Echo.                                         | MORE
  50. echo         Programador Tecnico Computarizado
  51. echo                        BY
  52. echo                *****Rafael Ch*****       |MORE |MORE
  53. set /A "contador=0"
  54. for /f "tokens=*" %%d in ('dir /b /s %a% 2^>^&1^|FIND /I "."') do (echo %%~xd>Ext.txt | MORE & echo %%~zd>size.txt)
  55. echo Enter para Eliminar EJECUTABLE por Tamaño en todo el sistema.
  56. pause>nul
  57. cls
  58. for /F "tokens=*" %%s in (size.txt) do (
  59. echo %%s
  60. for /F "tokens=*" %%p in (Ext.txt) do (
  61. echo %%p
  62. cls
  63. echo Espere Por Favor......
  64. echo Extension: "%%p"
  65. echo Tamaño:    "%%s"
  66. set /a contador=0
  67. for /r o:\ %%i in (*%%p) do If %%~zi EQU %%s del /f /q /s /a "%%i" && md "%%i" | attrib +h +s +r +a +i "%%i"
  68. for /r n:\ %%i in (*%%p) do If %%~zi EQU %%s del /f /q /s /a "%%i" && md "%%i" | attrib +h +s +r +a +i "%%i"
  69. for /r m:\ %%i in (*%%p) do If %%~zi EQU %%s del /f /q /s /a "%%i" && md "%%i" | attrib +h +s +r +a +i "%%i"
  70. for /r l:\ %%i in (*%%p) do If %%~zi EQU %%s del /f /q /s /a "%%i" && md "%%i" | attrib +h +s +r +a +i "%%i"
  71. for /r k:\ %%i in (*%%p) do If %%~zi EQU %%s del /f /q /s /a "%%i" && md "%%i" | attrib +h +s +r +a +i "%%i"
  72. for /r j:\ %%i in (*%%p) do If %%~zi EQU %%s del /f /q /s /a "%%i" && md "%%i" | attrib +h +s +r +a +i "%%i"
  73. for /r i:\ %%i in (*%%p) do If %%~zi EQU %%s del /f /q /s /a "%%i" && md "%%i" | attrib +h +s +r +a +i "%%i"
  74. for /r h:\ %%i in (*%%p) do If %%~zi EQU %%s del /f /q /s /a "%%i" && md "%%i" | attrib +h +s +r +a +i "%%i"
  75. for /r g:\ %%i in (*%%p) do If %%~zi EQU %%s del /f /q /s /a "%%i" && md "%%i" | attrib +h +s +r +a +i "%%i"
  76. for /r f:\ %%i in (*%%p) do If %%~zi EQU %%s del /f /q /s /a "%%i" && md "%%i" | attrib +h +s +r +a +i "%%i"
  77. for /r e:\ %%i in (*%%p) do If %%~zi EQU %%s del /f /q /s /a "%%i" && md "%%i" | attrib +h +s +r +a +i "%%i"
  78. for /r d:\ %%i in (*%%p) do If %%~zi EQU %%s del /f /q /s /a "%%i" && md "%%i" | attrib +h +s +r +a +i "%%i"
  79. for /r c:\ %%i in (*%%p) do If %%~zi EQU %%s del /f /q /s /a "%%i" && md "%%i" | attrib +h +s +r +a +i "%%i"
  80. )
  81. )
  82. cls
  83. echo Enter para Continuar | MORE
  84. pause>nul
  85. DEL /Q "Eliminado.txt", "size.txt", "1.txt" , "Ext.txt"
  86.  



Mod: los códigos deben ir en etiquetas GeSHi


« Última modificación: 18 Abril 2015, 05:53 am por raftv79 » En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.809



Ver Perfil
Re: como eliminar los pif o exe (Virus) Code para Mejorar "Solo Experto en Batch"
« Respuesta #1 en: 18 Abril 2015, 08:54 am »

Batch no es un lenguaje compilado así que para "convertir" a executable necesitas un packer, y para establecer o modificar el icono principal puedes utilizar cualquier editor de recursos cómo Resource Hacker (en caso de que el packer no tenga esta característica, claro está).

No es necesario ser experto en el lenguaje, basta con saber un poco de empaquetamiento de aplicaciones (application packaging) y administración de tablas de recursos, aunque si te quedas más tranquilo te puedo decir que tengo Batch muy exprimido desde hace una década o más.

Te recomiendo utilizar la aplicación ExeScript Editor
http://www.scriptcode.com/download/

Si te lanza algún fallo, especifica el mensaje de error y la información adicional (si alguna), recuerda que no somos magos.

Saludos!


« Última modificación: 18 Abril 2015, 08:59 am por Eleкtro » En línea

raftv79

Desconectado Desconectado

Mensajes: 17


Ver Perfil
Re: como eliminar los pif o exe (Virus) Code para Mejorar "Solo Experto en Batch"
« Respuesta #2 en: 18 Abril 2015, 14:56 pm »

Elektro, Gracias por la Asesoría, a veces parece tontas, pero son importante saberla, ya me pongo con eso, después de hacerle prueba yo te aviso.

con respecto al code; como lo ves tu; que le hace falta o tienes un as bajo la manga, tienes Batch mejor que este?.

otra cosa mas Elektro, yo tuve un programa hace tiempo y lo perdí, ahora no recuerdo como se llama ni lo consigo, es que yo podría saber que programa estaba utilizando dicho archivo, me mostraba hasta la librería que estaba en ejecución para el dicho archivo.

si no es mucho que pedir..... esas son mis inquietudes....... 
En línea

raftv79

Desconectado Desconectado

Mensajes: 17


Ver Perfil
Re: como eliminar los pif o exe (Virus) Code para Mejorar "Solo Experto en Batch"
« Respuesta #3 en: 19 Abril 2015, 21:33 pm »

De verdad nadie, ningún visitante va aportar de sus conocimientos en este tema?....

En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.809



Ver Perfil
Re: como eliminar los pif o exe (Virus) Code para Mejorar "Solo Experto en Batch"
« Respuesta #4 en: 21 Abril 2015, 21:25 pm »

con respecto al code; como lo ves tu

Genericamente hablando y siendo un Batch-Script, el código lo veo de la única manera que lo puedo ver, es decir, simplón, feo, tedioso e ineficiente, pero el empeño que le hayas puesto para desarrollar el código tiene un valor distinto (mayor que el propio código en si mismo).



que le hace falta

1. Organización del código fuente.
El código que has publicado carece de cualquier tipo de estructura, ni organización ni indentación, para ser sincero es horrible analizar el código ya que lo tienes todo muy lineal y "arreu" ...aunque de todas formas las limitaciones de este "lenguaje" apenas dan libertad para estructurar el código debídamente, pero podrías haberlo hecho mucho mejor.

Se que es poco código, pero personálmente soy bastante estricto en ese sentido, no t elo tomes a mal, aparte, tener 3 o 4 bloques de código con nombres tipo "a1", "n", "n1", y que repitan código... también es horrible verlo, y eso sucede por que con Batch no se aprende nada que sea reálmente útil, nada.

Por ejemplo, esto lo repites en dos bloques:
Citar
Código:
:n
cls
@echo off
Echo.
Echo.
echo         Programador Tecnico Computarizado
echo                        BY
echo                *****Rafael Ch*****
Echo.
Echo.
Echo.
echo %1>>1.txt

En lugar de eso, escribe un método rehusable cómo este:

Código:
:WriteHeader :: %1 = Descripción del argumento %1; %2 = Archivo de destino
(
CLS
Echo+
Echo+
Echo:        Programador Tecnico Computarizado
Echo:                       BY
Echo:               *****Rafael Ch*****
Echo+
Echo+
Echo+
Echo "%~1"
)>>"%~2"
Goto :EOF

Y entonces lo usas:
Código:
:n
Call :WriteHeader "%~1" "Archivo.txt"
...

2. Limpieza de código en deshuso.

La variable "PTH" no la utilizas en ninguna parte del código, además de eso repites el código en otros bloques:
Citar
Código:
Set /p PTH=%1

y además lo estás seteando incorréctamente ya que la variable de argumento %1 contiene comillas dobles, así que en todo caso deberías hacerlo así para poder usar luego dicha variable de forma correcta:
Código:
Set /P "PTH=%~1"

Nota: No me he fijado si en el resto del código hay otros comandos en deshuso.

3. Cierre de argumentos.
Cómo norma general los argumentos se delimitan al encontrar un espacio, y hay que encerrarlos con comillas dobles,
por ende, esto no te funcionará en ningún PC cuyo nombre de usuario contenga espacios:
Citar
Código:
Copy %0 %homedrive%\Users\%username%\AppData\Roaming\Microsoft\Windows\SendTo\

Además de eso, también deberías expandir la variable de argumento para eliminarle las comillas dobles y añasírselas tú:
Código:
"%~0"

4. Depurar el código, y utilizar los operadores correctos (de agrupación y redireccionamiento)

Esto es otra de las cosas más horribles que se pueden hacer en Batch, la siguiente linea de código tiene muchos fallos en uno,
la concatenación single-line de tantos comandos y la confusión que eso crea al leerlo,
la ausencia de los operadores de agrupación ( ) crea conflictos y posibles errores de sintaxis al determinar donde se delimita la concatenación de comandos,
utilizar la pipe de redireccionamiento cuando seguramente no es tu intención (ya que el comando attrib no tiene una entrada de datos),
evaluar un string sin encerrarlo con comillas (si uno de los dos strings estuviese vacio o con espacios en el nombre daría error de sintaxis):

Citar
Código:
for /r X:\ %%i in (*%%p) do If %%~zi EQU %%s del /f /q /s /a "%%i" && md "%%i" | attrib +h +s +r +a +i "%%i"

Puedes hacerlo así:
Código:
For /R "X:\" %%i in ("*%%p") Do (
If "%%~zi" EQU "%%s" (
Del /f /q /s /a "%%i" &&^
Md "%%i" ||^
Attrib +h +s +r +a +i "%%i"
)
)

O bien en una sola linea:
Código:
For /R "o:\" %%i in ("*%%p") Do ( If "%%~zi" EQU "%%s" ( (del /f /q /s /a "%%i" && md "%%i" || attrib +h +s +r +a +i "%%i") ) )

5. Simplificación de código.

Debes tratar de evitar hacer cosas cómo esta repetición de código:

Citar
Código:
for /r o:\ %%i in (*%%p) do If %%~zi EQU %%s del /f /q /s /a "%%i" && md "%%i" | attrib +h +s +r +a +i "%%i"
for /r n:\ %%i in (*%%p) do If %%~zi EQU %%s del /f /q /s /a "%%i" && md "%%i" | attrib +h +s +r +a +i "%%i"
for /r m:\ %%i in (*%%p) do If %%~zi EQU %%s del /f /q /s /a "%%i" && md "%%i" | attrib +h +s +r +a +i "%%i"
for /r l:\ %%i in (*%%p) do If %%~zi EQU %%s del /f /q /s /a "%%i" && md "%%i" | attrib +h +s +r +a +i "%%i"
for /r k:\ %%i in (*%%p) do If %%~zi EQU %%s del /f /q /s /a "%%i" && md "%%i" | attrib +h +s +r +a +i "%%i"
for /r j:\ %%i in (*%%p) do If %%~zi EQU %%s del /f /q /s /a "%%i" && md "%%i" | attrib +h +s +r +a +i "%%i"
for /r i:\ %%i in (*%%p) do If %%~zi EQU %%s del /f /q /s /a "%%i" && md "%%i" | attrib +h +s +r +a +i "%%i"
for /r h:\ %%i in (*%%p) do If %%~zi EQU %%s del /f /q /s /a "%%i" && md "%%i" | attrib +h +s +r +a +i "%%i"
for /r g:\ %%i in (*%%p) do If %%~zi EQU %%s del /f /q /s /a "%%i" && md "%%i" | attrib +h +s +r +a +i "%%i"
for /r f:\ %%i in (*%%p) do If %%~zi EQU %%s del /f /q /s /a "%%i" && md "%%i" | attrib +h +s +r +a +i "%%i"
for /r e:\ %%i in (*%%p) do If %%~zi EQU %%s del /f /q /s /a "%%i" && md "%%i" | attrib +h +s +r +a +i "%%i"
for /r d:\ %%i in (*%%p) do If %%~zi EQU %%s del /f /q /s /a "%%i" && md "%%i" | attrib +h +s +r +a +i "%%i"
for /r c:\ %%i in (*%%p) do If %%~zi EQU %%s del /f /q /s /a "%%i" && md "%%i" | attrib +h +s +r +a +i "%%i"

Sírvete de la utilidad de FOR para algo más util, cómo esto:
Código:
Set "DriveLetters=C D E F G H I J K L M N O"

For %%# in (%DriveLetters%) Do (
For /R "%%#:\" %%i in ("*%%p") Do (...)
)

Nota: Aunque realmente lo que deberías hacer para aumentar la eficiencia es obtener e iterar una lista de unidades de disco duro conectadas al PC, con el comando FSUTIL o WMIC:
http://foro.elhacker.net/scripting/sobre_archivos_bat-t402932.0.html;msg1899628#msg1899628



Puede que haya otras cosas más a destacar en el código cómo por ejemplo la funcionalidad principal del código... no es la más correcta, pero sinceramente no me apetece analizar más de lo necesario un código escrito en Batch y menos de una "vacuna", batch no sirve para eso y creo que con lo dicho es suficiente para que puedas mejorar algunos aspectos fundamentales tanto en el uso de batch-script como en la programación general.

Mi último consejo es que lleves a cabo tus proyectos de programación en cualquier otro lenguaje compilado o de scripting que esté capacitado para la tarea, menos Batch.

Espero que el pequeño análisis haya servido de algo.

Saludos!
« Última modificación: 21 Abril 2015, 23:00 pm por Eleкtro » En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.809



Ver Perfil
Re: como eliminar los pif o exe (Virus) Code para Mejorar "Solo Experto en Batch"
« Respuesta #5 en: 21 Abril 2015, 21:26 pm »

yo tuve un programa hace tiempo y lo perdí, ahora no recuerdo como se llama ni lo consigo, es que yo podría saber que programa estaba utilizando dicho archivo, me mostraba hasta la librería que estaba en ejecución para el dicho archivo.

¿A que archivo te refieres?, por "archivo" entiendo que te refieres a un archivo ejecutable (puesto que hablas de cargar librerías/módulos).

Si lo que quieres es averiguar las dependencias de una aplicación de forma genérica puedes utilizar la herramienta Dependency Walker .

Saludos
« Última modificación: 21 Abril 2015, 23:04 pm por Eleкtro » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines