mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
Translated ['src/generic-methodologies-and-resources/pentesting-wifi/ena
This commit is contained in:
parent
3a195fc2c2
commit
4fe875edcb
@ -27,7 +27,7 @@ La stessa tecnica si applica a qualsiasi dispositivo che ha una patch NexMon dis
|
||||
|
||||
---
|
||||
|
||||
## Flashare la patch NexMon (Magisk)
|
||||
## Flashing della patch NexMon (Magisk)
|
||||
1. Scarica il ZIP per il tuo dispositivo/firmware esatto (esempio: `nexmon-s10.zip`).
|
||||
2. Apri Magisk -> Moduli -> Installa da memoria -> seleziona il ZIP e riavvia.
|
||||
Il modulo copia `libnexmon.so` in `/data/adb/modules/<module>/lib*/` e assicura che le etichette SELinux siano corrette.
|
||||
@ -39,7 +39,7 @@ sha1sum $(which nexutil)
|
||||
|
||||
---
|
||||
|
||||
## Configurare Hijacker
|
||||
## Configurazione di Hijacker
|
||||
Hijacker può attivare automaticamente la modalità monitor prima di eseguire `airodump`, `wifite`, ecc. In **Impostazioni -> Avanzate** aggiungi le seguenti voci (modifica il percorso della libreria se il tuo modulo è diverso):
|
||||
```
|
||||
Prefix:
|
||||
@ -101,22 +101,22 @@ Poiché il firmware gestisce già l'iniezione radiotap, gli strumenti di user-sp
|
||||
|
||||
---
|
||||
|
||||
## Attacchi tipici possibili
|
||||
## Attacchi Tipici Possibili
|
||||
Una volta attivo monitor + TX puoi:
|
||||
* Catturare handshake WPA(2/3-SAE) o PMKID con `wifite`, `hcxdumptool`, `airodump-ng`.
|
||||
* Iniettare frame di deautenticazione/disassociazione per costringere i client a riconnettersi.
|
||||
* Creare frame di gestione/dati arbitrari con `mdk4`, `aireplay-ng`, Scapy, ecc.
|
||||
* Costruire AP malevoli o eseguire attacchi KARMA/MANA direttamente dal telefono.
|
||||
* Costruire AP fasulli o eseguire attacchi KARMA/MANA direttamente dal telefono.
|
||||
|
||||
Le prestazioni sul Galaxy S10 sono comparabili a NIC USB esterni (~20 dBm TX, 2-3 M pps RX).
|
||||
|
||||
---
|
||||
|
||||
## Risoluzione dei problemi
|
||||
* `Device or resource busy` – assicurati che il **servizio Wi-Fi di Android sia disabilitato** (`svc wifi disable`) prima di abilitare la modalità monitor.
|
||||
* `nexutil: ioctl(PRIV_MAGIC) failed` – la libreria non è pre-caricata; controlla il percorso di `LD_PRELOAD`.
|
||||
* L'iniezione di frame funziona ma non vengono catturati pacchetti – alcune ROM bloccano hard i canali; prova `nexutil -c <channel>` o `iwconfig wlan0 channel <n>`.
|
||||
* SELinux blocca la libreria – imposta il dispositivo su *Permissive* o correggi il contesto del modulo: `chcon u:object_r:system_lib_file:s0 libnexmon.so`.
|
||||
## Risoluzione dei Problemi
|
||||
* `Dispositivo o risorsa occupata` – assicurati che il **servizio Wi-Fi di Android sia disabilitato** (`svc wifi disable`) prima di abilitare la modalità monitor.
|
||||
* `nexutil: ioctl(PRIV_MAGIC) fallito` – la libreria non è pre-caricata; controlla il percorso di `LD_PRELOAD`.
|
||||
* L'iniezione di frame funziona ma nessun pacchetto catturato – alcune ROM bloccano hard i canali; prova `nexutil -c <channel>` o `iwconfig wlan0 channel <n>`.
|
||||
* SELinux blocca la libreria – imposta il dispositivo su *Permissivo* o correggi il contesto del modulo: `chcon u:object_r:system_lib_file:s0 libnexmon.so`.
|
||||
|
||||
---
|
||||
|
||||
|
BIN
src/images/discount.jpeg
Normal file
BIN
src/images/discount.jpeg
Normal file
Binary file not shown.
After Width: | Height: | Size: 186 KiB |
@ -13,7 +13,7 @@ android-applications-basics.md
|
||||
## ADB (Android Debug Bridge)
|
||||
|
||||
Questo è lo strumento principale di cui hai bisogno per connetterti a un dispositivo Android (emulato o fisico).\
|
||||
**ADB** consente di controllare i dispositivi sia tramite **USB** che tramite **rete** da un computer. Questa utility permette la **copia** di file in entrambe le direzioni, **installazione** e **disinstallazione** di app, **esecuzione** di comandi shell, **backup** di dati, **lettura** di log, tra le altre funzioni.
|
||||
**ADB** consente di controllare i dispositivi sia tramite **USB** che **rete** da un computer. Questa utility permette la **copia** di file in entrambe le direzioni, **installazione** e **disinstallazione** di app, **esecuzione** di comandi shell, **backup** di dati, **lettura** di log, tra le altre funzioni.
|
||||
|
||||
Dai un'occhiata alla seguente lista di [**Comandi ADB**](adb-commands.md) per imparare come utilizzare adb.
|
||||
|
||||
@ -57,19 +57,19 @@ Dando un'occhiata alle **stringhe** dell'APK puoi cercare **password**, **URL**
|
||||
|
||||
**Firebase**
|
||||
|
||||
Presta particolare attenzione agli **URL di firebase** e controlla se è configurato male. [Maggiore informazione su cosa è Firebase e come sfruttarlo qui.](../../network-services-pentesting/pentesting-web/buckets/firebase-database.md)
|
||||
Presta particolare attenzione agli **URL di firebase** e controlla se è configurato male. [Maggiori informazioni su cosa è Firebase e come sfruttarlo qui.](../../network-services-pentesting/pentesting-web/buckets/firebase-database.md)
|
||||
|
||||
### Comprensione di base dell'applicazione - Manifest.xml, strings.xml
|
||||
|
||||
L'**esame dei file _Manifest.xml_ e _strings.xml_ di un'applicazione può rivelare potenziali vulnerabilità di sicurezza**. Questi file possono essere accessibili utilizzando decompilatori o rinominando l'estensione del file APK in .zip e poi decomprimendolo.
|
||||
L'**esame dei file _Manifest.xml_ e **_strings.xml_** di un'applicazione può rivelare potenziali vulnerabilità di sicurezza**. Questi file possono essere accessibili utilizzando decompilatori o rinominando l'estensione del file APK in .zip e poi decomprimendolo.
|
||||
|
||||
Le **vulnerabilità** identificate dal **Manifest.xml** includono:
|
||||
**Vulnerabilità** identificate dal **Manifest.xml** includono:
|
||||
|
||||
- **Applicazioni Debuggable**: Le applicazioni impostate come debuggable (`debuggable="true"`) nel file _Manifest.xml_ rappresentano un rischio poiché consentono connessioni che possono portare a sfruttamenti. Per ulteriori informazioni su come sfruttare le applicazioni debuggable, fai riferimento a un tutorial su come trovare e sfruttare applicazioni debuggable su un dispositivo.
|
||||
- **Impostazioni di Backup**: L'attributo `android:allowBackup="false"` dovrebbe essere impostato esplicitamente per le applicazioni che gestiscono informazioni sensibili per prevenire backup non autorizzati dei dati tramite adb, specialmente quando il debug USB è abilitato.
|
||||
- **Sicurezza della Rete**: Le configurazioni di sicurezza della rete personalizzate (`android:networkSecurityConfig="@xml/network_security_config"`) in _res/xml/_ possono specificare dettagli di sicurezza come i pin dei certificati e le impostazioni del traffico HTTP. Un esempio è consentire il traffico HTTP per domini specifici.
|
||||
- **Attività e Servizi Esportati**: Identificare attività e servizi esportati nel manifest può evidenziare componenti che potrebbero essere abusati. Ulteriori analisi durante i test dinamici possono rivelare come sfruttare questi componenti.
|
||||
- **Content Providers e FileProviders**: I content provider esposti potrebbero consentire accessi o modifiche non autorizzate ai dati. Anche la configurazione dei FileProviders dovrebbe essere esaminata.
|
||||
- **Content Providers e FileProviders**: I content provider esposti potrebbero consentire accessi o modifiche non autorizzate ai dati. La configurazione dei FileProviders dovrebbe essere esaminata con attenzione.
|
||||
- **Broadcast Receivers e URL Schemes**: Questi componenti potrebbero essere sfruttati per sfruttamenti, prestando particolare attenzione a come vengono gestiti gli URL schemes per vulnerabilità di input.
|
||||
- **Versioni SDK**: Gli attributi `minSdkVersion`, `targetSDKVersion` e `maxSdkVersion` indicano le versioni Android supportate, evidenziando l'importanza di non supportare versioni Android obsolete e vulnerabili per motivi di sicurezza.
|
||||
|
||||
@ -77,10 +77,10 @@ Dal file **strings.xml**, informazioni sensibili come chiavi API, schemi persona
|
||||
|
||||
### Tapjacking
|
||||
|
||||
Il **Tapjacking** è un attacco in cui un'**applicazione** **maligna** viene lanciata e **si posiziona sopra un'applicazione vittima**. Una volta che oscura visibilmente l'app vittima, la sua interfaccia utente è progettata in modo da ingannare l'utente a interagire con essa, mentre passa l'interazione all'app vittima.\
|
||||
In effetti, sta **ciecando l'utente dal sapere che sta effettivamente eseguendo azioni sull'app vittima**.
|
||||
**Tapjacking** è un attacco in cui un **applicazione** **maligna** viene lanciata e **si posiziona sopra un'applicazione vittima**. Una volta che oscura visibilmente l'app vittima, la sua interfaccia utente è progettata in modo da ingannare l'utente a interagire con essa, mentre passa l'interazione all'app vittima.\
|
||||
In effetti, sta **accecando l'utente dal sapere che sta effettivamente eseguendo azioni sull'app vittima**.
|
||||
|
||||
Trova maggiori informazioni in:
|
||||
Trova ulteriori informazioni in:
|
||||
|
||||
{{#ref}}
|
||||
tapjacking.md
|
||||
@ -90,7 +90,7 @@ tapjacking.md
|
||||
|
||||
Un'**attività** con il **`launchMode`** impostato su **`singleTask` senza alcun `taskAffinity`** definito è vulnerabile al task hijacking. Ciò significa che un'**applicazione** può essere installata e, se lanciata prima dell'applicazione reale, potrebbe **dirottare il task dell'applicazione reale** (quindi l'utente interagirà con l'**applicazione maligna pensando di utilizzare quella reale**).
|
||||
|
||||
Maggiore info in:
|
||||
Maggiori informazioni in:
|
||||
|
||||
{{#ref}}
|
||||
android-task-hijacking.md
|
||||
@ -100,12 +100,12 @@ android-task-hijacking.md
|
||||
|
||||
**Memoria Interna**
|
||||
|
||||
In Android, i file **memorizzati** nella **memoria interna** sono **progettati** per essere **accessibili** esclusivamente dall'**app** che li **ha creati**. Questa misura di sicurezza è **imposta** dal sistema operativo Android ed è generalmente adeguata per le esigenze di sicurezza della maggior parte delle applicazioni. Tuttavia, gli sviluppatori a volte utilizzano modalità come `MODE_WORLD_READABLE` e `MODE_WORLD_WRITABLE` per **consentire** la condivisione di file tra diverse applicazioni. Tuttavia, queste modalità **non limitano l'accesso** a questi file da parte di altre applicazioni, comprese quelle potenzialmente dannose.
|
||||
In Android, i file **memorizzati** nella **memoria interna** sono **progettati** per essere **accessibili** esclusivamente dall'**app** che li ha **creati**. Questa misura di sicurezza è **imposta** dal sistema operativo Android ed è generalmente adeguata per le esigenze di sicurezza della maggior parte delle applicazioni. Tuttavia, gli sviluppatori a volte utilizzano modalità come `MODE_WORLD_READABLE` e `MODE_WORLD_WRITABLE` per **consentire** la condivisione di file tra diverse applicazioni. Tuttavia, queste modalità **non limitano l'accesso** a questi file da parte di altre applicazioni, comprese quelle potenzialmente dannose.
|
||||
|
||||
1. **Analisi Statica:**
|
||||
- **Assicurati** che l'uso di `MODE_WORLD_READABLE` e `MODE_WORLD_WRITABLE` sia **scrutinato attentamente**. Queste modalità **possono potenzialmente esporre** file a **accessi non intenzionati o non autorizzati**.
|
||||
- **Assicurati** che l'uso di `MODE_WORLD_READABLE` e `MODE_WORLD_WRITABLE` sia **scrutinato con attenzione**. Queste modalità **possono potenzialmente esporre** file a **accessi non intenzionati o non autorizzati**.
|
||||
2. **Analisi Dinamica:**
|
||||
- **Verifica** le **permissive** impostate sui file creati dall'app. In particolare, **controlla** se ci sono file **impostati per essere leggibili o scrivibili a livello globale**. Questo può rappresentare un rischio significativo per la sicurezza, poiché consentirebbe a **qualsiasi applicazione** installata sul dispositivo, indipendentemente dalla sua origine o intento, di **leggere o modificare** questi file.
|
||||
- **Verifica** le **autorizzazioni** impostate sui file creati dall'app. In particolare, **controlla** se ci sono file **impostati per essere leggibili o scrivibili a livello globale**. Questo può rappresentare un rischio significativo per la sicurezza, poiché consentirebbe a **qualsiasi applicazione** installata sul dispositivo, indipendentemente dalla sua origine o intento, di **leggere o modificare** questi file.
|
||||
|
||||
**Memoria Esterna**
|
||||
|
||||
@ -124,7 +124,7 @@ Quando si trattano file su **memoria esterna**, come schede SD, dovrebbero esser
|
||||
La memoria esterna può essere **accessibile** in `/storage/emulated/0`, `/sdcard`, `/mnt/sdcard`
|
||||
|
||||
> [!TIP]
|
||||
> A partire da Android 4.4 (**API 17**), la scheda SD ha una struttura di directory che **limita l'accesso da un'app alla directory specificamente per quell'app**. Questo impedisce a un'applicazione malevola di ottenere accesso in lettura o scrittura ai file di un'altra app.
|
||||
> A partire da Android 4.4 (**API 17**), la scheda SD ha una struttura di directory che **limita l'accesso da un'app alla directory specificamente per quell'app**. Questo impedisce a un'applicazione dannosa di ottenere accesso in lettura o scrittura ai file di un'altra app.
|
||||
|
||||
**Dati sensibili memorizzati in chiaro**
|
||||
|
||||
@ -133,7 +133,7 @@ La memoria esterna può essere **accessibile** in `/storage/emulated/0`, `/sdcar
|
||||
|
||||
### TLS Rotto
|
||||
|
||||
**Accetta Tutti i Certificati**
|
||||
**Accetta tutti i certificati**
|
||||
|
||||
Per qualche motivo, a volte gli sviluppatori accettano tutti i certificati anche se, ad esempio, il nome host non corrisponde a righe di codice come la seguente:
|
||||
```java
|
||||
@ -150,12 +150,12 @@ Alcuni sviluppatori salvano dati sensibili nello storage locale e li crittografa
|
||||
|
||||
**Utilizzo di algoritmi insicuri e/o deprecati**
|
||||
|
||||
Gli sviluppatori non dovrebbero utilizzare **algoritmi deprecati** per eseguire **controlli di autorizzazione**, **memorizzare** o **inviare** dati. Alcuni di questi algoritmi sono: RC4, MD4, MD5, SHA1... Se i **hash** vengono utilizzati per memorizzare le password, ad esempio, dovrebbero essere utilizzati hash resistenti alla forza bruta con sale.
|
||||
Gli sviluppatori non dovrebbero utilizzare **algoritmi deprecati** per eseguire **controlli di autorizzazione**, **memorizzare** o **inviare** dati. Alcuni di questi algoritmi sono: RC4, MD4, MD5, SHA1... Se i **hash** vengono utilizzati per memorizzare le password, ad esempio, dovrebbero essere utilizzati hash resistenti a brute-force con sale.
|
||||
|
||||
### Altri controlli
|
||||
|
||||
- È consigliato **offuscare l'APK** per rendere più difficile il lavoro di reverse engineering per gli attaccanti.
|
||||
- Se l'app è sensibile (come le app bancarie), dovrebbe eseguire i propri **controlli per vedere se il mobile è rootato** e agire di conseguenza.
|
||||
- Se l'app è sensibile (come le app bancarie), dovrebbe eseguire i **propri controlli per vedere se il mobile è rootato** e agire di conseguenza.
|
||||
- Se l'app è sensibile (come le app bancarie), dovrebbe controllare se viene utilizzato un **emulatore**.
|
||||
- Se l'app è sensibile (come le app bancarie), dovrebbe **controllare la propria integrità prima di eseguire** per verificare se è stata modificata.
|
||||
- Usa [**APKiD**](https://github.com/rednaga/APKiD) per controllare quale compilatore/pacchetto/offuscatore è stato utilizzato per costruire l'APK.
|
||||
@ -244,7 +244,7 @@ avd-android-virtual-device.md
|
||||
> [!TIP]
|
||||
> Quando crei un nuovo emulatore su qualsiasi piattaforma ricorda che più grande è lo schermo, più lento sarà l'emulatore. Quindi seleziona schermi piccoli se possibile.
|
||||
|
||||
Per **installare i servizi Google** (come AppStore) in Genymotion devi cliccare sul pulsante contrassegnato in rosso nell'immagine seguente:
|
||||
Per **installare i servizi google** (come AppStore) in Genymotion devi cliccare sul pulsante contrassegnato in rosso nell'immagine seguente:
|
||||
|
||||
.png>)
|
||||
|
||||
@ -285,7 +285,7 @@ Come pentester, **cerca di dare un'occhiata a questi log**.
|
||||
|
||||
**Dati di analisi inviati a terzi**
|
||||
|
||||
Le applicazioni spesso integrano servizi come Google Adsense, che possono involontariamente **trapelare dati sensibili** a causa di un'implementazione impropria da parte degli sviluppatori. Per identificare potenziali perdite di dati, è consigliabile **intercettare il traffico dell'applicazione** e controllare eventuali informazioni sensibili inviate a servizi di terze parti.
|
||||
Le applicazioni spesso integrano servizi come Google Adsense, che possono involontariamente **trapelare dati sensibili** a causa di implementazioni errate da parte degli sviluppatori. Per identificare potenziali perdite di dati, è consigliabile **intercettare il traffico dell'applicazione** e controllare eventuali informazioni sensibili inviate a servizi di terze parti.
|
||||
|
||||
### DB SQLite
|
||||
|
||||
@ -294,9 +294,9 @@ I database dovrebbero trovarsi in `/data/data/the.package.name/databases` come `
|
||||
|
||||
Se il database sta salvando informazioni riservate ed è **crittografato** ma puoi **trovare** la **password** all'interno dell'applicazione, è comunque una **vulnerabilità**.
|
||||
|
||||
Enumera le tabelle utilizzando `.tables` e enumera le colonne delle tabelle eseguendo `.schema <table_name>`.
|
||||
Enumera le tabelle usando `.tables` e enumera le colonne delle tabelle eseguendo `.schema <table_name>`.
|
||||
|
||||
### Drozer (Attività di sfruttamento, Content Providers e Servizi)
|
||||
### Drozer (Sfruttare attività esportate, Content Providers e Servizi)
|
||||
|
||||
Da [Drozer Docs](https://labs.mwrinfosecurity.com/assets/BlogFiles/mwri-drozer-user-guide-2015-03-23.pdf): **Drozer** ti consente di **assumere il ruolo di un'app Android** e interagire con altre app. Può fare **qualsiasi cosa che un'applicazione installata può fare**, come utilizzare il meccanismo di comunicazione interprocesso (IPC) di Android e interagire con il sistema operativo sottostante.\
|
||||
Drozer è uno strumento utile per **sfruttare attività esportate, servizi esportati e Content Providers** come imparerai nelle sezioni seguenti.
|
||||
@ -330,7 +330,7 @@ adb shell am start -n com.example.demo/com.example.test.MainActivity
|
||||
|
||||
#### Tapjacking
|
||||
|
||||
Se il tapjacking non viene prevenuto, potresti abusare dell'attività esportata per far **eseguire azioni inaspettate all'utente**. Per ulteriori informazioni su [**cos'è il Tapjacking segui il link**](#tapjacking).
|
||||
Se il tapjacking non è prevenuto, potresti abusare dell'attività esportata per far **eseguire azioni inaspettate** all'utente. Per ulteriori informazioni su [**cos'è il Tapjacking segui il link**](#tapjacking).
|
||||
|
||||
### Sfruttare i Content Providers - Accesso e manipolazione di informazioni sensibili
|
||||
|
||||
@ -344,7 +344,7 @@ I content provider sono fondamentalmente utilizzati per **condividere dati**. Se
|
||||
[**Leggi questo se vuoi rinfrescare cosa è un Servizio.**](android-applications-basics.md#services)\
|
||||
Ricorda che le azioni di un Servizio iniziano nel metodo `onStartCommand`.
|
||||
|
||||
Un servizio è fondamentalmente qualcosa che **può ricevere dati**, **elaborarli** e **restituire** (o meno) una risposta. Quindi, se un'applicazione esporta alcuni servizi, dovresti **controllare** il **codice** per capire cosa sta facendo e **testarlo** **dinamicamente** per estrarre informazioni riservate, bypassare misure di autenticazione...\
|
||||
Un servizio è fondamentalmente qualcosa che **può ricevere dati**, **elaborarli** e **restituire** (o meno) una risposta. Quindi, se un'applicazione sta esportando alcuni servizi, dovresti **controllare** il **codice** per capire cosa sta facendo e **testarlo** **dinamicamente** per estrarre informazioni riservate, bypassare misure di autenticazione...\
|
||||
[**Scopri come sfruttare i Servizi con Drozer.**](drozer-tutorial/index.html#services)
|
||||
|
||||
### **Sfruttare i Broadcast Receivers**
|
||||
@ -404,17 +404,17 @@ SSL Pinning è una misura di sicurezza in cui l'applicazione verifica il certifi
|
||||
|
||||
#### Ispezione del traffico
|
||||
|
||||
Per ispezionare il traffico HTTP, è necessario **installare il certificato dello strumento proxy** (ad es. Burp). Senza installare questo certificato, il traffico crittografato potrebbe non essere visibile attraverso il proxy. Per una guida sull'installazione di un certificato CA personalizzato, [**clicca qui**](avd-android-virtual-device.md#install-burp-certificate-on-a-virtual-machine).
|
||||
Per ispezionare il traffico HTTP, è necessario **installare il certificato dello strumento proxy** (ad es., Burp). Senza installare questo certificato, il traffico crittografato potrebbe non essere visibile attraverso il proxy. Per una guida sull'installazione di un certificato CA personalizzato, [**clicca qui**](avd-android-virtual-device.md#install-burp-certificate-on-a-virtual-machine).
|
||||
|
||||
Le applicazioni destinate a **API Level 24 e superiori** richiedono modifiche alla Configurazione della Sicurezza di Rete per accettare il certificato CA del proxy. Questo passaggio è fondamentale per ispezionare il traffico crittografato. Per istruzioni su come modificare la Configurazione della Sicurezza di Rete, [**fai riferimento a questo tutorial**](make-apk-accept-ca-certificate.md).
|
||||
|
||||
Se **Flutter** viene utilizzato, devi seguire le istruzioni in [**questa pagina**](flutter.md). Questo perché, aggiungere semplicemente il certificato nel negozio non funzionerà poiché Flutter ha la propria lista di CA valide.
|
||||
Se **Flutter** viene utilizzato, devi seguire le istruzioni in [**questa pagina**](flutter.md). Questo perché, aggiungere semplicemente il certificato nel negozio non funzionerà poiché Flutter ha la propria lista di CAs validi.
|
||||
|
||||
#### Bypassare SSL Pinning
|
||||
|
||||
Quando SSL Pinning è implementato, bypassarlo diventa necessario per ispezionare il traffico HTTPS. Sono disponibili vari metodi per questo scopo:
|
||||
|
||||
- Modifica **automaticamente** l'**apk** per **bypassare** SSLPinning con [**apk-mitm**](https://github.com/shroudedcode/apk-mitm). Il miglior vantaggio di questa opzione è che non avrai bisogno di root per bypassare l'SSL Pinning, ma dovrai eliminare l'applicazione e reinstallare quella nuova, e questo non funzionerà sempre.
|
||||
- Modifica **automaticamente** l'**apk** per **bypassare** SSLPinning con [**apk-mitm**](https://github.com/shroudedcode/apk-mitm). Il miglior vantaggio di questa opzione è che non avrai bisogno di root per bypassare SSL Pinning, ma dovrai eliminare l'applicazione e reinstallare quella nuova, e questo non funzionerà sempre.
|
||||
- Potresti usare **Frida** (discusso di seguito) per bypassare questa protezione. Qui hai una guida per usare Burp+Frida+Genymotion: [https://spenkk.github.io/bugbounty/Configuring-Frida-with-Burp-and-GenyMotion-to-bypass-SSL-Pinning/](https://spenkk.github.io/bugbounty/Configuring-Frida-with-Burp-and-GenyMotion-to-bypass-SSL-Pinning/)
|
||||
- Puoi anche provare a **bypassare automaticamente SSL Pinning** usando [**objection**](frida-tutorial/objection-tutorial.md)**:** `objection --gadget com.package.app explore --startup-command "android sslpinning disable"`
|
||||
- Puoi anche provare a **bypassare automaticamente SSL Pinning** usando **l'analisi dinamica di MobSF** (spiegato di seguito)
|
||||
@ -426,7 +426,7 @@ Quando SSL Pinning è implementato, bypassarlo diventa necessario per ispezionar
|
||||
|
||||
### Frida
|
||||
|
||||
[Frida](https://www.frida.re) è un toolkit di strumentazione dinamica per sviluppatori, reverse-engineer e ricercatori di sicurezza.\
|
||||
[Frida](https://www.frida.re) è un toolkit di strumentazione dinamica per sviluppatori, ingegneri inversi e ricercatori di sicurezza.\
|
||||
**Puoi accedere all'applicazione in esecuzione e agganciare metodi in tempo reale per cambiare il comportamento, cambiare valori, estrarre valori, eseguire codice diverso...**\
|
||||
Se vuoi fare pentesting su applicazioni Android, devi sapere come usare Frida.
|
||||
|
||||
@ -465,7 +465,7 @@ frida -U -f com.example.app -l frida-scripts/tracer-cipher.js
|
||||
```
|
||||
### **Fingerprint/Biometrics Bypass**
|
||||
|
||||
Utilizzando il seguente script Frida potrebbe essere possibile **bypassare l'autenticazione tramite impronta digitale** che le applicazioni Android potrebbero eseguire per **proteggere determinate aree sensibili:**
|
||||
Utilizzando il seguente script Frida, potrebbe essere possibile **bypassare l'autenticazione tramite impronta digitale** che le applicazioni Android potrebbero eseguire per **proteggere determinate aree sensibili:**
|
||||
```bash
|
||||
frida --codeshare krapgras/android-biometric-bypass-update-android-11 -U -f <app.package>
|
||||
```
|
||||
@ -494,7 +494,7 @@ Il pericolo risiede nel consentire agli attaccanti di attivare componenti dell'a
|
||||
### Punti Essenziali
|
||||
|
||||
- **Iniezione di Intent** è simile al problema di Open Redirect del web.
|
||||
- Gli exploit coinvolgono il passaggio di oggetti `Intent` come extra, che possono essere deviati per eseguire operazioni non sicure.
|
||||
- Gli exploit comportano il passaggio di oggetti `Intent` come extra, che possono essere deviati per eseguire operazioni non sicure.
|
||||
- Può esporre componenti non esportati e provider di contenuti agli attaccanti.
|
||||
- La conversione di URL in `Intent` di `WebView` può facilitare azioni indesiderate.
|
||||
|
||||
@ -518,7 +518,7 @@ Probabilmente conosci questo tipo di vulnerabilità dal Web. Devi essere partico
|
||||
|
||||
.png>)
|
||||
|
||||
**Valutazione delle vulnerabilità dell'applicazione** utilizzando un bel frontend web-based. Puoi anche eseguire analisi dinamica (ma devi preparare l'ambiente).
|
||||
**Valutazione della vulnerabilità dell'applicazione** utilizzando un bel frontend web-based. Puoi anche eseguire analisi dinamica (ma devi preparare l'ambiente).
|
||||
```bash
|
||||
docker pull opensecurity/mobile-security-framework-mobsf
|
||||
docker run -it -p 8000:8000 opensecurity/mobile-security-framework-mobsf:latest
|
||||
@ -530,8 +530,8 @@ MobSF consente anche di **diff/Confrontare** analisi e di integrare **VirusTotal
|
||||
|
||||
### Analisi dinamica assistita con MobSF
|
||||
|
||||
**MobSF** può essere molto utile per l'**analisi dinamica** in **Android**, ma in quel caso dovrai installare MobSF e **genymotion** sul tuo host (una VM o Docker non funzioneranno). _Nota: Devi **avviare prima una VM in genymotion** e **poi MobSF.**_\
|
||||
L'**analizzatore dinamico MobSF** può:
|
||||
**MobSF** può essere molto utile per l'**analisi dinamica** in **Android**, ma in quel caso dovrai installare MobSF e **genymotion** nel tuo host (una VM o Docker non funzionerà). _Nota: Devi **avviare prima una VM in genymotion** e **poi MobSF.**_\
|
||||
L'**analizzatore dinamico di MobSF** può:
|
||||
|
||||
- **Dump dei dati dell'applicazione** (URL, log, appunti, screenshot fatti da te, screenshot fatti da "**Exported Activity Tester**", email, database SQLite, file XML e altri file creati). Tutto questo viene fatto automaticamente tranne per gli screenshot, devi premere quando vuoi uno screenshot o devi premere "**Exported Activity Tester**" per ottenere screenshot di tutte le attività esportate.
|
||||
- Catturare il **traffico HTTPS**
|
||||
@ -545,14 +545,14 @@ Per impostazione predefinita, utilizzerà anche alcuni script Frida per **bypass
|
||||
MobSF può anche **invocare attività esportate**, acquisire **screenshot** di esse e **salvarle** per il rapporto.
|
||||
|
||||
Per **iniziare** il test dinamico premi il pulsante verde: "**Start Instrumentation**". Premi "**Frida Live Logs**" per vedere i log generati dagli script Frida e "**Live API Monitor**" per vedere tutte le invocazioni ai metodi hookati, gli argomenti passati e i valori restituiti (questo apparirà dopo aver premuto "Start Instrumentation").\
|
||||
MobSF consente anche di caricare i propri **script Frida** (per inviare i risultati dei tuoi script Frida a MobSF usa la funzione `send()`). Ha anche **diversi script pre-scritti** che puoi caricare (puoi aggiungerne di più in `MobSF/DynamicAnalyzer/tools/frida_scripts/others/`), basta **selezionarli**, premere "**Load**" e premere "**Start Instrumentation**" (sarai in grado di vedere i log di quegli script all'interno di "**Frida Live Logs**").
|
||||
MobSF consente anche di caricare i propri **script Frida** (per inviare i risultati dei tuoi script di venerdì a MobSF usa la funzione `send()`). Ha anche **diversi script pre-scritti** che puoi caricare (puoi aggiungerne di più in `MobSF/DynamicAnalyzer/tools/frida_scripts/others/`), basta **selezionarli**, premere "**Load**" e premere "**Start Instrumentation**" (sarai in grado di vedere i log di quegli script all'interno di "**Frida Live Logs**").
|
||||
|
||||
.png>)
|
||||
|
||||
Inoltre, hai alcune funzionalità ausiliarie di Frida:
|
||||
|
||||
- **Enumerare Classi Caricate**: Stampa tutte le classi caricate
|
||||
- **Catturare Stringhe**: Stampa tutte le stringhe catturate mentre usi l'applicazione (super rumoroso)
|
||||
- **Catturare Stringhe**: Stampa tutte le stringhe catturate mentre si utilizza l'applicazione (super rumoroso)
|
||||
- **Catturare Confronti di Stringhe**: Potrebbe essere molto utile. Mostrerà **le 2 stringhe confrontate** e se il risultato è stato Vero o Falso.
|
||||
- **Enumerare Metodi di Classe**: Inserisci il nome della classe (come "java.io.File") e stamperà tutti i metodi della classe.
|
||||
- **Cerca Modello di Classe**: Cerca classi per modello
|
||||
@ -609,8 +609,8 @@ qark --java path/to/specific/java/file.java
|
||||
|
||||
- Mostra tutti i file estratti per un facile riferimento
|
||||
- Decompila automaticamente i file APK in formato Java e Smali
|
||||
- Analizza AndroidManifest.xml per vulnerabilità e comportamenti comuni
|
||||
- Analisi statica del codice sorgente per vulnerabilità e comportamenti comuni
|
||||
- Analizza AndroidManifest.xml per vulnerabilità comuni e comportamenti
|
||||
- Analisi statica del codice sorgente per vulnerabilità comuni e comportamenti
|
||||
- Informazioni sul dispositivo
|
||||
- e altro ancora
|
||||
```bash
|
||||
@ -632,7 +632,7 @@ super-analyzer {apk_file}
|
||||
|
||||
StaCoAn è uno strumento **crossplatform** che aiuta sviluppatori, cacciatori di bug e hacker etici a eseguire [static code analysis](https://en.wikipedia.org/wiki/Static_program_analysis) su applicazioni mobili.
|
||||
|
||||
Il concetto è che puoi trascinare e rilasciare il file della tua applicazione mobile (un file .apk o .ipa) sull'applicazione StaCoAn e genererà un report visivo e portatile per te. Puoi modificare le impostazioni e le wordlist per ottenere un'esperienza personalizzata.
|
||||
Il concetto è che puoi trascinare e rilasciare il file della tua applicazione mobile (un file .apk o .ipa) sull'applicazione StaCoAn e genererà un report visivo e portatile per te. Puoi modificare le impostazioni e le liste di parole per ottenere un'esperienza personalizzata.
|
||||
|
||||
Scarica[ latest release](https://github.com/vincentcox/StaCoAn/releases):
|
||||
```
|
||||
@ -650,7 +650,7 @@ androbugs.exe -f [APK file]
|
||||
|
||||
**Androwarn** è uno strumento il cui obiettivo principale è rilevare e avvisare l'utente riguardo a potenziali comportamenti malevoli sviluppati da un'applicazione Android.
|
||||
|
||||
Il rilevamento viene effettuato con l'**analisi statica** del bytecode Dalvik dell'applicazione, rappresentato come **Smali**, con la libreria [`androguard`](https://github.com/androguard/androguard).
|
||||
Il rilevamento viene eseguito con l'**analisi statica** del bytecode Dalvik dell'applicazione, rappresentato come **Smali**, con la libreria [`androguard`](https://github.com/androguard/androguard).
|
||||
|
||||
Questo strumento cerca **comportamenti comuni di applicazioni "cattive"** come: esfiltrazione di identificatori di telefonia, intercettazione di flussi audio/video, modifica dei dati PIM, esecuzione di codice arbitrario...
|
||||
```
|
||||
@ -703,9 +703,9 @@ Trova una guida passo-passo per deoffuscare l'apk in [https://blog.lexfo.fr/dexg
|
||||
|
||||
Puoi caricare un APK offuscato sulla loro piattaforma.
|
||||
|
||||
### [Deobfuscate android App](https://github.com/In3tinct/deobfuscate-android-app)
|
||||
### [Deobfuscate android App]https://github.com/In3tinct/deobfuscate-android-app
|
||||
|
||||
Questo è uno strumento LLM per trovare potenziali vulnerabilità di sicurezza nelle app Android e deoffuscare il codice delle app Android. Utilizza l'API pubblica di Google Gemini.
|
||||
Questo è uno strumento LLM per trovare potenziali vulnerabilità di sicurezza nelle app android e deoffuscare il codice delle app android. Utilizza l'API pubblica di Google Gemini.
|
||||
|
||||
### [Simplify](https://github.com/CalebFenton/simplify)
|
||||
|
||||
|
@ -43,7 +43,7 @@ Un avvio riuscito restituisce `Running services (1)` insieme al PID del processo
|
||||
|
||||
---
|
||||
## 2. Binding da un'applicazione
|
||||
Le app di terze parti hanno bisogno solo del seguente all'interno del loro `AndroidManifest.xml`:
|
||||
Le app di terze parti hanno solo bisogno del seguente all'interno del loro `AndroidManifest.xml`:
|
||||
```xml
|
||||
<uses-permission android:name="moe.shizuku.manager.permission.API"/>
|
||||
```
|
||||
|
@ -14,11 +14,11 @@ Con un vecchio dispositivo jailbroken, è possibile installare l'IPA, **decritta
|
||||
|
||||
### Ottienilo da Apple
|
||||
|
||||
1. Installa l'app da pentestare sull'iPhone
|
||||
1. Installa l'app da pentest nell'iPhone
|
||||
2. Installa e avvia [Apple Configurator](https://apps.apple.com/au/app/apple-configurator/id1037126344?mt=12) sul tuo macos
|
||||
3. Apri `Terminal` sul tuo Mac e cd a `/Users/[username]/Library/Group\\ Containers/K36BKF7T3D.group.com.apple.configurator/Library/Caches/Assets/TemporaryItems/MobileApps`. L'IPA apparirà in questa cartella più tardi.
|
||||
4. Dovresti vedere il tuo dispositivo iOS. Fai doppio clic su di esso, quindi clicca su Aggiungi + → App dalla barra dei menu in alto.
|
||||
5. Dopo aver cliccato su Aggiungi, Configurator scaricherà l'IPA da Apple e tenterà di installarlo sul tuo dispositivo. Se hai seguito la mia raccomandazione precedente e hai già installato l'IPA, apparirà un messaggio che ti chiede di reinstallare l'app.
|
||||
5. Dopo aver cliccato su Aggiungi, Configurator scaricherà l'IPA da Apple e tenterà di inviarlo al tuo dispositivo. Se hai seguito la mia raccomandazione precedente e hai già installato l'IPA, apparirà un messaggio che ti chiede di reinstallare l'app.
|
||||
6. L'IPA dovrebbe essere scaricato all'interno di `/Users/[username]/Library/Group\\ Containers/K36BKF7T3D.group.com.apple.configurator/Library/Caches/Assets/TemporaryItems/MobileApps` da dove puoi prenderlo.
|
||||
|
||||
Controlla [https://dvuln.com/blog/modern-ios-pentesting-no-jailbreak-needed](https://dvuln.com/blog/modern-ios-pentesting-no-jailbreak-needed) per ulteriori informazioni dettagliate su questo processo.
|
||||
@ -47,11 +47,11 @@ Nota che potresti aver bisogno del **tweak AppSync Unified** da Cydia per preven
|
||||
Una volta installato, puoi utilizzare il **tweak Iridium** da Cydia per ottenere l'IPA decrittografato.
|
||||
|
||||
|
||||
### Patch delle autorizzazioni e ri-firma
|
||||
### Patch entitlements & re-sign
|
||||
|
||||
Per ri-firmare l'applicazione con l'autorizzazione `get-task-allow`, ci sono diversi strumenti disponibili come `app-signer`, `codesign` e `iResign`. `app-signer` ha un'interfaccia molto user-friendly che consente di ri-firmare facilmente un file IPA indicando l'IPA da ri-firmare, di **mettere `get-task-allow`** e il certificato e il profilo di provisioning da utilizzare.
|
||||
Per ri-firmare l'applicazione con il diritto `get-task-allow`, ci sono diversi strumenti disponibili come `app-signer`, `codesign` e `iResign`. `app-signer` ha un'interfaccia molto user-friendly che consente di ri-firmare facilmente un file IPA indicando l'IPA da ri-firmare, per **mettere `get-task-allow`** e il certificato e il profilo di provisioning da utilizzare.
|
||||
|
||||
Per quanto riguarda il certificato e i profili di firma, Apple offre **profili di firma per sviluppatori gratuiti** per tutti gli account tramite Xcode. Basta creare un'app e configurarne uno. Quindi, configura l'**iPhone per fidarsi delle app degli sviluppatori** navigando su `Impostazioni` → `Privacy e Sicurezza`, e clicca su `Modalità Sviluppatore`.
|
||||
Per quanto riguarda i certificati e i profili di firma, Apple offre **profili di firma per sviluppatori gratuiti** per tutti gli account tramite Xcode. Basta creare un'app e configurarne uno. Poi, configura l'**iPhone per fidarsi delle app degli sviluppatori** navigando su `Impostazioni` → `Privacy e Sicurezza`, e clicca su `Modalità Sviluppatore`.
|
||||
|
||||
Con l'IPA ri-firmata, è tempo di installarla nel dispositivo per effettuare il pentesting:
|
||||
```bash
|
||||
@ -75,7 +75,7 @@ Ora ci sono diversi modi maturi per sideloadare e mantenere le IPA ri-firmate ag
|
||||
|
||||
| Strumento | Requisiti | Punti di forza | Limitazioni |
|
||||
|-----------|-----------|----------------|-------------|
|
||||
| **AltStore 2 / SideStore** | Compagno macOS/Windows/Linux che ri-firma l'IPA ogni 7 giorni con un profilo di sviluppo gratuito | Ricarica automatica via Wi-Fi, funziona fino a iOS 17 | Necessita di un computer sulla stessa rete, limite di 3 app imposto da Apple |
|
||||
| **AltStore 2 / SideStore** | Compagno macOS/Windows/Linux che ri-firma l'IPA ogni 7 giorni con un profilo dev gratuito | Ricarica automatica via Wi-Fi, funziona fino a iOS 17 | Necessita di un computer sulla stessa rete, limite di 3 app imposto da Apple |
|
||||
| **TrollStore 1/2** | Dispositivo su iOS 14 – 15.4.1 vulnerabile al bug CoreTrust | Firma *permanente* (nessun limite di 7 giorni); nessun computer richiesto una volta installato | Non supportato su iOS 15.5+ (bug corretto) |
|
||||
|
||||
Per i pentest di routine sulle versioni attuali di iOS, Alt/Side-Store sono solitamente la scelta più pratica.
|
||||
@ -94,7 +94,7 @@ Recenti versioni di Frida (>=16) gestiscono automaticamente l'autenticazione dei
|
||||
|
||||
### Analisi dinamica automatizzata con MobSF (senza jailbreak)
|
||||
|
||||
[MobSF](https://mobsf.github.io/Mobile-Security-Framework-MobSF/) può strumentare un IPA firmato dallo sviluppatore su un dispositivo reale utilizzando la stessa tecnica (`get_task_allow`) e fornisce un'interfaccia web con browser di filesystem, cattura del traffico e console Frida【】. Il modo più veloce è eseguire MobSF in Docker e poi collegare il tuo iPhone tramite USB:
|
||||
[MobSF](https://mobsf.github.io/Mobile-Security-Framework-MobSF/) può strumentare un IPA firmato da sviluppatore su un dispositivo reale utilizzando la stessa tecnica (`get_task_allow`) e fornisce un'interfaccia web con browser di filesystem, cattura del traffico e console Frida【】. Il modo più veloce è eseguire MobSF in Docker e poi collegare il tuo iPhone tramite USB:
|
||||
```bash
|
||||
docker pull opensecurity/mobile-security-framework-mobsf:latest
|
||||
docker run -p 8000:8000 --privileged \
|
||||
@ -102,7 +102,7 @@ docker run -p 8000:8000 --privileged \
|
||||
opensecurity/mobile-security-framework-mobsf:latest
|
||||
# Browse to http://127.0.0.1:8000 and upload your resigned IPA
|
||||
```
|
||||
MobSF distribuirà automaticamente il binario, abiliterà un server Frida all'interno della sandbox dell'app e genererà un report interattivo.
|
||||
MobSF distribuirà automaticamente il binario, abiliterà un server Frida all'interno della sandbox dell'app e genererà un rapporto interattivo.
|
||||
|
||||
### iOS 17 & avvertenze sulla modalità Lockdown
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
{{#include ../banners/hacktricks-training.md}}
|
||||
|
||||
|
||||
## **Informazioni di Base**
|
||||
## **Informazioni di base**
|
||||
|
||||
Telnet è un protocollo di rete che offre agli utenti un modo NON sicuro per accedere a un computer tramite una rete.
|
||||
|
||||
@ -23,7 +23,7 @@ nmap -n -sV -Pn --script "*telnet* and safe" -p 23 <IP>
|
||||
```
|
||||
Lo script `telnet-ntlm-info.nse` otterrà informazioni NTLM (versioni di Windows).
|
||||
|
||||
Dalla [telnet RFC](https://datatracker.ietf.org/doc/html/rfc854): Nel Protocollo TELNET ci sono varie "**opzioni**" che saranno sanzionate e possono essere utilizzate con la struttura "**DO, DON'T, WILL, WON'T**" per consentire a un utente e a un server di concordare l'uso di un insieme di convenzioni più elaborate (o forse semplicemente diverse) per la loro connessione TELNET. Tali opzioni potrebbero includere la modifica del set di caratteri, la modalità di eco, ecc.
|
||||
Dalla [telnet RFC](https://datatracker.ietf.org/doc/html/rfc854): Nel protocollo TELNET ci sono varie "**opzioni**" che saranno sanzionate e possono essere utilizzate con la struttura "**DO, DON'T, WILL, WON'T**" per consentire a un utente e a un server di concordare l'uso di un insieme di convenzioni più elaborate (o forse semplicemente diverse) per la loro connessione TELNET. Tali opzioni potrebbero includere la modifica del set di caratteri, la modalità di eco, ecc.
|
||||
|
||||
**So che è possibile enumerare queste opzioni, ma non so come, quindi fammi sapere se sai come.**
|
||||
|
||||
@ -98,7 +98,7 @@ ncrack -p 23 --user admin -P common-pass.txt --connection-limit 4 <IP>
|
||||
# Medusa (parallel hosts)
|
||||
medusa -M telnet -h targets.txt -U users.txt -P passwords.txt -t 6 -f
|
||||
```
|
||||
La maggior parte delle botnet IoT (varianti di Mirai) scansiona ancora la porta 23 con piccoli dizionari di credenziali predefiniti—rispecchiare quella logica può identificare rapidamente dispositivi deboli.
|
||||
La maggior parte delle botnet IoT (varianti di Mirai) scansiona ancora la porta 23 con piccoli dizionari di credenziali predefinite—rispecchiare quella logica può identificare rapidamente dispositivi deboli.
|
||||
|
||||
### Sfruttamento & Post-Sfruttamento
|
||||
|
||||
|
@ -1,14 +1,14 @@
|
||||
# LESS Code Injection leading to SSRF & Local File Read
|
||||
# LESS Code Injection che porta a SSRF e Lettura di File Locali
|
||||
|
||||
{{#include ../banners/hacktricks-training.md}}
|
||||
|
||||
## Panoramica
|
||||
|
||||
LESS è un popolare pre-processore CSS che aggiunge variabili, mixin, funzioni e la potente direttiva `@import`. Durante la compilazione, il motore LESS **recupera le risorse indicate nelle dichiarazioni `@import`** e incorpora ("inline") i loro contenuti nel CSS risultante quando viene utilizzata l'opzione `(inline)`.
|
||||
LESS è un popolare pre-processore CSS che aggiunge variabili, mixin, funzioni e la potente direttiva `@import`. Durante la compilazione, il motore LESS **recupera le risorse referenziate nelle dichiarazioni `@import`** e incorpora ("inline") i loro contenuti nel CSS risultante quando viene utilizzata l'opzione `(inline)`.
|
||||
|
||||
Quando un'applicazione concatena **input controllato dall'utente** in una stringa che viene successivamente analizzata dal compilatore LESS, un attaccante può **iniettare codice LESS arbitrario**. Abusando di `@import (inline)`, l'attaccante può costringere il server a recuperare:
|
||||
|
||||
* File locali tramite il protocollo `file://` (divulgazione di informazioni / Inclusione di file locali).
|
||||
* File locali tramite il protocollo `file://` (divulgazione di informazioni / Inclusione di File Locali).
|
||||
* Risorse remote su reti interne o servizi di metadati cloud (SSRF).
|
||||
|
||||
Questa tecnica è stata vista in prodotti reali come **SugarCRM ≤ 14.0.0** (endpoint `/rest/v10/css/preview`).
|
||||
@ -22,7 +22,7 @@ Questa tecnica è stata vista in prodotti reali come **SugarCRM ≤ 14.0.0** (en
|
||||
3. Utilizzare `@import (inline) '<URL>';` per leggere risorse arbitrarie.
|
||||
4. Facoltativamente iniettare un **marcatore** (`data:` URI) dopo l'importazione per facilitare l'estrazione del contenuto recuperato dal CSS compilato.
|
||||
|
||||
### Lettura di file locali
|
||||
### Lettura di File Locali
|
||||
```
|
||||
1; @import (inline) 'file:///etc/passwd';
|
||||
@import (inline) 'data:text/plain,@@END@@'; //
|
||||
|
@ -52,7 +52,7 @@ Il pass-back *non* è un problema teorico – i fornitori continuano a pubblicar
|
||||
|
||||
### Xerox VersaLink – CVE-2024-12510 & CVE-2024-12511
|
||||
|
||||
Il firmware ≤ 57.69.91 delle stampanti multifunzione Xerox VersaLink C70xx ha permesso a un amministratore autenticato (o a chiunque quando le credenziali predefinite rimangono) di:
|
||||
Il firmware ≤ 57.69.91 delle MFP Xerox VersaLink C70xx ha consentito a un amministratore autenticato (o a chiunque quando le credenziali predefinite rimangono) di:
|
||||
|
||||
* **CVE-2024-12510 – LDAP pass-back**: cambiare l'indirizzo del server LDAP e attivare una ricerca, causando la perdita delle credenziali Windows configurate verso l'host controllato dall'attaccante.
|
||||
* **CVE-2024-12511 – SMB/FTP pass-back**: problema identico tramite destinazioni *scan-to-folder*, perdendo credenziali NetNTLMv2 o FTP in chiaro.
|
||||
@ -87,18 +87,18 @@ Le indicazioni del fornitore raccomandano esplicitamente:
|
||||
## Indurimento & Rilevamento
|
||||
|
||||
1. **Patch / aggiornamento firmware** MFP tempestivamente (controllare i bollettini PSIRT del fornitore).
|
||||
2. **Account di Servizio con Minimi Privilegi** – non utilizzare mai Domain Admin per LDAP/SMB/SMTP; limitare a scope OU *solo in lettura*.
|
||||
2. **Account di Servizio con Minimo Privilegio** – non utilizzare mai Domain Admin per LDAP/SMB/SMTP; limitare a scope OU *solo in lettura*.
|
||||
3. **Limitare l'Accesso alla Gestione** – posizionare le interfacce web/IPP/SNMP della stampante in una VLAN di gestione o dietro un ACL/VPN.
|
||||
4. **Disabilitare i Protocolli Non Utilizzati** – FTP, Telnet, raw-9100, cifrari SSL obsoleti.
|
||||
5. **Abilitare il Logging di Audit** – alcuni dispositivi possono sysloggare i fallimenti LDAP/SMTP; correlare bind inaspettati.
|
||||
6. **Monitorare i bind LDAP in chiaro** da fonti insolite (le stampanti dovrebbero normalmente comunicare solo con i DC).
|
||||
7. **SNMPv3 o disabilitare SNMP** – la community `public` spesso rivela configurazioni di dispositivo e LDAP.
|
||||
5. **Abilitare il Logging di Audit** – alcuni dispositivi possono sysloggare i fallimenti LDAP/SMTP; correlare i bind inaspettati.
|
||||
6. **Monitorare i Bind LDAP in Chiaro** da fonti insolite (le stampanti dovrebbero normalmente comunicare solo con i DC).
|
||||
7. **SNMPv3 o disabilitare SNMP** – la community `public` spesso rivela la configurazione del dispositivo e LDAP.
|
||||
|
||||
---
|
||||
## Riferimenti
|
||||
|
||||
- [https://grimhacker.com/2018/03/09/just-a-printer/](https://grimhacker.com/2018/03/09/just-a-printer/)
|
||||
- Rapid7. “Vulnerabilità degli Attacchi Pass-Back della Xerox VersaLink C7025 MFP.” Febbraio 2025.
|
||||
- Rapid7. “Vulnerabilità degli Attacchi Pass-Back Xerox VersaLink C7025 MFP.” Febbraio 2025.
|
||||
- Canon PSIRT. “Mitigazione delle Vulnerabilità contro il Passback SMTP/LDAP per Stampanti Laser e Stampanti Multifunzionali per Piccoli Uffici.” Maggio 2025.
|
||||
|
||||
{{#include ../../banners/hacktricks-training.md}}
|
||||
|
Loading…
x
Reference in New Issue
Block a user