Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
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é.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
wolfssh — Petite bibliothèque client et serveur SSHv2 embarquable et portable en C avec SCP, SFTP, redirection de ports et échange de clés post-quantique pour les systèmes embarqués et IoT. | Kitploit
Outils/GitHubGitHub/wolfssl/wolfssh
Outils DéfensifsSécurité des Systèmes EmbarquésOutils de Chiffrement/DéchiffrementSécurité IoTSécurité RéseauCryptographieUtilitaires et FrameworksSécurité Matériel et IoTAuthentificationOutil d'Accès à Distance
GitHub
4991226il y a 1 jourVérifié par Kitploit
wolfssl/wolfssh

wolfssh

Petite bibliothèque client et serveur SSHv2 embarquable et portable en C avec SCP, SFTP, redirection de ports et échange de clés post-quantique pour les systèmes embarqués et IoT.

Voir le dépôtSite web

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

WOLFSSH

Serveur SSH embarquable de wolfSSL Manuel wolfSSH

dépendances

wolfSSH dépend de wolfCrypt, qui fait partie de wolfSSL. Voici la configuration la plus simple de wolfSSL pour activer wolfSSH.

$ cd wolfssl
$ ./configure [OPTIONS] --enable-ssh
$ make check
$ sudo make install

Sur certains systèmes, la commande optionnelle ldconfig est nécessaire après l'installation.

Pour utiliser la fonction de génération de clés dans wolfSSH, wolfSSL devra être configuré avec keygen : --enable-keygen.

Lors de l'utilisation de certificats X.509 pour l'authentification des utilisateurs, wolfSSL doit être compilé avec TLS activé. wolfSSH utilise le système de gestionnaire de certificats de wolfSSL pour X.509, y compris les recherches OCSP. Pour autoriser OCSP, ajoutez --enable-ocsp à la configuration de wolfSSL.

Si la majeure partie du code de wolfSSL n'est pas souhaitée, wolfSSL peut être configuré avec l'option crypto uniquement : --enable-cryptonly.

Des options de compilation supplémentaires pour wolfSSL sont disponibles dans le chapitre deux du manuel wolfSSH.

compilation

Depuis le répertoire source de wolfSSH, exécutez :

$ ./autogen.sh (si cloné depuis GitHub)
$ ./configure --with-wolfssl=[/usr/local]
$ make
$ make check

Le script autogen.sh ne doit être exécuté que la première fois après avoir cloné le dépôt. Si vous l'avez déjà exécuté ou si vous utilisez le code d'une archive source, vous devez l'ignorer.

Pour compiler sous Windows avec Visual Studio, consultez le fichier "ide/winvs/README.md".

REMARQUE : Sur les appareils à ressources limitées, DEFAULT_WINDOW_SZ peut devoir être défini à une taille inférieure. Il peut également être augmenté dans les cas d'utilisation sur bureau pour faciliter les transferts de fichiers volumineux. Par défaut, les canaux sont configurés pour recevoir jusqu'à 128kB de données avant d'envoyer un message d'ajustement de fenêtre de canal. Un exemple de définition d'une taille de fenêtre pour les nouveaux canaux serait le suivant ./configure CPPFLAGS="-DDEFAULT_WINDOW_SZ=16384"

Pour les plateformes Linux 32 bits, vous pouvez ajouter la prise en charge des fichiers > 2GB en compilant avec CFLAGS=-D_FILE_OFFSET_BITS=64.

exemples

Le répertoire examples contient un echoserver auquel n'importe quel client devrait pouvoir se connecter. Depuis le terminal, exécutez :

$ ./examples/echoserver/echoserver -f

L'option -f active le mode echo uniquement. Depuis un autre terminal, exécutez :

$ ssh jill@localhost -p 22222

Lorsque le mot de passe est demandé, entrez "upthehill". Le serveur enverra une bannière prédéfinie au client :

wolfSSH Example Echo Server

Les caractères saisis dans le client seront renvoyés à l'écran par le serveur. Si les caractères sont renvoyés deux fois, le client a l'écho local activé. L'echoserver n'est pas un véritable terminal, donc la traduction CR/LF ne fonctionnera pas comme prévu.

