Me han dado dos documentos diferentes de Microsoft Word que mi antivirus me ha advertido que contienen macros. Estos deberían ser simples archivos de texto, y la persona que los envió ni siquiera sabe qué es una macro; pueden ser un error de su parte, pero pueden ser signos de una infección maliciosa. Mi instalación de OpenOffice.org está configurada para no cargar macros en absoluto, ya que rara vez las uso, por lo que no estoy preocupado por la seguridad de mi sistema. Lo que me gustaría hacer es averiguar qué hacen esas macros sin exponer mi sistema a ningún intento malicioso de esas macros, para decirle a la persona que me envió los documentos si está diseminando o no una infección.¿Cómo puedo averiguar qué hace una macro sin exponerme a ella?
Respuesta
Simplemente abra el documento sin activar las macros, luego abra el editor de código para ver lo que hacen.
Dos posibilidades. Obtenga una copia gratuita del reproductor VMWare e instale Windows y MS Office en su interior. A continuación, cargue el documento y deje que se ejecuten las macros.
La otra posibilidad. Creo que puede cargar el documento en MS Word y deshabilitar automáticamente las macros, pero la macro aún está allí para que pueda verla con Word.
Nota: No en la oficina 97 – david
Acabo de ejecutar una prueba. Abrí Palabra (2007) y:
- Creado una macro simple y guardado con el documento como un "documento habilitado macro de Word (.docm)"
- entró en la configuración de seguridad (Office Button 'Archivo' \ Opciones de Word \ Centro de confianza \ Configuración del Centro de confianza \ Configuración de Macros) y haz clic en el botón de opción "Deshabilitar todas las macros con notificación" para evitar que las macros se ejecuten a menos que hagas clic en el botón para permitir su ejecución.
- Abrí el documento * .docm y la macro no se ejecutó, pero pude ir a la pestaña "Ver" en el control de cinta y hacer clic en el botón Macros y ver macros y luego editar la macro para abrir un VBA IDE para ver el código de macro.
Todo esto asume que está utilizando Word 2007, aunque esperaría la misma capacidad en la última versión o dos de Word. No tengo Open Office en este cuadro, pero también espero que tenga la misma funcionalidad.
¡Buena suerte!
(pensé que alguien debería responder a la pregunta original sobre el uso de OpenOffice con la ejecución de la macro desactivado a nivel mundial; diciendo "abrir el editor de código" es correcto, pero realmente necesita un poco más de mano de retención para los novatos; ciertamente tomó me las edades para encontrar la primera vez.)
de todos modos, según http://www.tutorialsforopenoffice.org/tutorial/Macros.html, se puede ver (o modificar) las macros yendo Tools
→ Macros
→ → Organize Macros
OpenOffice.org Basic
, lo que traerá la ventana de la OpenOffice.org Basic Macros
.
A partir de ahí, solo es cuestión de hacer clic en el árbol para encontrar las macros incluidas en el archivo, e ir al Edit
para ver lo que hay en cada una.
Sólo para exponer sobre la parte superior de estos mensajes anteriores -
Aquí es el proceso que seguí -
- Abrir el archivo
- Habilitar Edición para salir de la Vista protegida
- AltF11 para abrir el editor de Visual Basic
- A veces aparentemente puede ver las macros aquí, en mi Word 2013 no pude.
- Minimice o cierre la ventana del editor de VB. Volveremos a abrir en un minuto
- Mantenga Shift mientras hace clic en
Enable Content
. Esto evitará que ejecute macros AutoOpen. - AltF11 para abrir el editor de Visual Basic.
- Ahora puede ver las macros que no vio antes.
La forma más segura de ver el contenido de las macros sin ejecutarlas es abrir el Editor de Visual Basic desde su documento de Office que contendrá el contenido de las macros.
Para abrir Editor de Visual Basic (Office 2010, probablemente, 2013 y 2016):
- Abra el documento
- Puede habilitar la edición si se le pide, sin macro se ejecutará
- clic derecho en la Cinta (menú) - Elija: Personalizar la Cinta
- En la sección derecha, seleccione "Desarrollador", se agregará una pestaña "Desarrollador" en la Cinta. Presiona OK.
- Vaya a la pestaña "Desarrollador" y haga clic en "Editor de Visual Basic".
Ahora puede ver todas las macros.
espero que le ayudó, funcionó para mi versión de Excel 2010.
El. ??? x es sólo un formato ZIP.
descomprima el archivo y se termina con algo como esto:
.
├── [Content_Types].xml
├── docProps
│ ├── app.xml
│ ├── core.xml
│ └── custom.xml
├── _rels
└── word
├── document.xml
├── fontTable.xml
├── _rels
│ ├── document.xml.rels
│ └── vbaProject.bin.rels
├── settings.xml
├── styles.xml
├── theme
│ └── theme1.xml
├── vbaData.xml
├── vbaProject.bin
└── webSettings.xml
ahora u puede analizar la vbastuff con Texteditor u otro VBA-editor de su elección.
Si desea ver macros de Word sin abrir el documento de Word para ver las macros que puede utilizar un script llamado oledump.py por Dider Stevens.
Una vez que tenga la secuencia de comandos se puede hacer esto:
python oledump.py "your_word.doc" -s a -v
Esto debería devolver una lista de todas las macros en el documento de Word.
- 1. ¿Cómo puedo averiguar qué procedimiento arrojó una excepción en Delphi?
- 2. ¿Puedo escribir una prueba sin ninguna afirmación en ella?
- 3. ¿Qué hace la macro Q_D en Qt
- 4. ¿Cómo puedo averiguar qué eventos están asociados a elementos HTML?
- 5. ¿Cómo puedo averiguar qué Javascript causa una solicitud de Ajax?
- 6. ¿Puedo agregar a una macro de preprocesador?
- 7. ¿Cómo puedo saber si se hace una rutina, sin bloquear?
- 8. ¿Qué hace la macro Q_OBJECT? ¿Por qué todos los objetos Qt necesitan esta macro?
- 9. ¿Qué hace "#define STR (a) #a"?
- 10. ¿Cómo puedo mapear una macro en Clojure?
- 11. ¿Cómo puedo inicializar una LinkedList con entradas/valores en ella?
- 12. En clojure, ¿cómo puedo evaluar los argumentos a una macro desde otra macro?
- 13. ¿Cómo puedo averiguar qué bibliotecas usa un exe de Windows?
- 14. ¿Cómo puedo averiguar qué versión de git estoy ejecutando?
- 15. Usando comas dentro de una macro sin paréntesis: ¿Cómo puedo mezclar y combinar con una plantilla?
- 16. ¿Cómo se hace una cadena en PHP con una barra invertida en ella?
- 17. ¿Cómo volver a escribir una URL con% 23 en ella?
- 18. ¿Puedo cambiar esta macro a una función en línea sin un golpe de rendimiento?
- 19. ¿Cómo puedo averiguar qué versión de reportlab estoy ejecutando?
- 20. ¿Cómo puedo ordenar una matriz NSMutable con NSNumbers en ella?
- 21. no puede averiguar qué =: = [A, B] significa
- 22. ¿Cómo puedo averiguar mejor cómo funciona django internamente?
- 23. ¿Cómo realizo una actualización de enlace cuando se hace clic en ella?
- 24. Averiguar qué caracteres admite una fuente
- 25. Cómo usar una gema en Rails 3 sin hacer referencia a ella en el Gemfile
- 26. ¿Cómo puedo llamar indirectamente una macro en una plantilla Jinja2?
- 27. Llamar a una macro dentro de otra macro en Twig
- 28. Averiguar qué compilador usa Maven
- 29. ¿Cómo puedo averiguar si una cita es privada?
- 30. Expansión recursiva de macro a una secuencia
Tres garantías de SO de que hacer esto es seguro. ¿Cuánto más seguro puede obtener? – Dustman
mucho. Si hubo un desbordamiento de búfer en alguna otra parte de Word, aún podría estar en peligro – PsychoData
Llamar a esto peligroso sería una subestimación – jrtapsell