Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

FeedsKontaktDatenschutz© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
wolfssh — Kleine, portable, einbettbare SSHv2-Client- und -Server-Bibliothek in C mit SCP, SFTP, Portweiterleitung und Post-Quanten-Schlüsselaustausch für eingebettete Systeme und IoT-Systeme. | Kitploit
Tools/GitHubGitHub/wolfssl/wolfssh
DefensivwerkzeugeEmbedded-System-SicherheitVerschlüsselungs-/EntschlüsselungstoolsIoT-SicherheitNetzwerksicherheitKryptographieDienstprogramme & FrameworksHardware- & IoT-SicherheitAuthentifizierungRemote-Access-Tool
GitHub
4991226vor 1 TagVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
wolfssl/wolfssh

wolfssh

Kleine, portable, einbettbare SSHv2-Client- und -Server-Bibliothek in C mit SCP, SFTP, Portweiterleitung und Post-Quanten-Schlüsselaustausch für eingebettete Systeme und IoT-Systeme.

Repository anzeigenWebseite
Teilen

WOLFSSH

wolfSSLs einbettbarer SSH-Server wolfSSH-Handbuch

Abhängigkeiten

wolfSSH ist abhängig von wolfCrypt, das als Teil von wolfSSL zu finden ist. Das Folgende ist die einfachste Konfiguration von wolfSSL, um wolfSSH zu aktivieren.

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

Auf manchen Systemen ist der optionale Befehl ldconfig nach der Installation erforderlich.

Um die Schlüsselgenerierungsfunktion in wolfSSH zu nutzen, muss wolfSSL mit keygen konfiguriert werden: --enable-keygen.

Bei der Verwendung von X.509-Zertifikaten zur Benutzerauthentifizierung muss wolfSSL mit aktiviertem TLS gebaut werden. wolfSSH verwendet das Zertifikatsverwaltungssystem von wolfSSL für X.509, einschließlich OCSP-Abfragen. Um OCSP zu ermöglichen, fügen Sie --enable-ocsp zur wolfSSL-Konfiguration hinzu.

Wenn der Großteil des wolfSSL-Codes nicht gewünscht ist, kann wolfSSL mit der Nur-Krypto-Option konfiguriert werden: --enable-cryptonly.

Weitere Build-Optionen für wolfSSL finden Sie in Kapitel zwei des wolfSSH-Handbuchs.

Erstellen

Führen Sie aus dem wolfSSH-Quellverzeichnis aus:

$ ./autogen.sh (falls von GitHub geklont)
$ ./configure --with-wolfssl=[/usr/local]
$ make
$ make check

Das Skript autogen.sh muss nur beim ersten Mal nach dem Klonen des Repositorys ausgeführt werden. Wenn Sie es bereits ausgeführt haben oder Code aus einem Quellarchiv verwenden, sollten Sie es überspringen.

Für das Erstellen unter Windows mit Visual Studio siehe die Datei "ide/winvs/README.md".

HINWEIS: Auf ressourcenbeschränkten Geräten muss möglicherweise DEFAULT_WINDOW_SZ auf eine niedrigere Größe gesetzt werden. Er kann auch in Desktop-Anwendungsfällen erhöht werden, um große Dateiübertragungen zu unterstützen. Standardmäßig sind Kanäle so eingestellt, dass sie bis zu 128 kB an Daten empfangen, bevor eine Kanal-Fensteranpassungsnachricht gesendet wird. Ein Beispiel für das Festlegen einer Fenstergröße für neue Kanäle wäre wie folgt: ./configure CPPFLAGS="-DDEFAULT_WINDOW_SZ=16384"

Für 32-Bit-Linux-Plattformen können Sie Unterstützung für Dateien > 2 GB hinzufügen, indem Sie mit CFLAGS=-D_FILE_OFFSET_BITS=64 kompilieren.

Beispiele

Das Verzeichnis examples enthält einen Echoserver, mit dem sich jeder Client verbinden können sollte. Führen Sie im Terminal aus:

$ ./examples/echoserver/echoserver -f

Die Option -f aktiviert den Nur-Echo-Modus. Führen Sie in einem anderen Terminal aus:

$ ssh jill@localhost -p 22222

Wenn Sie zur Eingabe eines Passworts aufgefordert werden, geben Sie "upthehill" ein. Der Server sendet ein vorgefertigtes Banner an den Client:

wolfSSH Example Echo Server

In den Client eingegebene Zeichen werden vom Server auf dem Bildschirm wiedergegeben. Wenn die Zeichen zweimal wiedergegeben werden, hat der Client die lokale Echo-Funktion aktiviert. Der Echoserver ist kein richtiges Terminal, daher funktioniert die CR/LF- Übersetzung nicht wie erwartet.

