Los ejuecutables (.exe , .msi) me salen como aplicaciones html (.hta)

Iniciado por **Aincrad**, 16 Noviembre 2017, 15:35 PM

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

**Aincrad**

hola, como dice el titulo no puedo abrir ni el administrador de tareas ya que ahora todos los .exe el windows los lee como .hta y los abre asi:



AQUI DEJO UNA FOTO DE CUANDO REINICIE LA PC:



no solo los .exe tambien los .bat.  :(

todo paso cuando copile un batch y lo abri :

el batch es este bueo no es del todo batch mas bien es una aplicacion html dentro de un batch:

Código (bash) [Seleccionar]
@goto :batch
<html><!--
:batch
@echo off
if /I "%1"=="{AddText}" goto :addtext
if /I "%1"=="{GetText}" goto :gettext
if /I "%1"=="{StripChars}" goto :StripChars
mode con: cols=31 lines=5
title [%~n0]
color 0a
echo.
echo.
echo.          loading ...
reg add HKCU\Software\Classes\%~x0 /d "htafile" /f >nul
start "" mshta.exe "%~dpnx0"
exit
:addtext
for /f "tokens=*" %%A in ('echo.%2') do set "filedir=%%~dpA" & set "filename=%%~nxA"
copy /y %2 "%filedir%\[WithMessage] %filename%" >nul
echo.>>"%filedir%\[WithMessage] %filename%"
echo.>>"%filedir%\[WithMessage] %filename%"
set "txt=%3"
set "txt=%txt:~1%"
set "txt=%txt:~0,-1%"
echo.:#%txt%>>"%filedir%\[WithMessage] %filename%"
echo.[WithMessage] %filename%
exit
:gettext
set /a "linenum=0+0"
for /f "tokens=*" %%A in ('echo.%2') do for /f "tokens=*" %%B in ('type "%%~dpnxA"') do set "msgline=%%B"
for /f "tokens=1,2 delims=#" %%A in ('echo.%msgline%') do (
if "%%A"==":" (
echo.%%B
) else (
echo.{nomsg}
)
)
exit
:StripChars
set "txt=%2"
set "txt=%txt:~1%"
echo."%txt:~0,-3%"
exit
-->
<head>
<title>Encrypt Messages Into Image-Files</title>
<HTA:APPLICATION ID="ThisApp"
APPLICATIONNAME="Encrypt Messages Into Image-Files"
scroll="no"
icon=""
showintaskbar="no"
sysmenu="yes"
caption="yes"
maximizebutton="no"
minamizebutton="no"
>
</head>
<script language="VBScript">
sub Window_OnLoad
Ext = split(split(ThisApp.commandline,chr(34))(1),".")(ubound(split(split(ThisApp.commandline,chr(34))(1),".")))
createobject("wscript.shell").run "reg add HKCU\Software\Classes\."&Ext&" /d "&chr(34)&Ext&"file"&chr(34)&" /f",0,true
window.resizeto 670,600
end sub
sub addtxt()
buildtxt = ""
for c = 1 to len(document.all.txtmessage.value)
buildtxt = buildtxt& chr(asc(mid(document.all.txtmessage.value,c,1))+4)
next
buildnewfileandgetname = CommandLine("@call "&chr(34)&split(ThisApp.commandline,chr(34))(1)&chr(34) _
&" {AddText} "&chr(34)&document.all.addmsgto.value&chr(34)&" "&chr(34)&buildtxt&chr(34))
msgbox "The JPG-File was copied and the message was injected into the copy. The copy is in the same folder."
end sub
sub readtxt()
rawtxt = CommandLine("@call "&chr(34)&split(ThisApp.commandline,chr(34))(1)&chr(34) _
&" {GetText} "&chr(34)&document.all.getmsgfrom.value&chr(34))
if NOT rawtxt = "{nomsg}" then
decryptmsg = ""
for c = 1 to len(rawtxt)
decryptmsg = decryptmsg& chr(asc(mid(rawtxt,c,1))-4)
next
decryptmsg = CommandLine("@call "&chr(34)&split(ThisApp.commandline,chr(34))(1)&chr(34) _
&" {StripChars} "&chr(34)&decryptmsg&chr(34))
else
decryptmsg = "no message in this file"
end if
msgbox "Hidden Message: "&decryptmsg,0,"Viewing Hidden Message"
end sub
function CommandLine(cmmd)
set clipboard = createobject("htmlfile")
cliptext = clipboard.ParentWindow.ClipboardData.GetData("text")
createobject("wscript.shell").run chr(34)&"%comspec%"&chr(34)&" /d /c "&cmmd&"|clip",0,true
CommandLine = clipboard.ParentWindow.ClipboardData.GetData("text")
if NOT isnull(cliptext) then clipboard.ParentWindow.ClipboardData.SetData "text",cliptext
end function
</script>
<body bgcolor=black style=border:0px;padding:0px;margin:0px;color:black;font-size:0;font-family:arial ><br/><font color=cyan size=2><center><br/>
<font size=4 face=terminal>
<a style=color:red;text-decoration:none target=_blank href=https://hackforums.net/member.php?action=profile&uid=3089494 >by <u>ImDeepWithWindows</u></a>
</font><br/><br/><hr noshade=noshade style=color:purple;border-color:purple;border-style:solid;padding:0px;margin:0px />
<div align=left>encrypt messages inside JPG image-files</div>
<hr noshade=noshade style=color:purple;border-color:purple;border-style:solid;padding:0px;margin:0px /><center><br/><br/>
<fieldset style=width:60%;border-style:solid;border-color:grey;margin:0px;padding:0px;border-width:4px>
<legend style=color:yellow;margin:0px;padding:0px;border-style:solid;border-color:grey;border-width:4px ><b>Hide Message In JPG File</b></legend>
<br/><br/><br/>Browse For JPG-File:
<input type=file value="Select Image File" name=addmsgto style=display:inline-block;border-color:purple;border-style:solid;background-color:black;color:yellow accept="jpg,image/jpg" />
<br/><br/>Message To Hide: <input type=text name=txtmessage style=border-color:grey;border-style:solid;background-color:black;color:yellow /><br/>
<br/><input type=submit value="Hide Message" style=color:#00ff00;background-color:black;border-color:purple;border-style:solid onclick=addtxt() />
<br/><br/><br/></fieldset><br/><br/><br/><fieldset style=width:60%;border-style:solid;border-color:grey;margin:0px;padding:0px;border-width:4px>
<legend style=color:yellow;margin:0px;padding:0px;border-style:solid;border-color:grey;border-width:4px ><b>Read Hidden Message From JPG File</b></legend>
<br/><br/><br/>Browse For JPG-File:
<input type=file value="Select Image File" name=getmsgfrom style=border-color:purple;border-style:solid;background-color:black;color:yellow accept="jpg" /><br/>
<br/><input type=submit value="Read Hidden Message" style=color:#00ff00;background-color:black;border-color:purple;border-style:solid onclick=readtxt() />
<br/><br/><br/></fieldset>




bueno sospecho que este batch me configuro mediante el registro de windows (regedit) para que todos los .exe y .bat se reconocieran como .hta

por que sospecho esto? sospecho esto por el siguiente codigo:

Código (vb) [Seleccionar]
sub Window_OnLoad
Ext = split(split(ThisApp.commandline,chr(34))(1),".")(ubound(split(split(ThisApp.commandline,chr(34))(1),".")))
createobject("wscript.shell").run "reg add HKCU\Software\Classes\."&Ext&" /d "&chr(34)&Ext&"file"&chr(34)&" /f",0,true
window.resizeto 670,600
end sub




en esa parte que es vbs el code toca el registro , mi sospecha es que hay se cofigura para que lea todos los .exe y .bat como si fueran .hta .

Código (actionscript-french) [Seleccionar]
reg add HKCU\Software\Classes\%~x0 /d "htafile" /f >nul

me parece que esa parte del code tambien es lo que me esta jodiendo.

PD: ME IMAGINO QUE LA SOLUCIÓN SERIA UN VBS QUE TAMBIEN EDITE EL REGISTRO VOLVIENDO LOS VALORES COMO ESTABAN ANTES.


GRACIAS DE ANTEMANO

MOD: Imagenes adaptadas a lo permitido.




MCKSys Argentina

Bueno, ahora sabes porqué se aconseja siempre trabjar con VM's...  :)

Intenta restaurar el sistema a un punto anterior.

Saludos!
MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."


**Aincrad**

descubri que la intentar abrir los programas .exe directamente no sirve pero al abrirlo indirectamente si abren.

por ejemplo abro el programa vlc player no me sirve, pero al abrir un video si abre el vls player.

entonces como el antivirus no me abre directamente , doy click derecho analizar con 360 segurity y si me abrio el antivirus lo puse a analizar la pc y me soluciono el problema que tenia con los .exe y .msi . los detecto como "ANOMALIAS DEL SISTEMA"

YA SOLUCIONE EL PROBLEMA CON LOS EJECUTABLES . PERO EN EL CASO DE LOS ARCHIVOS POR LOTES .BAT Y .CMD SIGUE IGUAL LOS DETECTA COMO SI FUERAN APLICACIONES HTML (.HTA)




Serapis

No es buena idea ejecutar un script (por curiosidad), sin saber qué hace, antes mira su código y aunque no lo comprendas (de un simple vistazo) en su totalidad, al menos alguna idea genérica si puedas tener y podrás decidir con mejor certeza si es o no recomendable evitar su ejecución.

Si tienes un win-xp, puedes editar el registro de la siguiente manera (si tienes otra versión más actual, conviene tomar copia de ese otro S.O. sin duda las claves para las dll, serán distintas y no funcionaría)

Para los bat, copia el siguiente contenido y pégalo en fichero, dale el nombre que quieras (por ejemplo: batfile), pero con extensión .reg, guarda el fichero y ejecútalo, te preguntará si deseas añadir el contenido al registro, le dices que sí y listo.

Citar
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.bat]
@="batfile"

