hacktricks/network-services-pentesting/pentesting-ssh.md

339 lines
24 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 22 - Pentesting SSH/SFTP
<details>
<summary><strong>Lernen Sie AWS-Hacking von Null auf Held mit</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Andere Möglichkeiten, HackTricks zu unterstützen:
* Wenn Sie Ihr **Unternehmen in HackTricks beworben sehen möchten** oder **HackTricks im PDF-Format herunterladen möchten**, überprüfen Sie die [**ABONNEMENTPLÄNE**](https://github.com/sponsors/carlospolop)!
* Holen Sie sich das [**offizielle PEASS & HackTricks-Merchandise**](https://peass.creator-spring.com)
* Entdecken Sie [**The PEASS Family**](https://opensea.io/collection/the-peass-family), unsere Sammlung exklusiver [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Treten Sie der** 💬 [**Discord-Gruppe**](https://discord.gg/hRep4RUj7f) oder der [**Telegram-Gruppe**](https://t.me/peass) bei oder **folgen** Sie uns auf **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die** [**HackTricks**](https://github.com/carlospolop/hacktricks) und [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github Repositories einreichen.
</details>
<figure><img src="../.gitbook/assets/i3.png" alt=""><figcaption></figcaption></figure>
**Bug-Bounty-Tipp**: **Melden Sie sich an** bei **Intigriti**, einer Premium-**Bug-Bounty-Plattform, die von Hackern für Hacker erstellt wurde**! Treten Sie uns bei [**https://go.intigriti.com/hacktricks**](https://go.intigriti.com/hacktricks) heute bei und beginnen Sie, Prämien von bis zu **100.000 $** zu verdienen!
{% embed url="https://go.intigriti.com/hacktricks" %}
## Grundlegende Informationen
**SSH (Secure Shell oder Secure Socket Shell)** ist ein Netzwerkprotokoll, das eine sichere Verbindung zu einem Computer über ein unsicheres Netzwerk ermöglicht. Es ist wesentlich für die Wahrung der Vertraulichkeit und Integrität von Daten beim Zugriff auf entfernte Systeme.
**Standardport:** 22
```
22/tcp open ssh syn-ack
```
**SSH-Server:**
* [openSSH](http://www.openssh.org) OpenBSD SSH, in BSD, Linux-Distributionen und Windows seit Windows 10 enthalten
* [Dropbear](https://matt.ucc.asn.au/dropbear/dropbear.html) SSH-Implementierung für Umgebungen mit geringem Speicher und Prozessorressourcen, in OpenWrt enthalten
* [PuTTY](https://www.chiark.greenend.org.uk/\~sgtatham/putty/) SSH-Implementierung für Windows, der Client wird häufig verwendet, die Verwendung des Servers ist seltener
* [CopSSH](https://www.itefix.net/copssh) Implementierung von OpenSSH für Windows
**SSH-Bibliotheken (Serverseitige Implementierung):**
* [libssh](https://www.libssh.org) plattformübergreifende C-Bibliothek, die das SSHv2-Protokoll implementiert, mit Bindungen in [Python](https://github.com/ParallelSSH/ssh-python), [Perl](https://github.com/garnier-quentin/perl-libssh/) und [R](https://github.com/ropensci/ssh); wird von KDE für sftp und von GitHub für die git SSH-Infrastruktur verwendet
* [wolfSSH](https://www.wolfssl.com/products/wolfssh/) SSHv2-Serverbibliothek in ANSI C geschrieben und für eingebettete, RTOS- und ressourcenbeschränkte Umgebungen ausgelegt
* [Apache MINA SSHD](https://mina.apache.org/sshd-project/index.html) Die Apache SSHD-Java-Bibliothek basiert auf Apache MINA
* [paramiko](https://github.com/paramiko/paramiko) Python SSHv2-Protokollbibliothek
## Enumeration
### Banner Grabbing
```bash
nc -vn <IP> 22
```
### Automatisierte ssh-audit
ssh-audit ist ein Tool zur Überprüfung der Konfiguration von SSH-Servern und -Clients.
[https://github.com/jtesta/ssh-audit](https://github.com/jtesta/ssh-audit) ist ein aktualisierter Fork von [https://github.com/arthepsy/ssh-audit/](https://github.com/arthepsy/ssh-audit/)
**Funktionen:**
* Unterstützung für SSH1- und SSH2-Protokollserver;
* Analyse der SSH-Clientkonfiguration;
* Banner abrufen, Gerät oder Software und Betriebssystem erkennen, Komprimierung erkennen;
* Schlüsselaustausch-, Hostschlüssel-, Verschlüsselungs- und Nachrichtenauthentifizierungsalgorithmen sammeln;
* Ausgabe von Algorithmusinformationen (verfügbar seit, entfernt/deaktiviert, unsicher/schwach/veraltet, usw.);
* Ausgabe von Algorithmusempfehlungen (anfügen oder entfernen basierend auf erkannter Softwareversion);
* Ausgabe von Sicherheitsinformationen (bezogene Probleme, zugewiesene CVE-Liste, usw.);
* Analyse der SSH-Versionkompatibilität basierend auf Algorithmusinformationen;
* Historische Informationen von OpenSSH, Dropbear SSH und libssh;
* läuft auf Linux und Windows;
* keine Abhängigkeiten
```bash
usage: ssh-audit.py [-1246pbcnjvlt] <host>
-1, --ssh1 force ssh version 1 only
-2, --ssh2 force ssh version 2 only
-4, --ipv4 enable IPv4 (order of precedence)
-6, --ipv6 enable IPv6 (order of precedence)
-p, --port=<port> port to connect
-b, --batch batch output
-c, --client-audit starts a server on port 2222 to audit client
software config (use -p to change port;
use -t to change timeout)
-n, --no-colors disable colors
-j, --json JSON output
-v, --verbose verbose output
-l, --level=<level> minimum output level (info|warn|fail)
-t, --timeout=<secs> timeout (in seconds) for connection and reading
(default: 5)
$ python3 ssh-audit <IP>
```
### Öffentlicher SSH-Schlüssel des Servers
[Hier in Aktion ansehen (Asciinema)](https://asciinema.org/a/96ejZKxpbuupTK9j7h8BdClzp)
```bash
ssh-keyscan -t rsa <IP> -p <PORT>
```
### Schwache Verschlüsselungsalgorithmen
Dies wird standardmäßig von **nmap** entdeckt. Sie können jedoch auch **sslcan** oder **sslyze** verwenden.
### Nmap-Skripte
```bash
nmap -p22 <ip> -sC # Send default nmap scripts for SSH
nmap -p22 <ip> -sV # Retrieve version
nmap -p22 <ip> --script ssh2-enum-algos # Retrieve supported algorythms
nmap -p22 <ip> --script ssh-hostkey --script-args ssh_hostkey=full # Retrieve weak keys
nmap -p22 <ip> --script ssh-auth-methods --script-args="ssh.user=root" # Check authentication methods
```
### Shodan
* `ssh`
## Brute-Force von Benutzernamen, Passwörtern und privaten Schlüsseln
### Benutzername Enumeration
In einigen Versionen von OpenSSH können Sie einen Timing-Angriff durchführen, um Benutzer zu enumerieren. Sie können ein Metasploit-Modul verwenden, um dies auszunutzen:
```
msf> use scanner/ssh/ssh_enumusers
```
### [Brute Force](../generic-methodologies-and-resources/brute-force.md#ssh)
Einige gängige SSH-Anmeldeinformationen finden Sie [hier](https://github.com/danielmiessler/SecLists/blob/master/Passwords/Default-Credentials/ssh-betterdefaultpasslist.txt) und [hier](https://github.com/danielmiessler/SecLists/blob/master/Passwords/Common-Credentials/top-20-common-SSH-passwords.txt) und unten.
### Brute Force für private Schlüssel
Wenn Sie einige SSH-Private Keys kennen, die verwendet werden könnten... probieren wir es aus. Sie können das nmap-Skript verwenden:
```
https://nmap.org/nsedoc/scripts/ssh-publickey-acceptance.html
```
Oder das MSF-Hilfsmodul:
```
msf> use scanner/ssh/ssh_identify_pubkeys
```
Oder verwenden Sie `ssh-keybrute.py` (native Python3, leichtgewichtig und mit aktivierten Legacy-Algorithmen): [snowdroppe/ssh-keybrute](https://github.com/snowdroppe/ssh-keybrute).
#### Bekannte schlechte Schlüssel können hier gefunden werden:
{% embed url="https://github.com/rapid7/ssh-badkeys/tree/master/authorized" %}
#### Schwache SSH-Schlüssel / Vorhersehbarer PRNG von Debian
Einige Systeme weisen bekannte Schwachstellen im Zufallsseed auf, der zur Generierung kryptografischer Materialien verwendet wird. Dies kann zu einem dramatisch reduzierten Schlüsselraum führen, der durch Brute-Force-Angriffe geknackt werden kann. Vorab generierte Schlüsselsätze, die auf Debian-Systemen mit schwachem PRNG generiert wurden, sind hier verfügbar: [g0tmi1k/debian-ssh](https://github.com/g0tmi1k/debian-ssh).
Sie sollten hier nach gültigen Schlüsseln für die Opfermaschine suchen.
### Kerberos
**crackmapexec** verwendet das `ssh`-Protokoll und kann die Option `--kerberos` verwenden, um **über Kerberos zu authentifizieren**.\
Für weitere Informationen führen Sie `crackmapexec ssh --help` aus.
## Standardanmeldeinformationen
| **Hersteller** | **Benutzernamen** | **Passwörter** |
| -------------- | ----------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| APC | apc, Gerät | apc |
| Brocade | admin | admin123, password, brocade, fibranne |
| Cisco | admin, cisco, enable, hsa, pix, pnadmin, ripeop, root, shelladmin | admin, Admin123, default, password, secur4u, cisco, Cisco, \_Cisco, cisco123, C1sco!23, Cisco123, Cisco1234, TANDBERG, change\_it, 12345, ipics, pnadmin, diamond, hsadb, c, cc, attack, blender, changeme |
| Citrix | root, nsroot, nsmaint, vdiadmin, kvm, cli, admin | C1trix321, nsroot, nsmaint, kaviza, kaviza123, freebsd, public, rootadmin, wanscaler |
| D-Link | admin, Benutzer | private, admin, Benutzer |
| Dell | root, user1, admin, vkernel, cli | calvin, 123456, password, vkernel, Stor@ge!, admin |
| EMC | admin, root, sysadmin | EMCPMAdm7n, Password#1, Password123#, sysadmin, changeme, emc |
| HP/3Com | admin, root, vcx, app, spvar, manage, hpsupport, opc\_op | admin, password, hpinvent, iMC123, pvadmin, passw0rd, besgroup, vcx, nice, access, config, 3V@rpar, 3V#rpar, procurve, badg3r5, OpC\_op, !manage, !admin |
| Huawei | admin, root | 123456, admin, root, Admin123, Admin@storage, Huawei12#$, HwDec@01, hwosta2.0, HuaWei123, fsp200@HW, huawei123 |
| IBM | USERID, admin, manager, mqm, db2inst1, db2fenc1, dausr1, db2admin, iadmin, system, device, ufmcli, customer | PASSW0RD, passw0rd, admin, password, Passw8rd, iadmin, apc, 123456, cust0mer |
| Juniper | netscreen | netscreen |
| NetApp | admin | netapp123 |
| Oracle | root, oracle, oravis, applvis, ilom-admin, ilom-operator, nm2user | changeme, ilom-admin, ilom-operator, welcome1, oracle |
| VMware | vi-admin, root, hqadmin, vmware, admin | vmware, vmw@re, hqadmin, default |
## SSH-MitM
Wenn Sie sich im lokalen Netzwerk wie das Opfer befinden, das sich mit dem SSH-Server mit Benutzername und Passwort verbinden wird, könnten Sie versuchen, **einen MitM-Angriff durchzuführen, um diese Anmeldeinformationen zu stehlen:**
**Angriffsweg:**
* **Verkehrsumleitung:** Der Angreifer **leitet** den Verkehr des Opfers auf seine Maschine um und **interceptiert** somit den Verbindungsversuch zum SSH-Server.
* **Interception und Protokollierung:** Die Maschine des Angreifers fungiert als **Proxy** und **erfasst** die Anmeldeinformationen des Benutzers, indem sie vorgibt, der legitime SSH-Server zu sein.
* **Befehlsausführung und Weiterleitung:** Schließlich **protokolliert der Server des Angreifers die Anmeldeinformationen** des Benutzers, **leitet die Befehle an den echten SSH-Server weiter**, **führt** sie aus und **sendet die Ergebnisse zurück** an den Benutzer, wodurch der Prozess nahtlos und legitim erscheint.
[**SSH MITM**](https://github.com/jtesta/ssh-mitm) tut genau das, was oben beschrieben ist.
Um den tatsächlichen MitM durchzuführen, könnten Sie Techniken wie ARP-Spoofing, DNS-Spoofing oder andere in den [**Network Spoofing attacks**](../generic-methodologies-and-resources/pentesting-network/#spoofing) beschriebenen Techniken verwenden.
## SSH-Snake
Wenn Sie ein Netzwerk mithilfe entdeckter SSH-Privatschlüssel auf Systemen durchqueren möchten, wobei jeder private Schlüssel auf jedem System für neue Hosts verwendet wird, dann ist [**SSH-Snake**](https://github.com/MegaManSec/SSH-Snake) das Richtige für Sie.
SSH-Snake führt automatisch und rekursiv folgende Aufgaben aus:
1. Auf dem aktuellen System werden alle SSH-Privatschlüssel gefunden,
2. Auf dem aktuellen System werden alle Hosts oder Ziele (Benutzer@Host) gefunden, die die privaten Schlüssel akzeptieren könnten,
3. Es wird versucht, sich mit allen Zielen unter Verwendung aller entdeckten privaten Schlüssel zu verbinden,
4. Wenn eine Verbindung zu einem Ziel erfolgreich hergestellt wird, werden die Schritte #1 - #4 auf dem verbundenen System wiederholt.
Es ist vollständig selbstreplizierend und selbstverbreitend - und vollständig ohne Dateien.
## Konfigurationsfehler
### Root-Anmeldung
Es ist üblich, dass SSH-Server die Root-Benutzeranmeldung standardmäßig zulassen, was ein erhebliches Sicherheitsrisiko darstellt. **Das Deaktivieren der Root-Anmeldung** ist ein entscheidender Schritt zur Sicherung des Servers. Unberechtigter Zugriff mit administrativen Rechten und Brute-Force-Angriffe können durch diese Änderung abgemildert werden.
**Um die Root-Anmeldung in OpenSSH zu deaktivieren:**
1. **Bearbeiten Sie die SSH-Konfigurationsdatei** mit: `sudoedit /etc/ssh/sshd_config`
2. **Ändern Sie die Einstellung** von `#PermitRootLogin yes` zu **`PermitRootLogin no`**.
3. **Laden Sie die Konfiguration neu** mit: `sudo systemctl daemon-reload`
4. **Starten Sie den SSH-Server neu**, um die Änderungen anzuwenden: `sudo systemctl restart sshd`
### SFTP-Brute-Force
* [**SFTP-Brute-Force**](../generic-methodologies-and-resources/brute-force.md#sftp)
### SFTP-Befehlsausführung
Es kommt häufig zu einem Fehler bei SFTP-Einrichtungen, bei denen Administratoren möchten, dass Benutzer Dateien austauschen, ohne den Remote-Shell-Zugriff zu aktivieren. Trotz der Festlegung von Benutzern mit nicht-interaktiven Shells (z. B. `/usr/bin/nologin`) und der Beschränkung auf ein bestimmtes Verzeichnis bleibt eine Sicherheitslücke bestehen. **Benutzer können diese Einschränkungen umgehen**, indem sie unmittelbar nach dem Einloggen die Ausführung eines Befehls (wie `/bin/bash`) anfordern, bevor ihr bestimmter nicht-interaktiver Shell übernimmt. Dies ermöglicht eine nicht autorisierte Befehlsausführung, die die beabsichtigten Sicherheitsmaßnahmen untergräbt.
[Beispiel von hier](https://community.turgensec.com/ssh-hacking-guide/):
```bash
ssh -v noraj@192.168.1.94 id
...
Password:
debug1: Authentication succeeded (keyboard-interactive).
Authenticated to 192.168.1.94 ([192.168.1.94]:22).
debug1: channel 0: new [client-session]
debug1: Requesting no-more-sessions@openssh.com
debug1: Entering interactive session.
debug1: pledge: network
debug1: client_input_global_request: rtype hostkeys-00@openssh.com want_reply 0
debug1: Sending command: id
debug1: client_input_channel_req: channel 0 rtype exit-status reply 0
debug1: client_input_channel_req: channel 0 rtype eow@openssh.com reply 0
uid=1000(noraj) gid=100(users) groups=100(users)
debug1: channel 0: free: client-session, nchannels 1
Transferred: sent 2412, received 2480 bytes, in 0.1 seconds
Bytes per second: sent 43133.4, received 44349.5
debug1: Exit status 0
$ ssh noraj@192.168.1.94 /bin/bash
```
Hier ist ein Beispiel für eine sichere SFTP-Konfiguration (`/etc/ssh/sshd_config` - openSSH) für den Benutzer `noraj`:
```
Match User noraj
ChrootDirectory %h
ForceCommand internal-sftp
AllowTcpForwarding no
PermitTunnel no
X11Forwarding no
PermitTTY no
```
Diese Konfiguration erlaubt nur SFTP: Shell-Zugriff wird deaktiviert, indem der Startbefehl erzwungen wird und der TTY-Zugriff deaktiviert wird, aber auch alle Arten von Portweiterleitungen oder Tunneling werden deaktiviert.
### SFTP Tunneling
Wenn Sie Zugriff auf einen SFTP-Server haben, können Sie Ihren Datenverkehr auch durch diesen tunneln, beispielsweise unter Verwendung der gängigen Portweiterleitung:
```bash
sudo ssh -L <local_port>:<remote_host>:<remote_port> -N -f <username>@<ip_compromised>
```
### SFTP Symlink
Der **sftp**-Befehl verfügt über den Befehl "**symlink**". Daher können Sie, wenn Sie **Schreibrechte** in einem bestimmten Ordner haben, **Symlinks** von **anderen Ordnern/Dateien** erstellen. Da Sie wahrscheinlich in einem Chroot **gefangen** sind, wird dies für Sie **nicht besonders nützlich** sein, aber wenn Sie auf den erstellten **Symlink** von einem **nicht-chroot**-**Dienst** aus zugreifen können (zum Beispiel, wenn Sie auf den Symlink über das Web zugreifen können), könnten Sie die **durch den Webbrowser verknüpften Dateien öffnen**.
Um beispielsweise einen **Symlink** von einer neuen Datei **"**_**froot**_**" zu "**_**/**_**" zu erstellen**:
```bash
sftp> symlink / froot
```
### Authentifizierungsmethoden
In einer Umgebung mit hoher Sicherheit ist es eine gängige Praxis, nur die Authentifizierungsmethoden auf Schlüsselbasis oder Zwei-Faktor-Authentifizierung zu aktivieren, anstatt der einfachen Passwort-basierten Authentifizierung. Oft werden jedoch die stärkeren Authentifizierungsmethoden aktiviert, ohne die schwächeren zu deaktivieren. Ein häufiger Fall ist die Aktivierung von `publickey` in der openSSH-Konfiguration und die Festlegung als Standardmethode, ohne `password` zu deaktivieren. Daher kann ein Angreifer durch Verwendung des Verbose-Modus des SSH-Clients sehen, dass eine schwächere Methode aktiviert ist:
```bash
ssh -v 192.168.1.94
OpenSSH_8.1p1, OpenSSL 1.1.1d 10 Sep 2019
...
debug1: Authentications that can continue: publickey,password,keyboard-interactive
```
Zum Beispiel, wenn ein Authentifizierungsfehlerlimit festgelegt ist und Sie nie die Möglichkeit haben, die Passwortmethode zu erreichen, können Sie die `PreferredAuthentications`-Option verwenden, um die Verwendung dieser Methode zu erzwingen.
```bash
ssh -v 192.168.1.94 -o PreferredAuthentications=password
...
debug1: Next authentication method: password
```
Überprüfen Sie die SSH-Serverkonfiguration, um sicherzustellen, dass nur erwartete Methoden autorisiert sind. Die Verwendung des Verbose-Modus auf dem Client kann helfen, die Wirksamkeit der Konfiguration zu sehen.
### Konfigurationsdateien
```bash
ssh_config
sshd_config
authorized_keys
ssh_known_hosts
known_hosts
id_rsa
```
## Fuzzing
* [https://packetstormsecurity.com/files/download/71252/sshfuzz.txt](https://packetstormsecurity.com/files/download/71252/sshfuzz.txt)
* [https://www.rapid7.com/db/modules/auxiliary/fuzzers/ssh/ssh\_version\_2](https://www.rapid7.com/db/modules/auxiliary/fuzzers/ssh/ssh\_version\_2)
## Referenzen
* Sie finden interessante Anleitungen zur Absicherung von SSH unter [https://www.ssh-audit.com/hardening\_guides.html](https://www.ssh-audit.com/hardening\_guides.html)
* [https://community.turgensec.com/ssh-hacking-guide](https://community.turgensec.com/ssh-hacking-guide)
<figure><img src="../.gitbook/assets/i3.png" alt=""><figcaption></figcaption></figure>
**Bug-Bounty-Tipp**: **Registrieren** Sie sich bei **Intigriti**, einer Premium-**Bug-Bounty-Plattform, die von Hackern für Hacker erstellt wurde**! Treten Sie uns noch heute bei [**https://go.intigriti.com/hacktricks**](https://go.intigriti.com/hacktricks) bei und beginnen Sie, Prämien von bis zu **$100.000** zu verdienen!
{% embed url="https://go.intigriti.com/hacktricks" %}
## HackTricks Automatische Befehle
```
Protocol_Name: SSH
Port_Number: 22
Protocol_Description: Secure Shell Hardening
Entry_1:
Name: Hydra Brute Force
Description: Need Username
Command: hydra -v -V -u -l {Username} -P {Big_Passwordlist} -t 1 {IP} ssh
Entry_2:
Name: consolesless mfs enumeration
Description: SSH enumeration without the need to run msfconsole
Note: sourced from https://github.com/carlospolop/legion
Command: msfconsole -q -x 'use auxiliary/scanner/ssh/ssh_version; set RHOSTS {IP}; set RPORT 22; run; exit' && msfconsole -q -x 'use scanner/ssh/ssh_enumusers; set RHOSTS {IP}; set RPORT 22; run; exit' && msfconsole -q -x 'use auxiliary/scanner/ssh/juniper_backdoor; set RHOSTS {IP}; set RPORT 22; run; exit'
```
<details>
<summary><strong>Erlernen Sie AWS-Hacking von Null auf Held mit</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Andere Möglichkeiten, HackTricks zu unterstützen:
* Wenn Sie Ihr **Unternehmen in HackTricks beworben sehen möchten** oder **HackTricks als PDF herunterladen möchten**, überprüfen Sie die [**ABONNEMENTPLÄNE**](https://github.com/sponsors/carlospolop)!
* Holen Sie sich das [**offizielle PEASS & HackTricks-Merchandise**](https://peass.creator-spring.com)
* Entdecken Sie [**The PEASS Family**](https://opensea.io/collection/the-peass-family), unsere Sammlung exklusiver [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Treten Sie der** 💬 [**Discord-Gruppe**](https://discord.gg/hRep4RUj7f) oder der [**Telegram-Gruppe**](https://t.me/peass) bei oder **folgen** Sie uns auf **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die** [**HackTricks**](https://github.com/carlospolop/hacktricks) und [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github Repositories einreichen.
</details>