¿Por qué se dice que ActiveX es inseguro?

5

No tengo experiencia con el desarrollo web, pero he leído que ActiveX debería abandonarse porque es inseguro, a favor de otros métodos de scripting como JavaScript.

¿Qué hace exactamente ActiveX, por qué se considera inseguro y en qué se diferencia de JavaScript y VBScript?

Preferiría una explicación simple que no incluya demasiados detalles técnicos (si es posible).

    
pregunta user13267 10.12.2013 - 22:01
fuente

2 respuestas

6

ActiveX es una superficie de ataque explotable remotamente expuesta por el navegador. Los componentes ActiveX son clases expuestas a JavaScript. Por su naturaleza, un componente ActiveX está realizando una funcionalidad sensible que normalmente no está expuesta a JavaScript, y esta funcionalidad podría ser explotada. Los componentes ActiveX pueden escribirse en C / C ++, lo que significa que los componentes ActiveX pueden sufrir un desbordamiento del búfer u otras vulnerabilidades de corrupción de memoria. Se han escrito muchos exploits para aprovechar las vulnerabilidades de los componentes ActiveX, especialmente los componentes ActiveX escritos por Microsoft y habilitados de forma predeterminada.

La explotación de un componente ActiveX a menudo conduce a la ejecución remota de código en el sistema de destino.

    
respondido por el rook 11.12.2013 - 00:26
fuente
2

Una serie de aplicaciones de escritorio históricamente han hecho objetos de secuencias de comandos, a menudo los desarrolladores no consideran las implicaciones de seguridad de que un sitio web aleatorio pueda escribir estos objetos. Un ejemplo de hace muchos años fue que Microsoft Outlook hizo que la lista de contactos y la capacidad de enviar correos electrónicos sean compatibles con scripts. Por lo tanto, el usuario que navega a un sitio web podría hacer que el usuario envíe un correo electrónico a todos los contactos que figuran en la aplicación de Outlook.

Además de las funciones de diseño mal utilizadas, existe la posibilidad de que las aplicaciones de escritorio no hayan sido diseñadas teniendo en cuenta la seguridad de la red, debido a su uso habitual en caso de que un usuario de confianza las use. Y como tal tienen debilidades de seguridad.

Fui buscando detalles sobre la vulnerabilidad del envío de correo electrónico y no pude encontrarlo debido al número compartido de resultados para googlear en parche de seguridad de Outlook ActiveX enviar correo electrónico .

  

¿Qué hace exactamente ActiveX, por qué se considera inseguro y en qué se diferencia de JavaScript y VBScript?

ActiveX es una forma de acceder a las aplicaciones instaladas localmente, se utiliza desde JavaScript o VBScript. Por ejemplo, el siguiente código javascript inicializa el acceso a Microsoft Excel si está instalado y si se pasan los controles de seguridad.

var ExcelApp = new ActiveXObject("Excel.Application");
var ExcelSheet = new ActiveXObject("Excel.Sheet"); 

// Make Excel visible through the Application object.
ExcelSheet.Application.Visible = true;
// Place some text in the first cell of the sheet.
ExcelSheet.ActiveSheet.Cells(1,1).Value = "This is column A, row 1";
// Save the sheet.
ExcelSheet.SaveAs("C:\TEST.XLS");
// Close Excel with the Quit method on the Application object.
ExcelSheet.Application.Quit();

Sin las extensiones ActiveX, JavaScript instalado en el navegador solo permite la interacción con el navegador. Los navegadores están diseñados con el caso de uso explícito de la ejecución segura de código limitado de fuentes no confiables. Si bien JavaScript solo puede interactuar con la superficie endurecida del navegador, es menos probable que se encuentren debilidades de seguridad, ActiveX amplía enormemente la superficie de ataque de un sitio web malicioso.

    
respondido por el David Waters 05.04.2016 - 01:02
fuente

Lea otras preguntas en las etiquetas