[HKEY_CLASSES_ROOT\.bat\PersistentHandler]
@="{5e941d80-bf96-11cd-b579-08002b30bfeb}"


[HKEY_CLASSES_ROOT\batfile]
@="MS-DOS Batch File"
"EditFlags"=hex:30,04,00,00

[HKEY_CLASSES_ROOT\batfile\DefaultIcon]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
 00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,73,00,68,00,\
 65,00,6c,00,6c,00,33,00,32,00,2e,00,64,00,6c,00,6c,00,2c,00,2d,00,31,00,35,\
 00,33,00,00,00

[HKEY_CLASSES_ROOT\batfile\shell]

[HKEY_CLASSES_ROOT\batfile\shell\edit]

[HKEY_CLASSES_ROOT\batfile\shell\edit\command]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
 00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,4e,00,4f,00,\
 54,00,45,00,50,00,41,00,44,00,2e,00,45,00,58,00,45,00,20,00,25,00,31,00,00,\
 00

[HKEY_CLASSES_ROOT\batfile\shell\open]
"EditFlags"=hex:00,00,00,00

[HKEY_CLASSES_ROOT\batfile\shell\open\command]
@="\"%1\" %*"

[HKEY_CLASSES_ROOT\batfile\shell\print]

[HKEY_CLASSES_ROOT\batfile\shell\print\command]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
 00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,4e,00,4f,00,\
 54,00,45,00,50,00,41,00,44,00,2e,00,45,00,58,00,45,00,20,00,2f,00,70,00,20,\
 00,25,00,31,00,00,00

