 Journaux détaillés d'Office 365 Outlook extraits par Magic-Unicorn-Tool : un attaquant recherche une facture de paiement. La première lettre de la requête de recherche a été entrée à 10: 42: 44.548, la dernière à 10: 43: 07.214. Les informations sur l'activité sont stockées dans les journaux pendant six mois.
Journaux détaillés d'Office 365 Outlook extraits par Magic-Unicorn-Tool : un attaquant recherche une facture de paiement. La première lettre de la requête de recherche a été entrée à 10: 42: 44.548, la dernière à 10: 43: 07.214. Les informations sur l'activité sont stockées dans les journaux pendant six mois.Pendant longtemps, il y avait des rumeurs selon lesquelles Office 365 dispose d'un outil secret intégré pour enregistrer l'activité des utilisateurs. En juin 2018, ces rumeurs ont été pleinement confirmées. Tout a commencé avec une 
vidéo publiée par 
Anonymous , puis les spécialistes de CrowdSrtike ont téléchargé un 
rapport détaillé .
Microsoft a implémenté l'API Activities dans le client de messagerie non à des fins malveillantes, mais pour les tâches de la criminalistique numérique, c'est-à-dire enquêter sur les incidents impliquant le piratage des e-mails d'entreprise et d'autres fuites de données. Pour ce faire, un journal d'activité détaillé est conservé pendant six mois, 
même si l'utilisateur a désactivé la journalisation .
Compte de messagerie piratage épidémie
Le piratage de comptes de messagerie d'entreprise dans le monde est devenu si répandu que certains experts 
appellent cela une épidémie . Les attaquants ont accès à des feuilles de calcul avec des numéros de sécurité sociale, des informations détaillées sur les factures financières et les secrets commerciaux. Ils recherchent des informations sur les virements bancaires et volent de l'argent, profitant de l'absence de 
signature numérique sur les documents . Les différents types de fraude par compromission du courrier professionnel sont décrits dans la 
brochure CrowdStrike .
Par exemple, au début de juin, le FBI a mené une 
opération internationale et détenu 74 personnes dans plusieurs pays impliqués dans cette activité.
Lorsque le fait de pirater est connu, il est important de comprendre: à quelles données le pirate a-t-il eu accès, ce qu'il a vu et quelles informations il a copiées. Des données confidentielles ont-elles fui? L'enquête sur les incidents est rendue plus difficile car la journalisation dans Office 365 est désactivée par défaut. En l'absence de toute information réelle, la société est tenue par la loi d'annoncer publiquement une fuite de données avec toutes les conséquences qui en découlent - frais de réputation, amendes, etc.
Mais maintenant, on sait qu'il existe une API d'activités avec une journalisation détaillée dans Office 365, et bon nombre de ces scandales pourraient être évités si les entreprises connaissaient cette API. Peut-être, l'accès à ces journaux secrets n'a été reçu que par certains clients privilégiés. Il y a des 
informations que certaines entreprises spécialisées dans la criminalistique numérique connaissaient l'outil d'audit secret d'Office 365 l'année dernière, ou même plus tôt. Quelqu'un a considéré que leurs déclarations étaient de la bravade marketing, mais cela s'est avéré vrai. Étonnamment, l'API Activities existait et Microsoft a vraiment caché l'existence d'un outil aussi important et utile, appelé Magic Unicorn professionnel, d'où le nom du programme d'auto-analyse des journaux, qui est mentionné ci-dessous.
 Un attaquant scanne les messages contenant une facture de paiement et le formulaire W-9. Journaux détaillés extraits par Magic-Unicorn-Tool
Un attaquant scanne les messages contenant une facture de paiement et le formulaire W-9. Journaux détaillés extraits par Magic-Unicorn-ToolEnquête CrowdStrike
CrowdStrike a 
décrit en détail le fonctionnement par défaut de la journalisation Office 365 pour tous les utilisateurs. La fonctionnalité se compose d'une API Web qui récupère les informations d'activité d'Office 365 Outlook via les services Web Exchange (EWS). L'accès à l'API est ouvert à toute personne connaissant le point de terminaison et l'en-tête HTTP spécifique.
L'API Activités non documentées est un sous-ensemble des trois versions de l' 
API REST Outlook (1.0, 2.0 et bêta). Comme pour les autres sous-ensembles, l'appel d'API doit être authentifié à l'aide d'OAuth 2.0 ou d'une authentification de base.
Le point final est le suivant:
https://outlook.office.com/api/v2.0/{user_context}/Activities 
Toutes les demandes sont envoyées sous forme de paquets HTTP GET, qui doivent inclure l'en-tête HTTP suivant:
 Prefer: exchange.behavior="ActivityAccess" 
Les requêtes sans cet en-tête renverront une 
HTTP 400 Bad Request .
L'en-tête d' 
Authorization est également 
Authorization :
 Authorization: Bearer <access token> 
Les demandes sans cet en-tête 
HTTP 403 Unauthorized réponse 
HTTP 403 Unauthorized .
À des fins de test, un jeton d'accès OAuth 2.0 peut être généré dans le 
sandbox Oauth . Il est valable 60 minutes.
L'appel le plus simple à l'API est de demander les dix dernières de ses activités.
 GET https://outlook.office.com/api/v2.0/me/Activities 
