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
505124134vor 10 TagenVon 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 enthalten 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 einigen Systemen ist nach der Installation der optionale Befehl ldconfig erforderlich.

Um die Schlüsselerzeugungsfunktion 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 erlauben, 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 im wolfSSH-Quellverzeichnis Folgendes 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.

Informationen zum Erstellen unter Windows mit Visual Studio finden Sie in der Datei "ide/winvs/README.md".

HINWEIS: Auf ressourcenbeschränkten Geräten muss möglicherweise DEFAULT_WINDOW_SZ auf einen kleineren Wert gesetzt werden. Er kann in Desktop-Anwendungsfällen auch 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 die 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 Folgendes aus:

$ ./examples/echoserver/echoserver -f

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

$ ssh jill@localhost -p 22222

Wenn Sie zur Eingabe eines Passworts aufgefordert werden, geben Sie "upthehill" ein. Der Server sendet einen vorgefertigten 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 das lokale Echo 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: Beendet die Verbindung.
  • STRG-E: Gibt einige Sitzungsstatistiken aus.
  • STRG-F: Löst einen neuen Schlüsselaustausch aus.

Hinweise zum Testen

Stellen Sie nach dem Klonen des Repositorys sicher, dass die privaten Testsclüssel für den Benutzer schreibgeschützt sind, andernfalls wird ssh Sie dazu auffordern.

$ 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 einem öffentlichen Schlüssel erfolgen. Um ein Passwort zu verwenden, lautet die Befehlszeile:

$ ssh -p 22222 USER@localhost

Wobei die USER- und Passwort-Paare folgende 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 ist.

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

BEISPIELWERKZEUGE

wolfSSH wird mit einigen Beispielwerkzeugen zu Testzwecken und zur Demonstration der Interoperabilität mit anderen SSH-Implementierungen ausgeliefert.

echoserver

Der echoserver ist das Arbeitstier von wolfSSH. Ursprünglich erlaubte er nur die Authentifizierung mit einem der vordefinierten Konten und wiederholte die eingegebenen Zeichen. Wenn die Shell-Unterstützung aktiviert wird, kann er eine Benutzer-Shell starten. Dafür wird ein tatsächlicher Benutzername auf dem Rechner und eine aktualisierte Benutzerauthentifizierungs-Callback-Funktion zur Validierung der Anmeldedaten benötigt. Der echoserver kann auch SCP- und SFTP-Verbindungen verarbeiten.

Das echoserver-Werkzeug akzeptiert die folgenden Kommandozeilenoptionen:

-1             nach einer einzigen (einen) Verbindung beenden
-e             ECC-Public-Key vom Client erwarten
-E             ECC-Private-Key verwenden
-f             Eingabe echoen
-p <num>       Port zum Annehmen, Standard 22222
-N             nicht-blockierende Sockets verwenden
-d <string>    Home-Verzeichnis für SFTP-Verbindungen festlegen
-j <file>      Public-Key laden, der vom Peer akzeptiert werden soll

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 Kommandozeilenoptionen:

-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 zur Authentifizierung (ERFORDERLICH)
-P <password>  Passwort für den Benutzernamen, wird bei Auslassung abgefragt
-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 Portweiterleitung an. Nach einer Verbindung beendet sich das Werkzeug.

Das portfwd-Werkzeug akzeptiert die folgenden Kommandozeilenoptionen:

Tool herunterladen