[HKEY_CLASSES_ROOT\batfile\shellex]

[HKEY_CLASSES_ROOT\batfile\shellex\DropHandler]
@="{86C86720-42A0-1069-A2E8-08002B30309D}"

[HKEY_CLASSES_ROOT\batfile\shellex\PropertySheetHandlers]

[HKEY_CLASSES_ROOT\batfile\shellex\PropertySheetHandlers\PifProps]
@="{86F19A00-42A0-1069-A2E9-08002B30309D}"

[HKEY_CLASSES_ROOT\batfile\shellex\PropertySheetHandlers\ShimLayer Property Page]
@="{513D916F-2A8E-4F51-AEAB-0CBC76FB1AF8}"


Los valores hexadecimales, son cadenas de texto, por ejemplo:
el hexadeciaml bajo esta clave:
[HKEY_CLASSES_ROOT\batfile\shell\print\command]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
 00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,4e,00,4f,00,\
 54,00,45,00,50,00,41,00,44,00,2e,00,45,00,58,00,45,00,20,00,2f,00,70,00,20,\
 00,25,00,31,00,00,00
Equivale a este texto:
%SystemRoot%\System32\NOTEPAD.EXE /p %1

Lo mismo para el cmd (guárdalo a otro fichero, por ejemplo cmdfile.reg), esta es la info de registro:
Citar
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.cmd]
@="cmdfile"

