
rustinel v1.8.0-rc.1
Détection des points de terminaison pour Windows, Linux et macOS. Règles Sigma, YARA et IOC sur la télémétrie native. Écrit en Rust. Aucun compte cloud requis.
Rustinel
Détection de point de terminaison open source. Trois plateformes. Vos règles.
Exécutez des détections Sigma, YARA et IOC sur la télémétrie native Windows, Linux et macOS.
Écrit en Rust, avec des alertes locales et aucun compte cloud requis.
Apportez votre contenu de détection, surveillez vos points de terminaison et envoyez des alertes aux outils que vous utilisez déjà.
Télécharger | Documentation | Packs de détection | Site web
Pourquoi Rustinel ?
La détection de point de terminaison doit fonctionner avec les plateformes que vous exécutez et les règles que vous comprenez déjà.
Rustinel réunit la télémétrie native, les formats de détection établis et un format d'alerte commun dans un seul moteur open source.
- Utilisez les règles Sigma et YARA. Détectez les comportements avec Sigma, analysez les fichiers et la mémoire des processus avec YARA, et faites correspondre les indicateurs de hachage, IP, domaine et chemin.
- Fonctionne sur Windows, Linux et macOS. Utilisez un seul moteur avec un modèle de configuration partagé et des événements normalisés. Les capteurs et la couverture de détection varient selon la plateforme.
- Gardez le contrôle de vos données. L'agent actif n'établit aucune connexion réseau sortante. Les alertes sont des fichiers locaux que vous pouvez inspecter ou transmettre vous-même.
- Connectez vos outils existants. La sortie ECS 9.4.0 NDJSON fonctionne avec Elastic, Splunk et d'autres pipelines de journaux.
- Testez les détections sur un comportement enregistré. Capturez la télémétrie une fois et rejouez-la à mesure que vos règles évoluent, sans répéter l'activité.
- Inspectez et étendez le moteur. Écrit en Rust et sous licence Apache 2.0.
Obtenez votre première alerte
Les archives de version incluent un binaire, une configuration par défaut et des règles de démonstration afin que vous puissiez vérifier la détection avant de déployer un service.
Linux
Nécessite Linux 5.8+ avec prise en charge de BTF.
curl -fsSL https://rustinel.io/install.sh | sh
cd rustinel
sudo ./rustinel run
Windows
Exécutez dans un PowerShell élevé :
irm https://rustinel.io/install.ps1 | iex
Set-Location rustinel
.\rustinel.exe run
Nécessite le Microsoft Visual C++ Redistributable x64. Voir Prérequis Windows.
macOS
La prise en charge de macOS est expérimentale. Effectuez la configuration de la signature et de l'accès complet au disque avant de démarrer le capteur.
curl -fsSL https://rustinel.io/install.sh | sh
cd rustinel
sudo ./rustinel run
Déclencher la règle de démonstration
Pendant que Rustinel est en cours d'exécution, ouvrez un autre terminal et exécutez :
whoami
La règle de démonstration incluse détecte le processus. Trouvez l'alerte dans
logs/alerts.json.<date> dans le répertoire de version extrait.
Les règles de démonstration vérifient que le pipeline fonctionne. Pour une couverture plus large, installez un pack de détection ou ajoutez vos propres règles.
Vous préférez une installation manuelle ? Parcourez les archives de version ou inspectez les scripts d'installation.
Déployer pour une surveillance continue
Arrêtez l'agent au premier plan avec Ctrl-C, puis exécutez la configuration depuis le répertoire de version extrait.
Linux et macOS :
sudo ./rustinel setup --yes
./rustinel doctor
Windows, dans un PowerShell élevé :
.\rustinel.exe setup --yes
.\rustinel.exe doctor
La configuration écrit la configuration gérée, installe le pack de règles Essential, enregistre le service natif, le démarre et vérifie son état de santé.
Utilisez --pack advanced pour le pack plus volumineux ou --no-start pour enregistrer le service
sans le démarrer.
| Plateforme | Gestionnaire de services | Répertoire d'alertes géré |
|---|---|---|
| Windows | SCM | C:\ProgramData\Rustinel\logs\ |
| Linux | systemd | /var/log/rustinel/ |
| macOS | launchd | /Library/Logs/Rustinel/ |
Les règles et les IOC prennent en charge le rechargement à chaud. La terminaison facultative des processus est disponible et désactivée par défaut.
Configuration | Opérations | Exemples SIEM
Vos règles, avec une couverture documentée
Utilisez votre propre contenu de détection ou commencez avec rustinel-rules, les packs officiels versionnés Sigma, YARA et IOC.
Les packs sont téléchargés, vérifiés par SHA-256, validés et activés de manière atomique. Un échec de téléchargement laisse les règles actuelles en place.
La compatibilité des règles dépend de la télémétrie et des champs disponibles sur chaque plateforme. Une règle Windows ne devient pas automatiquement une détection Linux.
Nous publions les mesures de couverture Sigma par rapport à un corpus SigmaHQ épinglé, y compris les collecteurs manquants et les champs indisponibles. Celles-ci mesurent si les règles disposent des données nécessaires pour se déclencher, et non si elles détecteront chaque attaque.
Écriture de règles | Catalogue des packs | Couverture et lacunes
Capturez une fois. Rejouez à mesure que vos règles s'améliorent.
Enregistrez l'activité du point de terminaison, puis évaluez les mêmes événements par rapport à de nouvelles règles sans répéter l'activité ni exécuter de capteurs sur votre machine de développement.
Depuis le répertoire de version sous Linux ou macOS :
# Start recording, perform the activity, then press Ctrl-C.
sudo ./rustinel capture --output session.ndjson
# Evaluate the recording without elevated privileges.
./rustinel replay session.ndjson
# Compare another configuration.
./rustinel replay session.ndjson --config candidate.toml
# Export results for automated comparison.
./rustinel replay session.ndjson --output results.ndjson
Sous Windows, utilisez .\rustinel.exe et un PowerShell élevé pour la capture.
Un enregistrement Windows peut être rejoué sous Linux ou macOS. Le rejeu utilise la plateforme enregistrée pour le routage Sigma et produit des résultats reproductibles pour le même enregistrement et la même configuration.
Conservez l'enregistrement et son fichier annexe .manifest.json ensemble. Les enregistrements contiennent
des données sensibles de point de terminaison, notamment les lignes de commande, les chemins, les destinations réseau
et les noms d'utilisateur.
Le rejeu évalue Sigma et les vérifications IOC d'IP, de domaine et de chemin. Les vérifications YARA et de hachage sont ignorées car les enregistrements contiennent des événements plutôt que le contenu des fichiers. La réponse active ne s'exécute jamais pendant le rejeu.
Référence de capture et de rejeu
Prise en charge des plateformes
| Plateforme | Capteurs | Télémétrie | Statut |
|---|---|---|---|
| Windows 10/11, Server 2016+ | ETW + Windows Event Log | Processus, chargement d'image, réseau, fichier, registre, DNS, PowerShell, WMI, service, tâche, événements de sécurité sélectionnés | Stable |
| Linux 5.8+ avec BTF | eBPF | Processus, réseau, fichier, DNS | Stable |
| macOS 11+ | Endpoint Security + /dev/bpf | Processus, fichier, réseau, DNS | Expérimental |
Windows dispose de la couverture la plus large aujourd'hui. Voir prérequis et limitations pour les détails spécifiques à chaque plateforme.
Fonctionnement local, téléchargements explicites
L'agent actif collecte et évalue la télémétrie localement. Il n'envoie pas la télémétrie à un serveur ni ne nécessite de compte fournisseur.
Les programmes d'installation téléchargent les versions publiées. setup, rules list et rules install
récupèrent le catalogue de règles ; la configuration et l'installation des règles téléchargent également les packs.
Les alertes restent sur le point de terminaison, sauf si vous les transmettez via votre propre pipeline.
Connaître les limites
Rustinel prend en charge la surveillance des points de terminaison, l'ingénierie de détection, les laboratoires de sécurité et la validation des pipelines SIEM.
Il ne remplace pas directement un EDR commercial mature. Il ne fournit pas d'auto-protection au niveau du noyau, de blocage avant exécution, de garanties anti-altération ni de réponse gérée. Un attaquant suffisamment privilégié peut interférer avec la télémétrie en mode utilisateur.
Lisez les limitations actuelles lors de l'évaluation pour votre environnement.
Contribuer
Aidez à améliorer la couverture des plateformes, à tester les détections, à signaler des bugs ou à faciliter la configuration.
Si vous utilisez Rustinel, dites-nous ce que vous surveillez, quelles règles comptent pour vous et où vous rencontrez des difficultés. Les retours de déploiement réels aident à guider le projet.
Contribution | Issues | Guide de développement | Feuille de route