error al ejecutar el .exe

Tus preguntas. Algoritmos o Grupos de Comandos formando Programas Escripts.
Responder
jonuba
Mensajes: 14
Registrado: 01 Oct 2011, 05:24

error al ejecutar el .exe

Mensaje por jonuba »

Hola
hace bastante tiempo pare de usar autoit y hoy volvi a usarlo y me encuentro con el problema
Autoit Error Unable to open the script file.

lo unico que tiene el archivo que compilo es
MsgBox(4096, "Prueba", "Esta caja desaparecerá en 10 segundos", 10)

si no compilo el archivo fuciona prefectamente pero si compilo y intento ejecutar me aparece el error
desactive ativirus y cortafuego de windows sigue sin funcionar

se me olbida algo o que pasa?
Avatar de Usuario
arkcrew
Profesional del Autoit
Mensajes: 506
Registrado: 28 Sep 2009, 19:17
Ubicación: Granada, España
Contactar:

Re: error al ejecutar el .exe

Mensaje por arkcrew »

Me da a mi que está tirándote algún error raro al compilar, prueba a compilar desde la herramienta que trae externa, suele poner "Compile Script to" o similares, y debes tenerla en el folder de programas referente a autoit o en "C:\Program Files (x86)\AutoIt3\Aut2Exe" o tu ruta de instalación.

Prueba a compilar asi a ver si te funciona, en caso afirmativo, será algún error en el compilador.. de ser así, instala el Scite en su ultima versión y reinstala autoit (todo esto con privilegios de administrador)

Saludos!
jonuba
Mensajes: 14
Registrado: 01 Oct 2011, 05:24

Re: error al ejecutar el .exe

Mensaje por jonuba »

no fuciona sigue dando el mismo error
jonuba
Mensajes: 14
Registrado: 01 Oct 2011, 05:24

Re: error al ejecutar el .exe

Mensaje por jonuba »

Bueno despues de mucho probar encontre posiblemente el problema y el problema esta en los antivirus aunque estaban desactivados supongo que como ya lo habian detectado no dejaban ejecutar el archivo.
ahora bien como comparto mis ejecutables con otras personas si solo con escribir una linea de codigo en autoit se bloquea todo

MsgBox(4096, "Prueba", "Esta caja desaparecerá en 10 segundos", 10)

esta linea y avira free significan Virus

supongo que a alguien mas le pasara
Avatar de Usuario
Dany
Profesional del Autoit
Mensajes: 651
Registrado: 28 Mar 2012, 22:49

Re: error al ejecutar el .exe

Mensaje por Dany »

al finalizar tu aplicación puedes notificarla a la empresa de antivirus que la detecta y decir que es un falso positivo.

esto sucedo mucho porque Autoit es muy usado para crear malwares.


saludos
  • ............................................Imagen
    ......................................Imagen
Jonny
Profesional del Autoit
Mensajes: 1042
Registrado: 30 Jun 2008, 20:08

Re: error al ejecutar el .exe

Mensaje por Jonny »

No sé si AutoIt será muy usado para crear malware. Pero no lo creo, porque el problema es, que AutoIt, es detectado muchas veces como falso positivo, por su diseño interno.

El problema está en qué, autoIt no es realmente compilado, sino semicompilado, y en el .exe que se genera al "compilar" un script, se incluye también el intérprete de AutoIt.

Al ejecutar el .exe, lo que ocurre es que se ejecuta en memoria el intérprete y éste analiza el código del programa para trabajar, como si se estuviera ejecutando el script, sin compilar.

Esto, para los antivirus, es una técnica de malware (ejecutar programas en memoria, desde un .exe). Por eso, no saben distinguir si un ejecutable hecho con AutoIt es malware, o no.

Lo curioso es, que con programas compilados en Python por ejemplo, esto no ocurre, siendo que el "compilado" de Python es más o menos parecido, aunque el código fuente se protege menos; o al menos, se protegía menos.

Yo creo, que no sería tan difícil hacer que los antivirus no detecten los .exe hechos con AutoIt como código malicioso.

Podrían los desarrolladores de AutoIt, llegar a un acuerdo con los desarrolladores de al menos, los principales antivirus por ejemplo, de forma que los ejecutables creados con AutoIt, tuvieran una especie de firma digital que únicamente conocieran los desarrolladores de autoIt y de los antivirus (encriptada, por supuesto) Para, que los antivirus pudieran saber que se trata de un programa hecho en AutoIt.

Quien dice una "firma digital", dice: Una cabecera de archivo, ETC.
En definitiva, algún mecanismo, para que los antivirus supieran que el ejecutable está hecho con AutoIt.