[HKEY_CLASSES_ROOT\.cmd\PersistentHandler]
@="{5e941d80-bf96-11cd-b579-08002b30bfeb}"


[HKEY_CLASSES_ROOT\cmdfile]
@="Windows NT Command Script"
"EditFlags"=hex:30,04,00,00

[HKEY_CLASSES_ROOT\cmdfile\DefaultIcon]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
 00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,73,00,68,00,\
 65,00,6c,00,6c,00,33,00,32,00,2e,00,64,00,6c,00,6c,00,2c,00,2d,00,31,00,35,\
 00,33,00,00,00

[HKEY_CLASSES_ROOT\cmdfile\shell]

[HKEY_CLASSES_ROOT\cmdfile\shell\edit]

[HKEY_CLASSES_ROOT\cmdfile\shell\edit\command]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
 00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,4e,00,4f,00,\
 54,00,45,00,50,00,41,00,44,00,2e,00,45,00,58,00,45,00,20,00,25,00,31,00,00,\
 00

[HKEY_CLASSES_ROOT\cmdfile\shell\open]
"EditFlags"=hex:00,00,00,00

[HKEY_CLASSES_ROOT\cmdfile\shell\open\command]
@="\"%1\" %*"

[HKEY_CLASSES_ROOT\cmdfile\shell\print]

[HKEY_CLASSES_ROOT\cmdfile\shell\print\command]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
 00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,4e,00,4f,00,\
 54,00,45,00,50,00,41,00,44,00,2e,00,45,00,58,00,45,00,20,00,2f,00,70,00,20,\
 00,25,00,31,00,00,00

[HKEY_CLASSES_ROOT\cmdfile\shellex]

[HKEY_CLASSES_ROOT\cmdfile\shellex\DropHandler]
@="{86C86720-42A0-1069-A2E8-08002B30309D}"

[HKEY_CLASSES_ROOT\cmdfile\shellex\PropertySheetHandlers]

[HKEY_CLASSES_ROOT\cmdfile\shellex\PropertySheetHandlers\PifProps]
@="{86F19A00-42A0-1069-A2E9-08002B30309D}"

[HKEY_CLASSES_ROOT\cmdfile\shellex\PropertySheetHandlers\ShimLayer Property Page]
@="{513D916F-2A8E-4F51-AEAB-0CBC76FB1AF8}"

...y para la próxima si vas a cambiar el registro, antes accede al mismo y 'exporta' el contenido completo de las claves que vayas a modificar, así podrás restaurar desde la copia si algo falló y no salió como esperabas...

**Aincrad**

#4
Gracias por la respuesta @NEBIRE .

Ya lo había solucionado, solamente hice esto:


inicio + r  ,  escribí  regedit y presione enter y me fui a HKEY_CURRENT_USER\Software\Classes\.bat   y hay edite el valor que estaba en htafile lo cambie a BAT_auto_file  y listo ya solucione el problema con los .bat .

PD: no creo que esa fuera la manera de hacerlo correctamente pero lo hice , y funciono.

PD2: Con esto que me paso tengo una buena idea para hacer un virus . jejejejeje. ;D