
Documentation de réponse aux incidents simplifiée. Développée par des intervenants en réponse aux incidents pour des intervenants en réponse aux incidents.
Documentation de réponse aux incidents simplifiée. Développé par des intervenants en incidents pour des intervenants en incidents. Aurora amène le « Spreadsheet of Doom » utilisé dans la classe SANS FOR508 au niveau supérieur. Ayant dirigé de nombreux cas et enseigné à tant d'étudiants comment faire de la réponse aux incidents correctement, j'ai réalisé que beaucoup ont du mal à garder le contrôle sur toutes les découvertes. Cela ne les empêche pas seulement de voir ce qu'ils ont déjà, mais encore moins ce qui leur manque.
Il est conçu pour être utilisé dans des investigations de réponse aux incidents petites et grandes pour suivre les découvertes, les tâches, faciliter le reporting et généralement rester maître du jeu. La version actuelle a été testée sur le terrain plusieurs fois maintenant. Je continuerai à corriger les bugs et à ajouter des fonctionnalités au fur et à mesure, mais souvenez-vous, c'est un projet de loisir. Donc toute aide est appréciée.
Mouvement latéral
Chronologie visuelle

Vous pouvez télécharger la version actuelle d'Aurora Incident Response depuis la page des versions. Aurora Incident Response est disponible pour MacOS, Windows et Linux. Nous travaillons pour le rendre disponible également pour les iPads et les tablettes Android.
Voici une vidéo sur l'utilisation d'Aurora :
Si vous souhaitez contribuer, vous êtes encouragé à le faire. J'aimerais vraiment voir l'outil grandir. L'ensemble de l'application est basé sur Electron et écrit en Javascript et HTML simples. Même si techniquement j'aurais pu utiliser des modules node.js pour des fonctionnalités comme Webdav, je m'en suis abstenu. La raison est que les modules node ne fonctionneront pas directement lors de la migration du code vers Phonegap pour iOS et Android. La bonne nouvelle, c'est qu'il est très rapide de configurer votre environnement de développement. J'utilise personnellement Webstorm, mais cela devrait fonctionner avec presque n'importe quel IDE.
Comme indiqué dans la description, Aurora Incident Response est construit sur Electron, ce qui permet une compatibilité multiplateforme. Vous pouvez facilement installer votre chaîne d'outils de la manière suivante.
Commencez par installer node.js. Suivez les liens vers leur page de téléchargement.
Avec nodejs installé, clonez le [dépôt Github Aurora](git clone https://github.com/cyb3rfox/Aurora-Incident-Response) (ou faites un fork d'abord si vous voulez contribuer).
git clone https://github.com/cyb3rfox/Aurora-Incident-Response
cd Aurora-Incident-Response/src
Maintenant, vous devez installer Electron en utilisant node. Actuellement, Aurora est configuré pour fonctionner avec electron 4.0.6.
npm install [email protected]
Vous pouvez maintenant exécuter le code en invoquant :
node_modules/.bin/electron .
C'est rapide, n'est-ce pas ?
Les points suivants sont déjà sur la feuille de route. Veuillez simplement publier un nouveau problème ou envoyer un message sur Twitter si vous avez des suggestions pour de nouvelles améliorations.
Vous pouvez consulter les fonctionnalités prévues pour les prochaines versions sous projects.
Pour construire et cross-compiler, j'utilise electron-packager.
npm install electron-packager
Construction pour Windows :
./node_modules/.bin/electron-packager . Aurora --asar --prune --platform=win32 --electron-version=4.0.6 --arch=x64 --icon=icon/aurora.ico --out=release-builds --ignore "node_modules/.bin"
Construction pour MacOS :
./node_modules/.bin/electron-packager ./src Aurora --overwrite --platform=darwin --arch=x64 --icon=icon/aurora.icns --prune=true --out=release-builds
Construction pour Linux :
./node_modules/.bin/electron-packager . Aurora --asar --prune --platform=linux --electron-version=4.0.6 --arch=x64 --icon=icon/aurora.ico --out=release-builds --ignore "node_modules/.bin"
Cette section décrit les différents fichiers de code source. Pour l'instant, je dois garder cette section petite. J'ai essayé de commenter le code du mieux possible. Si vous avez des questions, contactez-moi. Si vous voulez me rejoindre pour développer l'outil, il y a un canal Slack pour communiquer. Envoyez-moi un message et je vous inviterai.
main.jsLes applications Electron différencient un processus principal (arrière-plan) et un processus de rendu (fenêtre du navigateur Chromium). Ce fichier contrôle le processus principal. Pour Aurora, vous n'avez généralement besoin d'y aller que si vous voulez activer la console JavaScript dans la fenêtre Aurora. Décommentez simplement la ligne suivante :
win.webContents.openDevTools()
La deuxième chose qui y est gérée est la sauvegarde automatique et le déverrouillage lorsque vous quittez le programme. Pour cela, le processus principal et le processus de rendu partagent une variable globale appelée global.Dirty.is_dirty qui est utilisée pour signaler au processus principal s'il peut quitter immédiatement ou si le fichier doit être nettoyé avant de sortir.
C'est en fait un concept très similaire au bit « dirty » de NTFS.
index.htmlC'est le fichier principal d'Aurora qui assemble tous les scripts et feuilles de style. Il initie également l'interface graphique. Autrement, il n'a aucune fonctionnalité.
gui_definitions.jsJ'ai essayé du mieux possible de séparer le code et le design. Ce fichier contient toutes les définitions JSON pour l'interface graphique w2ui. Il reste un peu de code pour les « renderers » qui formatent certaines colonnes. Il n'était pas logique de les placer ailleurs.
controller.jsLe contrôleur injecte les fonctions de gestion des événements de l'interface graphique. Ainsi, chaque fois qu'un bouton est enfoncé, ou que tout autre événement nécessaire se produit, controller.js gère ce qui se passe.
gui_functions.jsDe temps en temps, des opérations surviennent qui modifient quelque chose dans l'interface graphique. Cela pourrait être, par exemple, rendre tous les champs de données en lecture seule lorsque vous n'avez pas le verrou, ou simplement ouvrir une fenêtre contextuelle. Toutes ces fonctions se trouvent dans ce fichier, qui est un fichier JSON simple.
data.jsBien que les données réelles soient stockées dans les structures de données w2ui, pour la sauvegarde et certaines autres opérations, nous devons les convertir dans notre format. Les transformations de ce type et toute la logique concernant la sauvegarde et l'ouverture des fichiers se trouvent ici.
data_template.jsCeci contient les modèles pour le format de données interne de cette version. La version actuelle du format est 3.
misp.jsCode pour l'intégration MISP.
virustotal.jsCode pour l'intégration VT.
settings.jsParamètres pour différentes bibliothèques. Actuellement, il ne définit que le format du champ de temps pour w2ui.
helper_functions.jsPetites fonctions d'aide qui ne rentrent pas ailleurs.
import.jsGère les importations CSV.
exports.jsGère les exportations CSV.
Aurora est sous licence Apache 2.
Des projets comme celui-ci ne peuvent être réalisés que parce que de nombreuses personnes ont investi des milliers d'heures à écrire des bibliothèques géniales et d'autres logiciels. D'autres contribuent avec des éléments d'interface professionnels. Merci pour tout votre excellent travail. Notamment, j'ai construit Aurora en me basant sur les dépendances suivantes :
Outre l'incroyable quantité de travail que les gens ont investi dans ces projets, vous avez également besoin d'un autre soutien. Écrire le code est facile, mais en faire un outil qui fonctionne dans la réalité dépend d'une vaste expérience de nombreux intervenants en incidents. Je tiens ici à remercier particulièrement les membres de mon équipe de réponse aux incidents qui ont contribué par leurs connaissances et ont aidé à tester l'outil dans des cas réels :
Même si c'est un projet secondaire et de week-end, il est bon de savoir que mon employeur Infoguard AG me soutient autant que possible. Merci particulièrement à :
Les personnes suivantes ont contribué avec des changements qui ont un impact significatif sur l'outil :