Pero no haría falta, pues creo que el intérprete de AutoIt está firmado por sus desarrolladores.
Pues bien, bastaría con: Cuando se detecte que un .exe quiere ejecutar un programa en memoria, comprobar si está firmado. Si lo está, comprobar la firma; Que, si es de los desarrolladores de AutoIt, significa que es el intérprete de e´ste.
Si se trata del intérprete de AutoIt, se permite la ejecución. Si no, se procede con el método de protección que tenga preestablecido el antivirus, para estos casos.

Todo esto estaría más que bien. Porque, si hay que andar notificando a cada desarrollador de antivirus, que has hecho un programa, y que no es malware... Y cada vez que lo actualizas hay que volver a hacerlo...

Salu2!
Avatar de Usuario
arkcrew
Profesional del Autoit
Mensajes: 506
Registrado: 28 Sep 2009, 19:17
Ubicación: Granada, España
Contactar:

Re: error al ejecutar el .exe

Mensaje por arkcrew »

Buenas,

A ver, la culpa de que autoit salte como falso positivo no es cosa de firmas internas, la culpa es del compilador, si seleccionais que use el UPX para comprimir, generalmente eso va a hacer que os salten los antivirus ya que es el mismo empaquetador que se usa en casi todos los troyanos.

Sabiendo eso, sólo tenéis que empaquetarlo con cualquier otro y olvidaros del problema.

Saludos!
Avatar de Usuario
Dany
Profesional del Autoit
Mensajes: 651
Registrado: 28 Mar 2012, 22:49

Re: error al ejecutar el .exe

Mensaje por Dany »

@arkcrew No es culpa del UPX.

Compila un script que contenga innetread & ShellExecute si usar el UPX y veras unos resultados mas o menos como estos

https://www.virustotal.com/es/file/2168 ... 1381672152

aunque dejar indetectable los ejecutables no es tan difícil.

@Jonny lo que dices es muy ineficiente ya que enotnces harian muchos malwares en autoit y no serian detectados.

saludos
  • ............................................Imagen
    ......................................Imagen
Jonny
Profesional del Autoit
Mensajes: 1042
Registrado: 30 Jun 2008, 20:08

Re: error al ejecutar el .exe

Mensaje por Jonny »

Efectivamente. Yo no dije que la culpa fuera de firmas internas, las propuse como solución, para evitar los falsos positivos.

Más que UPX, el problema está en empaquetar un script, en un .exe, por lo del intérprete.

Hombre, lo ineficiente sería un antivirus, que únicamente se basara en si un programa ejecuta otro en memoria, para determinar que es malware.

Yo sólo hice referencia a lo que tiene que ver con el mecanismo de ejecución que usa AutoIt, pero por supuesto, los antivirus, una vez comprobado si se trata de un ejecutable de AutoIt o no, independientemente de que lo sea, deberían comprobar muchas otras cosas, para determinar que se trata de malware. Así (que es como debería funcionar un antivirus) aunque el programa esté hecho en AutoIt, si es malware, puede saltar el antivirus. Pero, si no lo es, se puede permitir la ejecución, sin crear tantos falsos positivos.

En definitiva, es el pez que se muerde la cola: Si un antivirus comprueba si un programa crea ganchos de teclado, ratón, eventos de sistema (por ejemplo)... y salta, puede tratarse también de un falso positivo... Pero esto creo, que es un problema que prácticamente no tiene solución, salvo que los que se dedican a hacerlos, dejen de hacer programas maliciosos...

Salu2!
Avatar de Usuario
Dany
Profesional del Autoit
Mensajes: 651
Registrado: 28 Mar 2012, 22:49

Re: error al ejecutar el .exe

Mensaje por Dany »

claro por lo mismo aun se utiliza la técnica mas vieja que es deteccion por firma de rutinas. aunque ahora han implementado muchas cosas nuevo por ejemplo los emuladores.

saludos :smt027
  • ............................................Imagen
    ......................................Imagen
jonuba
Mensajes: 14
Registrado: 01 Oct 2011, 05:24

Re: error al ejecutar el .exe

Mensaje por jonuba »

hola
ya no entiendo nada al final hice esto con el antivirus puesto
MsgBox (1,"hola", "hola mundo")
luego me voy a compilar con el compilador de autoit en source pongo holamundo.au3 y en destination pongo holamundo.exe luego ejecuto holamundo.exe y me aparece el error de antes Autoit Error Unable to open the script file.

en cambio si hago los mismos pasos pero con el unico cambio de poner en destination holamundo.exe pongo holamundo sin la extencion y luego renombro el archivo pero solo poniendo la extencion resulta que funciona
esto me funciono con la UPX activado y sin
Responder