Die folgenden Steuerzeichen lösen im Echoserver spezielle Aktionen aus:

  • STRG-C: Die Verbindung beenden.
  • STRG-E: Einige Sitzungsstatistiken ausgeben.
  • STRG-F: Einen neuen Schlüsselaustausch auslösen.

Testhinweise

Stellen Sie nach dem Klonen des Repositorys sicher, dass die privaten Testsclüssel für den Benutzer schreibgeschützt sind, andernfalls wird ssh Ihnen sagen, dass Sie dies tun sollen.

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

Die Authentifizierung gegenüber dem Beispiel-Echoserver kann mit einem Passwort oder öffentlichen Schlüssel erfolgen. Um ein Passwort zu verwenden, lautet die Befehlszeile:

$ ssh -p 22222 USER@localhost

Wobei die USER- und Passwort-Paare sind:

jill:upthehill
jack:fetchapail

Um die Authentifizierung mit öffentlichem Schlüssel zu verwenden, nutzen Sie die Befehlszeile:

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

Wobei USER gretel oder hansel sein kann und TYPE rsa oder ecc.

Beachten Sie, dass der Echoserver mehrere gefälschte Konten in seiner wsUserAuth()-Callback-Funktion hat. (jack, jill, hansel und gretel) Wenn die Shell-Unterstützung aktiviert ist, funktionieren diese gefälschten Konten nicht. Sie existieren nicht in der passwd-Datei des Systems. Die Benutzer werden sich authentifizieren, aber der Server wird einen Fehler ausgeben, weil sie im System nicht existieren. Sie können Ihren eigenen Benutzernamen zur Passwort- oder öffentlichen Schlüsselliste im Echoserver hinzufügen. Dieses Konto wird in eine Shell eingeloggt, die vom Echoserver mit den Privilegien des Benutzers gestartet wird, der den Echoserver ausführt.

BEISPIELWERKZEUGE

wolfSSH wird mit einigen Beispielwerkzeugen für Testzwecke und zur Demonstration der Interoperabilität mit anderen SSH-Implementierungen geliefert.

echoserver

Der Echoserver ist das Arbeitstier von wolfSSH. Ursprünglich erlaubte er nur die Authentifizierung mit einem der vorgefertigten Konten und wiederholte die eingegebenen Zeichen. Wenn die Shell-Unterstützung aktiviert ist, kann er eine Benutzer-Shell starten. Er benötigt einen tatsächlichen Benutzernamen auf dem Rechner und eine aktualisierte Benutzerauthentifizierungs-Callback-Funktion, um die Anmeldedaten zu validieren. Der Echoserver kann auch SCP- und SFTP-Verbindungen verarbeiten.

Das Echoserver-Werkzeug akzeptiert die folgenden Befehlszeilenoptionen:

-1             nach einer einzelnen (einen) Verbindung beenden
-e             ECC öffentlichen Schlüssel vom Client erwarten
-E             ECC privaten Schlüssel verwenden
-f             Eingabe wiedergeben
-p <num>       Port, auf dem akzeptiert wird, Standard 22222
-N             nicht blockierende Sockets verwenden
-d <string>    das Home-Verzeichnis für SFTP-Verbindungen festlegen
-j <file>      einen öffentlichen Schlüssel laden, der vom Peer akzeptiert wird

client

Der Client stellt eine Verbindung zu einem SSH-Server her. Im einfachsten Modus sendet er die Zeichenkette "Hello, wolfSSH!" an den Server, gibt die Antwort aus und beendet sich dann. Mit der Pseudo-Terminal-Option wird der Client ein echter Client.

Das Client-Werkzeug akzeptiert die folgenden Befehlszeilenoptionen:

-h <host>      Host, mit dem verbunden werden soll, Standard 127.0.0.1
-p <num>       Port, mit dem verbunden werden soll, Standard 22222
-u <username>  Benutzername, als der authentifiziert werden soll (ERFORDERLICH)
-P <password>  Passwort für den Benutzernamen, wird abgefragt, wenn weggelassen
-e             Beispiel-ECC-Schlüssel für den Benutzer verwenden
-i <filename>  Dateiname für den privaten Schlüssel des Benutzers
-j <filename>  Dateiname für den öffentlichen Schlüssel des Benutzers
-x             nach erfolgreicher Verbindung beenden, ohne
               Lesen/Schreiben
-N             nicht blockierende Sockets verwenden
-t             Pseudo-Terminal verwenden
-c <command>   führt einen entfernten Befehl aus und leitet stdin/stdout weiter
-a             Versuch, SSH-AGENT zu verwenden

portfwd

Das portfwd-Werkzeug stellt eine Verbindung zu einem SSH-Server her und richtet einen Listener für lokale Portweiterleitung ein oder fordert einen Listener für entfernte Port- weiterleitung an. Nach einer Verbindung beendet sich das Werkzeug.

Das portfwd-Werkzeug akzeptiert die folgenden Befehlszeilenoptionen:

Tool herunterladen