Un exemple de réponse de l'API au format JSON montre les propriétés d'activité standard:
 { "value": [ { "Id":"WOGVSAiPKrfJ4apAPcBksT2en7whzDz4NIbUs3==", "ActivityCreationTime":"2010-04-01T12:34:56.789Z", "ActivityIdType":"ReadingPaneDisplayStart", "AppIdType":"Outlook", "ClientVersion":"15.00.0000.000", "ClientSessionId":"679126f3-02de-3513-e336-0eac1294b120", "ActivityItemId":"NjKG5m6OmaCjGKq6WlbjIzvp94czUDg30qGopD==", "TimeStamp":"2010-04-01T12:34:56.789Z", "TenantId":"679126f3-02de-3513-e336-0eac1294b120", } ] } 
Grâce à l'API, vous pouvez demander une activité non seulement pour vous-même, mais aussi pour d'autres utilisateurs, si l'autorisation est obtenue via Shared Mailbox ou Application Permission:
 GET https://outlook.office.com/api/v2.0/Users('victim@contoso.com')/Activities 
L'API Activités prend en charge plusieurs paramètres de requête:
- $orderby: trie les résultats par expression donnée
- $filter: filtre les résultats par date et / ou type d'activité
- $select: sélectionnez les propriétés de retour
- $top: nombre maximum d'activités retournées
- $skip: nombre d'activités sautées dans les résultats
À l'heure actuelle, CrowdStrike a identifié 30 types d'activités, mais en réalité, il peut y en avoir plus. Voici les plus utiles:
- Delete: supprimer une lettre
- Forward: transfert de courrier électronique
- LinkClicked: cliquer sur un lien dans un e-mail
- MarkAsRead: message marqué comme lu
- MarkAsUnread: message marqué comme non lu
- MessageDelivered: lettre remise à la boîte aux lettres
- MessageSent: e-mail envoyé depuis la boîte aux lettres
- Move: la lettre est transférée
- OpenedAnAttachment: application ouverte
- ReadingPaneDisplayEnd:- ReadingPaneDisplayEndlettre dans le volet d'affichage
- ReadingPaneDisplayStart: sélectionnez une surbrillance à écrire dans le volet d'affichage.
- Reply: réponse à la lettre
- SearchResult: génération de résultats de recherche
- ServerLogon: événement d'autorisation
Il existe d'autres types intéressants d'activités utiles pour enquêter sur les incidents: 
SenderSmtpAddress , 
Recipients , 
Subject , 
SentTime , 
InternetMessageId , 
ClientIP , 
UserAgent , etc.
Les spécialistes de CrowdStrike ont publié 
un module Python qui extrait des informations de l'API Office 365 Outlook Activities et écrit les données reçues dans un fichier CSV.
Magic-Unicorn-Tool
Le programme 
Magic-Unicorn-Tool analyse les journaux d'API d'activités obtenus par le module Python susmentionné. Pour le moment, il est capable d'analyser et d'afficher les informations suivantes:
- Recherchez les requêtes dans la boîte aux lettres, l'heure de visualisation des messages et / ou des sessions autorisées
- Événements d'autorisation (ouverture de session et ouverture de session serveur), date, heure, adresse IP et type de navigateur.
- Toutes les activités de courrier sont livrées et marquées comme des lettres lues.
- Recherchez les événements enregistrés à partir de l'ID de session en référence au dernier événement d'autorisation.
- Lecture du panneau.
- Afficher les pièces jointes.
 Connectez-vous à votre compte depuis différentes adresses IP
Connectez-vous à votre compte depuis différentes adresses IPMagic-Unicorn-Tool est distribué sans 
signature de code , mais avec l'open source.
La mise en œuvre d'outils comme l'API Activities à l'insu des utilisateurs soulève un certain nombre de problèmes pratiques et éthiques pour l'ensemble de l'industrie de la criminalistique numérique. Par défaut, la journalisation est désactivée sur les comptes Office 365. Elle ne fait pas partie des plans ProPlus et E1 standard. Les entreprises doivent payer plus d'argent pour l'audit des comptes, et en raison du manque de journaux (comme elles le pensaient), de nombreuses entreprises ont subi des pertes. Dans le même temps, la granularité du journal de l'API d'activité dépasse de loin la granularité des méthodes de consignation documentées telles que 
le journal d'audit unifié .
Les experts en criminalistique numérique de LMG Security 
demandent l' adoption de normes pour la journalisation des activités et la placent comme une charge obligatoire pour les fournisseurs de cloud, car le système d'alarme incendie dans les centres de données est désormais une charge obligatoire.
L'adoption de normes est nécessaire pour que les fournisseurs non seulement tiennent des journaux, mais les fournissent également sous une forme standard pour les clients et les sociétés d'audit, et ne gardent pas le secret pour les clients sélectionnés dans le cadre d'un plan tarifaire plus coûteux ou en tant que service payant distinct.
GMO GlobalSign Russia ACTION pour les abonnés Habr 

Vous pouvez obtenir des informations supplémentaires en contactant le responsable GlobalSign par téléphone: +7 (499) 678 2210, ou remplissez le 
formulaire sur le site Internet en indiquant le code promo CS002HBFR.