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

363 lines
24 KiB
Markdown
Raw Normal View History

2022-05-01 13:25:53 +00:00
# 22 - Pentesting SSH/SFTP
2022-04-28 16:01:33 +00:00
<details>
2024-02-10 13:03:23 +00:00
<summary><strong>Impara l'hacking di AWS da zero a eroe con</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2022-04-28 16:01:33 +00:00
2024-02-10 13:03:23 +00:00
Altri modi per supportare HackTricks:
2024-01-02 18:28:27 +00:00
2024-02-10 13:03:23 +00:00
* Se vuoi vedere la tua **azienda pubblicizzata su HackTricks** o **scaricare HackTricks in PDF** Controlla i [**PACCHETTI DI ABBONAMENTO**](https://github.com/sponsors/carlospolop)!
* Ottieni il [**merchandising ufficiale di PEASS & HackTricks**](https://peass.creator-spring.com)
* Scopri [**The PEASS Family**](https://opensea.io/collection/the-peass-family), la nostra collezione di [**NFT**](https://opensea.io/collection/the-peass-family) esclusivi
* **Unisciti al** 💬 [**gruppo Discord**](https://discord.gg/hRep4RUj7f) o al [**gruppo Telegram**](https://t.me/peass) o **seguici** su **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Condividi i tuoi trucchi di hacking inviando PR ai repository** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github.
2022-04-28 16:01:33 +00:00
</details>
<img src="../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
2022-05-24 00:07:19 +00:00
2024-02-10 13:03:23 +00:00
Se sei interessato a una **carriera nell'hacking** e vuoi hackerare l'impossibile - **stiamo assumendo!** (_richiesta competenza fluente in polacco, scritta e parlata_).
2022-05-24 00:07:19 +00:00
{% embed url="https://www.stmcyber.com/careers" %}
2024-02-10 13:03:23 +00:00
## Informazioni di base
2024-02-10 13:03:23 +00:00
**SSH (Secure Shell o Secure Socket Shell)** è un protocollo di rete che consente una connessione sicura a un computer su una rete non sicura. È essenziale per mantenere la riservatezza e l'integrità dei dati durante l'accesso a sistemi remoti.
2024-02-10 13:03:23 +00:00
**Porta predefinita:** 22
2022-04-27 08:21:36 +00:00
```
22/tcp open ssh syn-ack
```
2024-02-10 13:03:23 +00:00
**Server SSH:**
2024-02-10 13:03:23 +00:00
* [openSSH](http://www.openssh.org) - OpenBSD SSH, incluso nelle distribuzioni BSD, Linux e Windows a partire da Windows 10
* [Dropbear](https://matt.ucc.asn.au/dropbear/dropbear.html) - Implementazione SSH per ambienti con risorse di memoria e processore limitate, incluso in OpenWrt
* [PuTTY](https://www.chiark.greenend.org.uk/\~sgtatham/putty/) - Implementazione SSH per Windows, il client è comunemente utilizzato ma l'uso del server è più raro
* [CopSSH](https://www.itefix.net/copssh) - Implementazione di OpenSSH per Windows
2020-12-14 16:53:57 +00:00
2024-02-10 13:03:23 +00:00
**Librerie SSH (implementazione lato server):**
2020-12-14 16:53:57 +00:00
2024-02-10 13:03:23 +00:00
* [libssh](https://www.libssh.org) - Libreria C multipiattaforma che implementa il protocollo SSHv2 con binding in [Python](https://github.com/ParallelSSH/ssh-python), [Perl](https://github.com/garnier-quentin/perl-libssh/) e [R](https://github.com/ropensci/ssh); viene utilizzata da KDE per sftp e da GitHub per l'infrastruttura SSH di git
* [wolfSSH](https://www.wolfssl.com/products/wolfssh/) - Libreria server SSHv2 scritta in ANSI C e destinata a ambienti embedded, RTOS e con risorse limitate
* [Apache MINA SSHD](https://mina.apache.org/sshd-project/index.html) - La libreria Java Apache SSHD si basa su Apache MINA
* [paramiko](https://github.com/paramiko/paramiko) - Libreria Python per il protocollo SSHv2
2020-12-14 16:53:57 +00:00
2024-02-10 13:03:23 +00:00
## Enumerazione
2022-05-01 13:25:53 +00:00
### Banner Grabbing
```bash
nc -vn <IP> 22
```
2024-02-10 13:03:23 +00:00
### Audit automatico di ssh-audit
2024-02-10 13:03:23 +00:00
ssh-audit è uno strumento per l'audit della configurazione del server e del client ssh.
2020-09-25 08:37:19 +00:00
2024-02-10 13:03:23 +00:00
[https://github.com/jtesta/ssh-audit](https://github.com/jtesta/ssh-audit) è un fork aggiornato di [https://github.com/arthepsy/ssh-audit/](https://github.com/arthepsy/ssh-audit/)
2020-09-25 08:37:19 +00:00
2024-02-10 13:03:23 +00:00
**Caratteristiche:**
2024-02-10 13:03:23 +00:00
* Supporto per i protocolli server SSH1 e SSH2;
* Analisi della configurazione del client SSH;
* Recupero del banner, riconoscimento del dispositivo o del software e del sistema operativo, rilevamento della compressione;
* Raccolta degli algoritmi di scambio chiave, chiave host, crittografia e codice di autenticazione dei messaggi;
* Informazioni sugli algoritmi di output (disponibili da quando, rimossi/disabilitati, insicuri/deboli/obsoleti, ecc.);
* Raccomandazioni sugli algoritmi di output (aggiungi o rimuovi in base alla versione del software riconosciuta);
* Informazioni sulla sicurezza di output (problemi correlati, elenco CVE assegnato, ecc.);
* Analisi della compatibilità della versione SSH basata sulle informazioni degli algoritmi;
* Informazioni storiche da OpenSSH, Dropbear SSH e libssh;
* Esegue su Linux e Windows;
* Nessuna dipendenza.
```bash
usage: ssh-audit.py [-1246pbcnjvlt] <host>
2024-02-10 13:03:23 +00:00
-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>
```
2024-02-10 13:03:23 +00:00
### Chiave pubblica SSH del server
2024-02-10 13:03:23 +00:00
```plaintext
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDZz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6Xz6
```bash
ssh-keyscan -t rsa <IP> -p <PORT>
```
2024-02-10 13:03:23 +00:00
### Algoritmi di cifratura deboli
2024-02-10 13:03:23 +00:00
Questo viene scoperto di default da **nmap**. Ma è anche possibile utilizzare **sslcan** o **sslyze**.
2021-07-06 18:15:59 +00:00
2024-02-10 13:03:23 +00:00
### Script di Nmap
2021-07-06 18:15:59 +00:00
```bash
nmap -p22 <ip> -sC # Send default nmap scripts for SSH
nmap -p22 <ip> -sV # Retrieve version
2024-02-10 13:03:23 +00:00
nmap -p22 <ip> --script ssh2-enum-algos # Retrieve supported algorythms
2021-07-06 18:15:59 +00:00
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
```
2022-05-01 13:25:53 +00:00
### Shodan
* `ssh`
2024-02-10 13:03:23 +00:00
## Forza bruta per nomi utente, password e chiavi private
2024-02-10 13:03:23 +00:00
### Enumerazione dei nomi utente
2024-02-10 13:03:23 +00:00
In alcune versioni di OpenSSH è possibile effettuare un attacco temporizzato per enumerare gli utenti. È possibile utilizzare un modulo di metasploit per sfruttare questa vulnerabilità:
2022-04-27 08:21:36 +00:00
```
msf> use scanner/ssh/ssh_enumusers
```
2024-02-10 13:03:23 +00:00
### [Forza bruta](../generic-methodologies-and-resources/brute-force.md#ssh)
2024-02-10 13:03:23 +00:00
Alcune credenziali ssh comuni [qui](https://github.com/danielmiessler/SecLists/blob/master/Passwords/Default-Credentials/ssh-betterdefaultpasslist.txt) e [qui](https://github.com/danielmiessler/SecLists/blob/master/Passwords/Common-Credentials/top-20-common-SSH-passwords.txt) e di seguito.
2024-02-10 13:03:23 +00:00
### Forza bruta con chiave privata
2024-02-10 13:03:23 +00:00
Se conosci alcune chiavi private ssh che potrebbero essere utilizzate... proviamole. Puoi utilizzare lo script nmap:
2022-04-27 08:21:36 +00:00
```
https://nmap.org/nsedoc/scripts/ssh-publickey-acceptance.html
```
2024-02-10 13:03:23 +00:00
O il modulo ausiliario MSF:
2022-04-27 08:21:36 +00:00
```
msf> use scanner/ssh/ssh_identify_pubkeys
```
2024-02-10 13:03:23 +00:00
Oppure utilizza `ssh-keybrute.py` (python3 nativo, leggero e con algoritmi legacy abilitati): [snowdroppe/ssh-keybrute](https://github.com/snowdroppe/ssh-keybrute).
2024-02-10 13:03:23 +00:00
#### Qui puoi trovare chiavi compromesse:
2022-04-27 08:21:36 +00:00
{% embed url="https://github.com/rapid7/ssh-badkeys/tree/master/authorized" %}
2024-02-10 13:03:23 +00:00
#### Chiavi SSH deboli / PRNG prevedibile di Debian
2024-02-10 13:03:23 +00:00
Alcuni sistemi presentano difetti noti nel seme casuale utilizzato per generare materiale crittografico. Ciò può comportare una riduzione drastica dello spazio delle chiavi che può essere forzato. Sono disponibili set di chiavi pregenerate generate su sistemi Debian affetti da PRNG debole qui: [g0tmi1k/debian-ssh](https://github.com/g0tmi1k/debian-ssh).
2024-02-10 13:03:23 +00:00
Dovresti cercare qui per cercare chiavi valide per la macchina vittima.
2022-05-01 13:25:53 +00:00
### Kerberos
2020-09-20 21:47:09 +00:00
2024-02-10 13:03:23 +00:00
**crackmapexec** utilizzando il protocollo `ssh` può utilizzare l'opzione `--kerberos` per **autenticarsi tramite Kerberos**.\
Per ulteriori informazioni esegui `crackmapexec ssh --help`.
## Credenziali predefinite
| **Produttore** | **Nomi utente** | **Password** |
| -------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| APC | apc, device | 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, user | private, admin, user |
| 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 |
2022-04-27 08:21:36 +00:00
2022-05-01 13:25:53 +00:00
## SSH-MitM
2022-04-27 08:21:36 +00:00
2024-02-10 13:03:23 +00:00
Se ti trovi nella stessa rete locale della vittima che si connetterà al server SSH utilizzando nome utente e password, potresti provare a **effettuare un attacco MitM per rubare queste credenziali**:
2022-04-27 08:21:36 +00:00
2024-02-10 13:03:23 +00:00
**Percorso dell'attacco:**
2022-04-27 08:21:36 +00:00
2024-02-10 13:03:23 +00:00
* **Redirezione del traffico:** L'attaccante **devia** il traffico della vittima verso la propria macchina, intercettando così il tentativo di connessione al server SSH.
* **Intercezione e registrazione:** La macchina dell'attaccante agisce come un **proxy**, **catturando** i dettagli di accesso dell'utente fingendo di essere il legittimo server SSH.
* **Esecuzione dei comandi e trasmissione:** Infine, il server dell'attaccante **registra le credenziali dell'utente**, **inoltra i comandi** al vero server SSH, li **esegue** e **invia i risultati** all'utente, rendendo il processo apparentemente fluido e legittimo.
2022-04-27 08:21:36 +00:00
2024-02-10 13:03:23 +00:00
[**SSH MITM**](https://github.com/jtesta/ssh-mitm) fa esattamente ciò che è descritto sopra.
2022-04-27 08:21:36 +00:00
2024-02-10 13:03:23 +00:00
Per effettuare effettivamente il MitM puoi utilizzare tecniche come ARP spoofing, DNS spoofing o altre descritte nelle [**attività di spoofing di rete**](../generic-methodologies-and-resources/pentesting-network/#spoofing).
## SSH-Snake
2024-02-10 13:03:23 +00:00
Se desideri attraversare una rete utilizzando chiavi private SSH scoperte sui sistemi, utilizzando ogni chiave privata su ogni sistema per nuovi host, allora [**SSH-Snake**](https://github.com/MegaManSec/SSH-Snake) è ciò di cui hai bisogno.
2024-02-10 13:03:23 +00:00
SSH-Snake esegue automaticamente e in modo ricorsivo i seguenti compiti:
2024-02-10 13:03:23 +00:00
1. Sul sistema corrente, trova eventuali chiavi private SSH,
2. Sul sistema corrente, trova eventuali host o destinazioni (utente@host) in cui le chiavi private possono essere accettate,
3. Prova a connettersi tramite SSH a tutte le destinazioni utilizzando tutte le chiavi private scoperte,
4. Se viene stabilita una connessione con una destinazione, ripeti i passaggi #1 - #4 sul sistema connesso.
2024-02-10 13:03:23 +00:00
È completamente autosufficiente e si replica autonomamente, ed è completamente senza file.
2024-02-10 13:03:23 +00:00
## Configurazioni errate della configurazione
2024-02-10 13:03:23 +00:00
### Accesso root
2020-12-14 16:53:57 +00:00
2024-02-10 13:03:23 +00:00
È comune che i server SSH consentano l'accesso dell'utente root per impostazione predefinita, il che rappresenta un rischio significativo per la sicurezza. **Disabilitare l'accesso root** è un passaggio critico per proteggere il server. L'accesso non autorizzato con privilegi amministrativi e gli attacchi di forza bruta possono essere mitigati apportando questa modifica.
2024-02-10 13:03:23 +00:00
**Per disabilitare l'accesso root in OpenSSH:**
2020-09-25 08:37:19 +00:00
2024-02-10 13:03:23 +00:00
1. **Modifica il file di configurazione SSH** con: `sudoedit /etc/ssh/sshd_config`
2. **Cambia l'impostazione** da `#PermitRootLogin yes` a **`PermitRootLogin no`**.
3. **Ricarica la configurazione** utilizzando: `sudo systemctl daemon-reload`
4. **Riavvia il server SSH** per applicare le modifiche: `sudo systemctl restart sshd`
2020-09-25 08:37:19 +00:00
2024-02-10 13:03:23 +00:00
### Forza bruta SFTP
2024-02-10 13:03:23 +00:00
* [**Forza bruta SFTP**](../generic-methodologies-and-resources/brute-force.md#sftp)
2024-02-10 13:03:23 +00:00
### Esecuzione di comandi SFTP
2024-02-10 13:03:23 +00:00
Si verifica spesso una svista comune nelle configurazioni SFTP, in cui gli amministratori intendono consentire agli utenti di scambiare file senza abilitare l'accesso alla shell remota. Nonostante vengano impostati utenti con shell non interattive (ad esempio, `/usr/bin/nologin`) e vengano confinati in una directory specifica, rimane una falla di sicurezza. **Gli utenti possono aggirare queste restrizioni** richiedendo l'esecuzione di un comando (come `/bin/bash`) immediatamente dopo l'accesso, prima che la shell non interattiva designata prenda il controllo. Ciò consente l'esecuzione non autorizzata di comandi, compromettendo le misure di sicurezza previste.
2024-02-10 13:03:23 +00:00
[Esempio da qui](https://community.turgensec.com/ssh-hacking-guide/):
```bash
ssh -v noraj@192.168.1.94 id
2020-12-14 16:53:57 +00:00
...
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
```
2024-02-10 13:03:23 +00:00
Ecco un esempio di configurazione sicura SFTP (`/etc/ssh/sshd_config` - openSSH) per l'utente `noraj`:
2024-02-10 13:03:23 +00:00
```plaintext
# Impostazioni per SFTP
Subsystem sftp internal-sftp
2020-12-14 16:53:57 +00:00
Match User noraj
2024-02-10 13:03:23 +00:00
ChrootDirectory /home/noraj
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
PasswordAuthentication yes
PermitTunnel no
AllowAgentForwarding no
PermitTTY no
PermitRootLogin no
PubkeyAuthentication yes
AuthorizedKeysFile /home/noraj/.ssh/authorized_keys
2020-12-14 16:53:57 +00:00
```
2024-02-10 13:03:23 +00:00
Assicurati di sostituire `noraj` con il nome utente corretto e di impostare il percorso corretto per `ChrootDirectory` e `AuthorizedKeysFile`.
```
Match User noraj
ChrootDirectory %h
ForceCommand internal-sftp
AllowTcpForwarding no
PermitTunnel no
X11Forwarding no
PermitTTY no
```
Questa configurazione permetterà solo SFTP: disabilitando l'accesso alla shell forzando il comando di avvio e disabilitando l'accesso TTY, ma anche disabilitando ogni tipo di port forwarding o tunneling.
2024-02-10 13:03:23 +00:00
### Tunneling SFTP
2024-02-10 13:03:23 +00:00
Se hai accesso a un server SFTP, puoi anche instradare il tuo traffico attraverso questo, ad esempio utilizzando il comune port forwarding:
```bash
2020-09-25 08:37:19 +00:00
sudo ssh -L <local_port>:<remote_host>:<remote_port> -N -f <username>@<ip_compromised>
```
2022-05-01 13:25:53 +00:00
### SFTP Symlink
2024-02-10 13:03:23 +00:00
Lo **sftp** ha il comando "**symlink**". Pertanto, se hai i **diritti di scrittura** in una determinata cartella, puoi creare **symlink** di **altre cartelle/file**. Poiché probabilmente sei **intrappolato** all'interno di un chroot, questo **non sarà particolarmente utile** per te, ma se puoi **accedere** al **symlink** creato da un **servizio senza chroot** (ad esempio, se puoi accedere al symlink dal web), potresti **aprire i file symlinkati tramite il web**.
2024-02-10 13:03:23 +00:00
Ad esempio, per creare un **symlink** da un nuovo file **"**_**froot**_**" a "**_**/**_**"**:
```bash
sftp> symlink / froot
```
2024-02-10 13:03:23 +00:00
Se puoi accedere al file "_froot_" tramite web, sarai in grado di elencare la cartella root ("/") del sistema.
2024-02-10 13:03:23 +00:00
### Metodi di autenticazione
2020-12-14 16:53:57 +00:00
2024-02-10 13:03:23 +00:00
In ambienti ad alta sicurezza è pratica comune abilitare solo l'autenticazione basata su chiave o a due fattori anziché l'autenticazione semplice basata su password. Tuttavia, spesso i metodi di autenticazione più sicuri vengono abilitati senza disabilitare quelli più deboli. Un caso frequente è abilitare `publickey` nella configurazione di openSSH e impostarlo come metodo predefinito, ma senza disabilitare `password`. Quindi, utilizzando la modalità dettagliata del client SSH, un attaccante può vedere che è abilitato un metodo più debole:
```bash
ssh -v 192.168.1.94
2020-12-14 16:53:57 +00:00
OpenSSH_8.1p1, OpenSSL 1.1.1d 10 Sep 2019
...
debug1: Authentications that can continue: publickey,password,keyboard-interactive
```
2024-02-10 13:03:23 +00:00
Ad esempio, se è impostato un limite di fallimento dell'autenticazione e non hai mai la possibilità di raggiungere il metodo della password, puoi utilizzare l'opzione `PreferredAuthentications` per forzare l'utilizzo di questo metodo.
```bash
ssh -v 192.168.1.94 -o PreferredAuthentications=password
2020-12-14 16:53:57 +00:00
...
debug1: Next authentication method: password
```
2024-02-10 13:03:23 +00:00
È necessario esaminare la configurazione del server SSH per verificare che siano autorizzati solo i metodi previsti. L'utilizzo della modalità dettagliata sul client può aiutare a valutare l'efficacia della configurazione.
2020-12-14 16:53:57 +00:00
2024-02-10 13:03:23 +00:00
### File di configurazione
```bash
2020-12-14 16:53:57 +00:00
ssh_config
sshd_config
authorized_keys
ssh_known_hosts
known_hosts
id_rsa
```
2022-05-01 13:25:53 +00:00
## Fuzzing
2020-12-14 16:53:57 +00:00
* [https://packetstormsecurity.com/files/download/71252/sshfuzz.txt](https://packetstormsecurity.com/files/download/71252/sshfuzz.txt)
2022-04-27 08:21:36 +00:00
* [https://www.rapid7.com/db/modules/auxiliary/fuzzers/ssh/ssh\_version\_2](https://www.rapid7.com/db/modules/auxiliary/fuzzers/ssh/ssh\_version\_2)
2020-12-14 16:53:57 +00:00
2022-05-01 13:25:53 +00:00
## References
2020-12-14 16:53:57 +00:00
2024-02-10 13:03:23 +00:00
* Puoi trovare guide interessanti su come rendere più sicuro SSH in [https://www.ssh-audit.com/hardening\_guides.html](https://www.ssh-audit.com/hardening\_guides.html)
2020-12-14 16:53:57 +00:00
* [https://community.turgensec.com/ssh-hacking-guide](https://community.turgensec.com/ssh-hacking-guide)
<img src="../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
2022-05-24 00:07:19 +00:00
2024-02-10 13:03:23 +00:00
Se sei interessato a una **carriera di hacking** e a violare l'invulnerabile - **stiamo assumendo!** (_richiesta competenza fluente nella lingua polacca, sia scritta che parlata_).
2022-05-24 00:07:19 +00:00
{% embed url="https://www.stmcyber.com/careers" %}
2024-02-10 13:03:23 +00:00
## Comandi Automatici HackTricks
2022-04-27 08:21:36 +00:00
```
2021-09-13 15:32:29 +00:00
Protocol_Name: SSH
Port_Number: 22
Protocol_Description: Secure Shell Hardening
Entry_1:
2024-02-10 13:03:23 +00:00
Name: Hydra Brute Force
Description: Need Username
Command: hydra -v -V -u -l {Username} -P {Big_Passwordlist} -t 1 {IP} ssh
Entry_2:
2024-02-10 13:03:23 +00:00
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'
2022-04-28 16:01:33 +00:00
2024-02-10 13:03:23 +00:00
```
2022-04-28 16:01:33 +00:00
<details>
2024-02-10 13:03:23 +00:00
<summary><strong>Impara l'hacking di AWS da zero a eroe con</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2022-04-28 16:01:33 +00:00
2024-02-10 13:03:23 +00:00
Altri modi per supportare HackTricks:
2024-01-02 18:28:27 +00:00
2024-02-10 13:03:23 +00:00
* Se vuoi vedere la tua **azienda pubblicizzata su HackTricks** o **scaricare HackTricks in PDF** Controlla i [**PIANI DI ABBONAMENTO**](https://github.com/sponsors/carlospolop)!
* Ottieni il [**merchandising ufficiale di PEASS & HackTricks**](https://peass.creator-spring.com)
* Scopri [**The PEASS Family**](https://opensea.io/collection/the-peass-family), la nostra collezione di [**NFT**](https://opensea.io/collection/the-peass-family) esclusivi
* **Unisciti al** 💬 [**gruppo Discord**](https://discord.gg/hRep4RUj7f) o al [**gruppo Telegram**](https://t.me/peass) o **seguici** su **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Condividi i tuoi trucchi di hacking inviando PR ai repository github di** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud).
2022-04-28 16:01:33 +00:00
</details>