Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
AutoProber — Stack d'automatisation de sonde volante pour hacker matériel, découverte de cibles pilotée par agent, cartographie microscopique, mouvement CNC surveillé pour la sécurité, révision des sondes, et test de broches contrôlé. | Kitploit
Outils/GitHubGitHub/gainsec/autoprober
Sécurité des Systèmes EmbarquésSécurité IoTRétro-ingénierieHacking MatérielTests d'IntrusionSécurité Matérielle
GitHubgainsec/autoprober

AutoProber

Stack d'automatisation de sonde volante pour hacker matériel, découverte de cibles pilotée par agent, cartographie microscopique, mouvement CNC surveillé pour la sécurité, révision des sondes, et test de broches contrôlé.

Voir le dépôt
32219il y a 4 moisVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
Site web

AutoProber

AutoProber est la stack d'automatisation de sonde volante pour hackers matériels, offrant à votre agent tout ce dont il a besoin pour passer de « il y a une nouvelle cible sur le plateau » au sondage individuel de broches en toute sécurité.

AutoProber assembly

Vidéo de démonstration : https://gainsec.com/autoprober-demo-mp4/

Flux

  1. Dites à l'agent d'ingérer le projet.
  2. Connectez tout le matériel.
  3. Dites à l'agent de confirmer que toutes les pièces fonctionnent.

Top of the AutoProber web dashboard

  1. Faites-lui exécuter le homing puis l'étalonnage.
  2. Fixez la sonde personnalisée et le support de microscope.
  3. Dites à l'agent qu'il y a une nouvelle cible sur le plateau.
  4. Il trouvera où se trouve la cible sur le plateau, puis prendra des images individuelles, en conservant un enregistrement des XYZ tout en repérant les pads, broches, puces et autres caractéristiques intéressantes.

Detected labels and target features

  1. Il assemblera les images et annotera la carte, y compris les broches et les composants intéressants qu'il a identifiés.

Annotated map view

  1. Il ajoutera des cibles de sondage au tableau de bord web pour que vous les approuviez ou les refusiez.

Probe review dashboard section

  1. Il sondera les cibles approuvées et fera rapport.

Tout le matériel peut être contrôlé via le tableau de bord web, des scripts Python, ou par l'agent lui-même.

Manual controls and hardware panels

Ce dépôt est un candidat de version autonome avec code source disponible. Il contient le code de contrôle Python, le tableau de bord, les fichiers CAO et la documentation nécessaires pour créer votre propre AutoProber.

Modèle de sécurité

Ce projet peut déplacer du matériel physique. Traitez-le comme un système de contrôle de machine, pas comme une application web normale.

La conception de sécurité requise est :

  • GRBL Pn:P est ignoré. La broche de sonde CNC n'est pas une butée de fin de course de confiance.
  • La butée de fin de course de sécurité indépendante est lue depuis le canal 4 de l'oscilloscope.
  • Le canal 4 doit être surveillé en continu pendant tout mouvement.
  • Tout déclenchement du canal 4, tension ambiguë, alarme CNC ou broche limite X/Y/Z réelle est une condition d'arrêt.
  • L'agent/opérateur doit arrêter et signaler. Le mouvement de récupération n'est pas automatique.

Lisez docs/safety.md et docs/operations.md avant d'utiliser le matériel.

Structure du dépôt

root@kitploit:~
apps/                 Scripts orientés opérateur et point d'entrée du tableau de bord Flask
autoprober/           Paquet Python réutilisable pour CNC, oscilloscope, microscope, journalisation, sécurité
dashboard/            Tableau de bord web monopage
docs/                 Architecture, références des appareils, opérations et guide de sécurité
cad/                  Fichiers STL imprimables pour la tête d'outil personnalisée actuelle
config/               Exemples de fichiers d'environnement/configuration
AGENTS.md             Règles de sécurité pour l'agent/opérateur
LICENSE               Licence PolyForm Noncommercial 1.0.0 et contact commercial
pyproject.toml        Métadonnées du projet Python
uv.lock               Résolution verrouillée des dépendances Python

Stack matériel

L'architecture de projet testée utilise :

  • Contrôleur CNC de type 3018 compatible GRBL via USB série
  • Microscope USB servi par mjpg_streamer
  • Oscilloscope Siglent sur LAN/SCPI pour la surveillance de sécurité du canal 4 et la mesure du canal 1
  • Butée optique de fin de course câblée à une alimentation externe 5V et au canal 4 de l'oscilloscope
  • Prise réseau contrôlée optionnelle pour le contrôle de l'alimentation du laboratoire
  • Pièces de tête d'outil personnalisées imprimables actuelles dans cad/

Les hypothèses d'exécution par défaut sont documentées dans les docs des appareils. Remplacez-les par vos propres paramètres de laboratoire avant utilisation.

Pour une liste de matériel orientée achat, voir docs/BOM.md.

Pièces de référence

Voici les pièces spécifiques ou classes de pièces utilisées pour la version prototype. Vérifiez les listes actuelles, dimensions, tension et compatibilité des connecteurs avant d'acheter.

Mon assemblage :

  • Butée optique de fin de course
  • Microscope USB
  • SainSmart Genmitsu 3018-PROVer V2
  • Matter Smart Power Strip, prises CA contrôlées individuellement avec 2 ports USB-A et 2 ports USB-C
  • Oscilloscope Siglent SDS1104X-E
  • Fils Dupont
  • Ressort de stylo ou ressort de compression léger similaire
  • Imprimante 3D pour les pièces de tête d'outil imprimables dans cad/

