Manos escribiendo en una computadora portátil en un espacio de trabajo oscuro y concentrado

El equipo de investigación de Swimlane publica código abierto de py-ews

2 Minuto de lectura

 

El phishing afecta a todas las organizaciones, y los equipos de operaciones de seguridad (SecOps) deben actuar con rapidez para remediar y prevenir amenazas desconocidas en su infraestructura de correo electrónico. Para combatir estas amenazas, el equipo de investigación de Swimlane ha abierto el código fuente. py-ews permitir que los equipos de seguridad y TI interactúen con Microsoft Exchange Web Services (EWS) mediante Python.

¿Por qué py-ews?

Las organizaciones continúan luchando contra correos electrónicos de phishing maliciosos en sus entornos de correo electrónico, pero los equipos de seguridad y TI tienen una visibilidad limitada de lo que actualmente reside en los buzones de sus usuarios. Py-ews Fue escrito para devolver el control a sus equipos de seguridad y TI para que puedan remediar las amenazas más rápidamente.

Se puede acceder a Microsoft Exchange y Microsoft Office 365 locales mediante programación mediante PowerShell o programas basados en C#, lo cual es ideal si trabaja exclusivamente con sistemas operativos Windows. Además, si usa macOS o un sistema basado en *nix y utiliza PowerShell Core, puede crear una sesión remota para conectarse a su entorno de Exchange.

Todas estas son excelentes opciones, pero py-ews es multiplataforma y funciona con Python 2 y 3 para interactuar directamente con Exchange Web Services tanto para Exchange local (2010 a 2019) como para Office 365. No hay intermediarios ni código compilado con el que lidiar, lo que significa que py-ews es más rápido.

Al utilizar SOAP XML de Exchange Web Services, interactuamos directamente con Exchange eDiscovery y otros puntos finales de servicio EWS. Al momento de escribir esta publicación, py-ews es compatible con los siguientes puntos finales:

  • Obtener buzones de correo buscables:Identifique automáticamente todos los buzones de su entorno a los que tiene derechos de acceso para realizar búsquedas.
  • Buscar buzones:Mediante el uso de Microsoft Sintaxis de consulta avanzada Puede buscar en uno o todos los buzones de su entorno.
  • Eliminar elemento:Puede eliminar de forma permanente, suave o mover a elementos eliminados un elemento de correo.
  • Descubrimiento automático:La detección automática le permite llamar a un único punto final cuando se comunica con EWS.
  • Resolver nombres:Traduce la dirección de correo electrónico de un usuario en un objeto de usuario detallado para recuperar propiedades.
  • Obtener reglas de la bandeja de entrada:Determinar las reglas de la bandeja de entrada de un solo buzón.

Para utilizar los puntos finales de eDiscovery, debe tener Gestión de descubrimiento derechos dentro de Intercambio. Py-ews también admite la posibilidad de suplantar a un usuario/buzón de correo, pero debe tener interpretación derechos dentro de Exchange.

Guión

Muchos equipos de seguridad, como el suyo, necesitan responder a correos electrónicos maliciosos en su entorno. Con py-ews, puede recuperar una lista de buzones de su entorno de Exchange, buscarlos y eliminar cualquier correo electrónico malicioso identificado.

Aquí hay un ejemplo de cómo hacer esto con py-ews:

from pyews import UserConfiguration from pyews import GetSearchableMailboxes from pyews import SearchMailboxes from pyews import DeleteItem userconfig = UserConfiguration( '[email protected]', 'Password1234' ) # obtener buzones de correo que se puedan buscar según los permisos de sus cuentas referenceid_list = [] for mailbox in GetSearchableMailboxes(userconfig).response: referenceid_list.append(mailbox['ReferenceId']) # busquemos todos los elementos de referenceid_list messages_found = [] for search in SearchMailboxes('subject:account', userconfig, referenceid_list).response: messages_found.append(search['MessageId']) # si ahora quisiéramos eliminar un mensaje específico, entonces llamaríamos a la clase DeleteItem # de esta manera, pero también podemos pasar todo el messages_found lista respuesta_mensaje_eliminado = DeleteItem(mensajes_encontrados[2], userconfig).response

Py-ews está disponible en pypi A partir de hoy y se puede instalar ejecutando pip install pyews.

Continúe leyendo sobre py-ews.

Logotipo de SecOps Hub

Continuar la conversación

SecOps Hub es una comunidad de profesionales de seguridad que se reúnen para debatir estrategias de SecOps, las mejores prácticas de respuesta a incidentes y cómo simplificar SecOps con la orquestación, automatización y respuesta de seguridad (SOAR). ¡Sigue esta conversación y participa en conversaciones como esta hoy mismo!

Únete ahora

Solicitar una demostración en vivo