Les caractères de contrôle suivants déclencheront des actions spéciales dans l'echoserver :

  • CTRL-C : Terminer la connexion.
  • CTRL-E : Afficher quelques statistiques de session.
  • CTRL-F : Déclencher un nouvel échange de clés.

notes de test

Après avoir cloné le dépôt, assurez-vous de rendre les clés privées de test en lecture seule pour l'utilisateur, sinon ssh vous demandera de le faire.

$ chmod 0600 ./keys/gretel-key-rsa.pem ./keys/hansel-key-rsa.pem \
             ./keys/gretel-key-ecc.pem ./keys/hansel-key-ecc.pem

L'authentification auprès de l'echoserver d'exemple peut se faire avec un mot de passe ou une clé publique. Pour utiliser un mot de passe, la ligne de commande :

$ ssh -p 22222 USER@localhost

Où les paires USER et mot de passe sont :

jill:upthehill
jack:fetchapail

Pour utiliser l'authentification par clé publique, utilisez la ligne de commande :

$ ssh -i ./keys/USER-key-TYPE.pem -p 22222 USER@localhost

Où USER peut être gretel ou hansel, et TYPE est rsa ou ecc.

Gardez à l'esprit que l'echoserver possède plusieurs faux comptes dans sa fonction de rappel wsUserAuth(). (jack, jill, hansel et gretel) Lorsque la prise en charge du shell est activée, ces faux comptes ne fonctionneront pas. Ils n'existent pas dans le fichier passwd du système. Les utilisateurs s'authentifieront, mais le serveur renverra une erreur car ils n'existent pas dans le système. Vous pouvez ajouter votre propre nom d'utilisateur à la liste des mots de passe ou des clés publiques dans l'echoserver. Ce compte sera connecté à un shell démarré par l'echoserver avec les privilèges de l'utilisateur exécutant echoserver.

OUTILS D'EXEMPLE

wolfSSH est livré avec quelques outils d'exemple à des fins de test et pour démontrer l'interopérabilité avec d'autres implémentations SSH.

echoserver

L'echoserver est la pièce maîtresse de wolfSSH. À l'origine, il ne permettait de s'authentifier qu'avec l'un des comptes prédéfinis et répétait les caractères saisis. Lors de l'activation de la prise en charge du shell, il peut lancer un shell utilisateur. Il aura besoin d'un nom d'utilisateur réel sur la machine et d'une fonction de rappel d'authentification utilisateur mise à jour pour valider les identifiants. L'echoserver peut également gérer les connexions SCP et SFTP.

L'outil echoserver accepte les options de ligne de commande suivantes :

-1             quitter après une seule (unique) connexion
-e             attendre une clé publique ECC du client
-E             utiliser une clé privée ECC
-f             echo de l'entrée
-p <num>       port d'écoute, par défaut 22222
-N             utiliser des sockets non bloquants
-d <string>    définir le répertoire personnel pour les connexions SFTP
-j <file>      charger une clé publique à accepter du pair

client

Le client établit une connexion à un serveur SSH. Dans son mode le plus simple, il envoie la chaîne "Hello, wolfSSH!" au serveur, affiche la réponse, puis quitte. Avec l'option pseudo terminal, le client sera un véritable client.

L'outil client accepte les options de ligne de commande suivantes :

-h <host>      hôte auquel se connecter, par défaut 127.0.0.1
-p <num>       port de connexion, par défaut 22222
-u <username>  nom d'utilisateur pour l'authentification (REQUIS)
-P <password>  mot de passe pour le nom d'utilisateur, demandé si omis
-e             utiliser une clé ecc d'exemple pour l'utilisateur
-i <filename>  nom de fichier pour la clé privée de l'utilisateur
-j <filename>  nom de fichier pour la clé publique de l'utilisateur
-x             quitter après une connexion réussie sans effectuer de
               lecture/écriture
-N             utiliser des sockets non bloquants
-t             utiliser un pseudo terminal
-c <command>   exécute une commande distante et redirige stdin/stdout
-a             Tenter d'utiliser SSH-AGENT

portfwd

L'outil portfwd établit une connexion à un serveur SSH et configure un écouteur pour la redirection de port locale ou demande un écouteur pour la redirection de port distante. Après une connexion, l'outil se termine.

L'outil portfwd accepte les options de ligne de commande suivantes :

Télécharger l’outil