Optionnel / interchangeable :

  • Sondes d'oscilloscope universelles
  • Bloc d'alimentation USB, 5V
  • Câble USB 2.0 de type pigtail

Architecture matérielle

root@kitploit:~
flowchart LR
    Operator[Opérateur] --> Dashboard[Tableau de bord Web]
    Dashboard --> Apps[Applications Python]
    Apps --> CNC[CNC GRBL sur USB série]
    Apps --> Microscope[Microscope USB via mjpg-streamer]
    Apps --> Scope[Oscilloscope sur LAN / SCPI]
    Apps --> Outlet[Prise réseau LAN optionnelle]

    Endstop[Butée optique] --> ScopeC4[Tension de sécurité C4]
    Pogo[Mesure Pogo] --> ScopeC1[Mesure C1]
    ScopeC4 --> Apps
    ScopeC1 --> Apps

Architecture d'exécution

root@kitploit:~
flowchart TD
    Preflight[Pré-vol] --> SafetyCheck{Canal 4 dégagé ?}
    SafetyCheck -- non --> Stop[État STOP]
    SafetyCheck -- oui --> Motion[Mouvement surveillé]
    Motion --> Monitor[Thread EndstopMonitor >= 10 Hz]
    Monitor --> C4{C4 dégagé ?}
    C4 -- oui --> Capture[Capture microscope]
    C4 -- non --> FeedHold[Arrêt d'avance immédiat]
    FeedHold --> Stop
    Capture --> Stitch[Assemblage / Carte]
    Stitch --> Review[Revue manuelle des sondages]
    Review --> Approved{Cible approuvée et décalage de sonde mesuré ?}
    Approved -- non --> Stop
    Approved -- oui --> Probe[Mouvement de sonde borné]

État STOP

root@kitploit:~
stateDiagram-v2
    [*] --> Running
    Running --> STOP: C4 déclenché / défaut C4 / alarme CNC / broche limite réelle
    STOP --> Report: enregistrer tension, statut, action
    Report --> WaitForOperator: aucun mouvement de récupération automatique
    WaitForOperator --> Running: l'opérateur efface explicitement la condition

Démarrage rapide

Installer les dépendances :

root@kitploit:~
uv sync

Démarrer le tableau de bord sur un hôte matériel configuré :

root@kitploit:~
PYTHONPATH=. python3 apps/dashboard.py

Le tableau de bord utilise par défaut le port 5000.

Configuration

Commencez par config/autoprober.example.env. Ne publiez pas les IP, noms d'hôte, identifiants, fichiers d'étalonnage ou images de cibles capturées spécifiques à votre laboratoire sauf si vous avez l'intention de les diffuser.

Les valeurs importantes configurables au runtime :

  • AUTOPROBER_LOG_PATH : chemin du journal d'exécution
  • AUTOPROBER_RUNTIME_ROOT : répertoire d'état pour l'étalonnage, le flat-field et l'exécution
  • AUTOPROBER_MICROSCOPE_SNAPSHOT_URL : point d'accès pour la capture d'écran du microscope
  • AUTOPROBER_SCOPE_HOST / AUTOPROBER_SCOPE_PORT : point d'accès SCPI de l'oscilloscope
  • Tableau de bord : Flask sur le port 5000

Ne commitez pas les fichiers d'environnement locaux contenant des hôtes, chemins ou données de cibles spécifiques au laboratoire.

Flux de travail principaux

  1. Exécuter les vérifications pré-vol.
  2. Vérifier que le canal 4 est dégagé.
  3. Effectuer le homing et l'étalonnage uniquement lorsque l'installation physique est prête.
  4. Capturer des images du microscope avec mouvement surveillé.
  5. Importer ou générer les artefacts de carte de cibles pour révision.
  6. Approuver les candidats au sondage manuellement.
  7. Exécuter tout mouvement de sonde uniquement après avoir mesuré et stocké le décalage microscope-sonde.

Ce qui est exclu

Ce candidat de version exclut intentionnellement :

  • Captures de microscope d'essai et images de cibles assemblées
  • Images de référence téléchargées
  • Sauvegardes et archives locales
  • .venv, __pycache__, artefacts Playwright
  • Journaux d'exécution, cache d'étalonnage, images de flat-field
  • État SSH/déploiement spécifique à la machine

Voir RELEASE_MANIFEST.md pour les détails.

Licence

Ce projet est disponible avec code source sous la licence PolyForm Noncommercial 1.0.0.

Vous pouvez utiliser, modifier et partager ce projet à des fins non commerciales.

L'utilisation commerciale nécessite une licence commerciale payante séparée.

Pour une licence commerciale, contactez : [email protected]

Limitations actuelles

  • Le décalage XY microscope-pogo doit être mesuré avant un sondage réel.
  • L'étalonnage ne doit pas être fabriqué ; le fichier d'étalonnage d'exécution doit être généré sur la machine qui effectuera les déplacements.
  • Le tableau de bord est un outil de contrôle de laboratoire et ne doit pas être exposé à des réseaux non fiables.

Utilisation responsable

Ce projet est destiné à un travail de laboratoire contrôlé sur des équipements et des cibles que vous êtes autorisé à tester. Ne l'utilisez pas pour sonder, endommager ou analyser des systèmes sans permission.

Auteurs

Jon 'GainSec' Gaines

Télécharger l’outil