Translated ['src/generic-methodologies-and-resources/phishing-methodolog

This commit is contained in:
Translator 2025-07-24 14:15:23 +00:00
parent 8de124ebfb
commit 2f8c3f429a
3 changed files with 122 additions and 21 deletions

View File

@ -32,6 +32,7 @@
- [Clone a Website](generic-methodologies-and-resources/phishing-methodology/clone-a-website.md)
- [Detecting Phishing](generic-methodologies-and-resources/phishing-methodology/detecting-phising.md)
- [Discord Invite Hijacking](generic-methodologies-and-resources/phishing-methodology/discord-invite-hijacking.md)
- [Mobile Phishing Malicious Apps](generic-methodologies-and-resources/phishing-methodology/mobile-phishing-malicious-apps.md)
- [Phishing Files & Documents](generic-methodologies-and-resources/phishing-methodology/phishing-documents.md)
- [Basic Forensic Methodology](generic-methodologies-and-resources/basic-forensic-methodology/README.md)
- [Baseline Monitoring](generic-methodologies-and-resources/basic-forensic-methodology/file-integrity-monitoring.md)

View File

@ -6,7 +6,7 @@
1. Riconoscere la vittima
1. Selezionare il **dominio della vittima**.
2. Eseguire alcune basi di enumerazione web **cercando portali di accesso** utilizzati dalla vittima e **decidere** quale impersonare.
2. Eseguire alcune enumerazioni web di base **cercando portali di accesso** utilizzati dalla vittima e **decidere** quale impersonare.
3. Utilizzare alcune **OSINT** per **trovare email**.
2. Preparare l'ambiente
1. **Acquistare il dominio** che si intende utilizzare per la valutazione di phishing
@ -22,17 +22,17 @@
### Tecniche di Variazione del Nome di Dominio
- **Parola chiave**: Il nome di dominio **contiene** una **parola chiave** importante del dominio originale (es., zelster.com-management.com).
- **sottodominio con trattino**: Cambiare il **punto in un trattino** di un sottodominio (es., www-zelster.com).
- **sottodominio con trattino**: Cambiare il **punto con un trattino** di un sottodominio (es., www-zelster.com).
- **Nuovo TLD**: Stesso dominio utilizzando un **nuovo TLD** (es., zelster.org)
- **Omo-glyph**: **sostituisce** una lettera nel nome di dominio con **lettere che sembrano simili** (es., zelfser.com).
- **Trasposizione:** **scambia due lettere** all'interno del nome di dominio (es., zelsetr.com).
- **Singolarizzazione/Plurale**: Aggiunge o rimuove “s” alla fine del nome di dominio (es., zeltsers.com).
- **Singolarizzazione/Pluralizzazione**: Aggiunge o rimuove “s” alla fine del nome di dominio (es., zeltsers.com).
- **Omissione**: **rimuove una** delle lettere dal nome di dominio (es., zelser.com).
- **Ripetizione:** **ripete una** delle lettere nel nome di dominio (es., zeltsser.com).
- **Sostituzione**: Come l'omo-glyph ma meno furtivo. Sostituisce una delle lettere nel nome di dominio, forse con una lettera vicina alla lettera originale sulla tastiera (es., zektser.com).
- **Sottodominio**: Introduce un **punto** all'interno del nome di dominio (es., ze.lster.com).
- **Inserimento**: **inserisce una lettera** nel nome di dominio (es., zerltser.com).
- **Punto mancante**: Aggiungere il TLD al nome di dominio. (es., zelstercom.com)
- **Punto mancante**: Aggiunge il TLD al nome di dominio. (es., zelstercom.com)
**Strumenti Automatici**
@ -53,7 +53,7 @@ Quando questo concetto è **applicato alle richieste DNS**, è possibile che il
Ad esempio, una singola modifica di bit nel dominio "windows.com" può cambiarlo in "windnws.com."
Gli attaccanti possono **sfruttare questo registrando più domini di bit-flipping** simili a quello della vittima. La loro intenzione è reindirizzare gli utenti legittimi alla propria infrastruttura.
Gli attaccanti possono **sfruttare questo registrando più domini con bit-flipping** simili a quello della vittima. La loro intenzione è reindirizzare gli utenti legittimi alla propria infrastruttura.
Per ulteriori informazioni leggi [https://www.bleepingcomputer.com/news/security/hijacking-traffic-to-microsoft-s-windowscom-with-bitflipping/](https://www.bleepingcomputer.com/news/security/hijacking-traffic-to-microsoft-s-windowscom-with-bitflipping/)
@ -91,7 +91,7 @@ ssh -L 3333:127.0.0.1:3333 <user>@<ip>
**Configurazione del certificato TLS**
Prima di questo passaggio, dovresti **aver già acquistato il dominio** che intendi utilizzare e deve **puntare** all'**IP del VPS** dove stai configurando **gophish**.
Prima di questo passaggio dovresti aver **già acquistato il dominio** che intendi utilizzare e deve **puntare** all'**IP del VPS** dove stai configurando **gophish**.
```bash
DOMAIN="<domain>"
wget https://dl.eff.org/certbot-auto
@ -239,7 +239,7 @@ Puoi usare [https://www.spfwizard.net/](https://www.spfwizard.net) per generare
![](<../../images/image (1037).png>)
Questo è il contenuto che deve essere impostato all'interno di un record TXT nel dominio:
Questo è il contenuto che deve essere impostato all'interno di un record TXT all'interno del dominio:
```bash
v=spf1 mx a ip4:ip.ip.ip.ip ?all
```
@ -264,7 +264,7 @@ Questo tutorial si basa su: [https://www.digitalocean.com/community/tutorials/ho
> v=DKIM1; h=sha256; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA0wPibdqPtzYk81njjQCrChIcHzxOp8a1wjbsoNtka2X9QXCZs+iXkvw++QsWDtdYu3q0Ofnr0Yd/TmG/Y2bBGoEgeE+YTUG2aEgw8Xx42NLJq2D1pB2lRQPW4IxefROnXu5HfKSm7dyzML1gZ1U0pR5X4IZCH0wOPhIq326QjxJZm79E1nTh3xj" "Y9N/Dt3+fVnIbMupzXE216TdFuifKM6Tl6O/axNsbswMS1TH812euno8xRpsdXJzFlB9q3VbMkVWig4P538mHolGzudEBg563vv66U8D7uuzGYxYT4WS8NVm3QBMg0QKPWZaKp+bADLkOSB9J2nUpk4Aj9KB5swIDAQAB
> ```
### Testa il punteggio di configurazione della tua email
### Testa il punteggio della tua configurazione email
Puoi farlo usando [https://www.mail-tester.com/](https://www.mail-tester.com)\
Basta accedere alla pagina e inviare un'email all'indirizzo che ti forniscono:
@ -339,7 +339,7 @@ Nota che **per aumentare la credibilità dell'email**, è consigliato utilizzare
- Invia un'email a un **indirizzo inesistente** e controlla se la risposta ha qualche firma.
- Cerca **email pubbliche** come info@ex.com o press@ex.com o public@ex.com e invia loro un'email e aspetta la risposta.
- Prova a contattare **alcune email valide scoperte** e aspetta la risposta.
- Prova a contattare **qualche email valida scoperta** e aspetta la risposta.
![](<../../images/image (80).png>)
@ -356,13 +356,13 @@ Nota che **per aumentare la credibilità dell'email**, è consigliato utilizzare
![](<../../images/image (826).png>)
> [!TIP]
> Di solito dovrai modificare il codice HTML della pagina e fare alcuni test in locale (magari utilizzando un server Apache) **fino a quando non ti piacciono i risultati.** Poi, scrivi quel codice HTML nella casella.\
> Di solito dovrai modificare il codice HTML della pagina e fare alcuni test in locale (magari usando un server Apache) **fino a quando non ti piacciono i risultati.** Poi, scrivi quel codice HTML nella casella.\
> Nota che se hai bisogno di **utilizzare alcune risorse statiche** per l'HTML (magari alcune pagine CSS e JS) puoi salvarle in _**/opt/gophish/static/endpoint**_ e poi accedervi da _**/static/\<filename>**_
> [!TIP]
> Per il reindirizzamento potresti **reindirizzare gli utenti alla legittima pagina web principale** della vittima, o reindirizzarli a _/static/migration.html_ per esempio, mettere qualche **ruota che gira (**[**https://loading.io/**](https://loading.io)**) per 5 secondi e poi indicare che il processo è stato completato con successo**.
> Per il reindirizzamento potresti **reindirizzare gli utenti alla legittima pagina principale** della vittima, o reindirizzarli a _/static/migration.html_ per esempio, mettere qualche **ruota che gira (**[**https://loading.io/**](https://loading.io)**) per 5 secondi e poi indicare che il processo è stato completato con successo**.
### Utenti e Gruppi
### Utenti & Gruppi
- Imposta un nome
- **Importa i dati** (nota che per utilizzare il modello per l'esempio hai bisogno del nome, cognome e indirizzo email di ogni utente)
@ -378,7 +378,7 @@ Nota che il **Profilo di Invio consente di inviare un'email di prova per vedere
![](<../../images/image (192).png>)
> [!TIP]
> Ti consiglio di **inviare le email di prova a indirizzi di 10min mail** per evitare di essere inserito in blacklist durante i test.
> Ti consiglio di **inviare le email di prova a indirizzi di 10min mail** per evitare di essere inserito nella blacklist durante i test.
Una volta che tutto è pronto, lancia semplicemente la campagna!
@ -390,9 +390,9 @@ Se per qualche motivo desideri clonare il sito web, controlla la seguente pagina
clone-a-website.md
{{#endref}}
## Documenti e File Backdoor
## Documenti & File con Backdoor
In alcune valutazioni di phishing (principalmente per Red Teams) vorrai anche **inviare file contenenti qualche tipo di backdoor** (magari un C2 o semplicemente qualcosa che attivi un'autenticazione).\
In alcune valutazioni di phishing (principalmente per Red Teams) vorrai anche **inviare file contenenti qualche tipo di backdoor** (magari un C2 o magari solo qualcosa che attivi un'autenticazione).\
Controlla la seguente pagina per alcuni esempi:
{{#ref}}
@ -403,18 +403,18 @@ phishing-documents.md
### Via Proxy MitM
L'attacco precedente è piuttosto astuto poiché stai simulando un vero sito web e raccogliendo le informazioni fornite dall'utente. Sfortunatamente, se l'utente non ha inserito la password corretta o se l'applicazione che hai simulato è configurata con 2FA, **queste informazioni non ti permetteranno di impersonare l'utente ingannato**.
L'attacco precedente è piuttosto astuto poiché stai falsificando un sito web reale e raccogliendo le informazioni fornite dall'utente. Sfortunatamente, se l'utente non ha inserito la password corretta o se l'applicazione che hai falsificato è configurata con 2FA, **queste informazioni non ti permetteranno di impersonare l'utente ingannato**.
Qui è dove strumenti come [**evilginx2**](https://github.com/kgretzky/evilginx2)**,** [**CredSniper**](https://github.com/ustayready/CredSniper) e [**muraena**](https://github.com/muraenateam/muraena) sono utili. Questo strumento ti permetterà di generare un attacco simile a MitM. Fondamentalmente, gli attacchi funzionano nel seguente modo:
1. Tu **impersoni il modulo di accesso** della vera pagina web.
2. L'utente **invia** le sue **credenziali** alla tua pagina falsa e lo strumento le invia alla vera pagina web, **controllando se le credenziali funzionano**.
3. Se l'account è configurato con **2FA**, la pagina MitM chiederà di inserirlo e una volta che l'**utente lo introduce**, lo strumento lo invierà alla vera pagina web.
1. Tu **impersoni il modulo di accesso** della pagina web reale.
2. L'utente **invia** le sue **credenziali** alla tua pagina falsa e lo strumento le invia alla pagina web reale, **controllando se le credenziali funzionano**.
3. Se l'account è configurato con **2FA**, la pagina MitM chiederà di inserirlo e una volta che l'**utente lo introduce**, lo strumento lo invierà alla pagina web reale.
4. Una volta che l'utente è autenticato, tu (come attaccante) avrai **catturato le credenziali, il 2FA, il cookie e qualsiasi informazione** di ogni interazione mentre lo strumento sta eseguendo un MitM.
### Via VNC
E se invece di **inviare la vittima a una pagina malevola** con lo stesso aspetto di quella originale, la invii a una **sessione VNC con un browser connesso alla vera pagina web**? Sarai in grado di vedere cosa fa, rubare la password, il MFA utilizzato, i cookie...\
E se invece di **inviare la vittima a una pagina malevola** con lo stesso aspetto di quella originale, la invii a una **sessione VNC con un browser connesso alla pagina web reale**? Sarai in grado di vedere cosa fa, rubare la password, il MFA utilizzato, i cookie...\
Puoi fare questo con [**EvilnVNC**](https://github.com/JoelGMSec/EvilnoVNC)
## Rilevare la rilevazione
@ -436,12 +436,18 @@ Usa [**Phishious** ](https://github.com/Rices/Phishious) per valutare se la tua
## Hijacking degli Appunti / Pastejacking
Gli attaccanti possono silenziosamente copiare comandi malevoli negli appunti della vittima da una pagina web compromessa o typosquatted e poi ingannare l'utente a incollarli all'interno di **Win + R**, **Win + X** o una finestra del terminale, eseguendo codice arbitrario senza alcun download o allegato.
Gli attaccanti possono silenziosamente copiare comandi malevoli negli appunti della vittima da una pagina web compromessa o typosquatted e poi ingannare l'utente a incollarli dentro **Win + R**, **Win + X** o una finestra del terminale, eseguendo codice arbitrario senza alcun download o allegato.
{{#ref}}
clipboard-hijacking.md
{{#endref}}
## Phishing Mobile & Distribuzione di App Malevole (Android & iOS)
{{#ref}}
mobile-phishing-malicious-apps.md
{{#endref}}
## Riferimenti
- [https://zeltser.com/domain-name-variations-in-phishing/](https://zeltser.com/domain-name-variations-in-phishing/)

View File

@ -0,0 +1,94 @@
# Mobile Phishing & Malicious App Distribution (Android & iOS)
{{#include ../../banners/hacktricks-training.md}}
> [!INFO]
> Questa pagina tratta delle tecniche utilizzate dagli attori delle minacce per distribuire **APK Android malevoli** e **profili di configurazione mobile iOS** attraverso il phishing (SEO, ingegneria sociale, negozi falsi, app di incontri, ecc.).
> Il materiale è adattato dalla campagna SarangTrap esposta da Zimperium zLabs (2025) e da altre ricerche pubbliche.
## Flusso di Attacco
1. **Infrastruttura SEO/Phishing**
* Registrare dozzine di domini simili (incontri, condivisione cloud, servizio auto…).
Utilizzare parole chiave e emoji nella lingua locale nell'elemento `<title>` per posizionarsi su Google.
Ospitare *sia* le istruzioni di installazione Android (`.apk`) che iOS sulla stessa pagina di atterraggio.
2. **Download Prima Fase**
* Android: link diretto a un APK *non firmato* o “negozio di terze parti”.
* iOS: `itms-services://` o link HTTPS semplice a un profilo **mobileconfig** malevolo (vedi sotto).
3. **Ingegneria Sociale Post-installazione**
* Al primo avvio, l'app chiede un **codice di invito / verifica** (illusione di accesso esclusivo).
* Il codice è **POSTato su HTTP** al Command-and-Control (C2).
* C2 risponde `{"success":true}` ➜ il malware continua.
* L'analisi dinamica di Sandbox / AV che non invia un codice valido non vede **comportamenti malevoli** (evasione).
4. **Abuso dei Permessi a Runtime** (Android)
* I permessi pericolosi vengono richiesti **solo dopo una risposta positiva dal C2**:
```xml
<uses-permission android:name="android.permission.READ_CONTACTS"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<!-- Le versioni più vecchie richiedevano anche permessi SMS -->
```
* Le varianti recenti **rimuovono `<uses-permission>` per SMS da `AndroidManifest.xml`** ma lasciano il percorso del codice Java/Kotlin che legge gli SMS tramite riflessione ⇒ abbassa il punteggio statico pur rimanendo funzionale su dispositivi che concedono il permesso tramite abuso di `AppOps` o obiettivi vecchi.
5. **Interfaccia Facciata & Raccolta in Background**
* L'app mostra viste innocue (visualizzatore SMS, selettore galleria) implementate localmente.
* Nel frattempo, esfiltra:
- IMEI / IMSI, numero di telefono
- Dump completo di `ContactsContract` (array JSON)
- JPEG/PNG da `/sdcard/DCIM` compressi con [Luban](https://github.com/Curzibn/Luban) per ridurre le dimensioni
- Contenuto SMS opzionale (`content://sms`)
I payload sono **compressi in batch** e inviati tramite `HTTP POST /upload.php`.
6. **Tecnica di Consegna iOS**
* Un singolo **profilo di configurazione mobile** può richiedere `PayloadType=com.apple.sharedlicenses`, `com.apple.managedConfiguration`, ecc. per iscrivere il dispositivo in una supervisione simile a “MDM”.
* Istruzioni di ingegneria sociale:
1. Aprire Impostazioni ➜ *Profilo scaricato*.
2. Toccare *Installa* tre volte (screenshot sulla pagina di phishing).
3. Fidarsi del profilo non firmato ➜ l'attaccante ottiene i diritti su *Contatti* & *Foto* senza revisione dell'App Store.
7. **Livello di Rete**
* HTTP semplice, spesso sulla porta 80 con intestazione HOST come `api.<phishingdomain>.com`.
* `User-Agent: Dalvik/2.1.0 (Linux; U; Android 13; Pixel 6 Build/TQ3A.230805.001)` (no TLS → facile da individuare).
## Test Difensivi / Suggerimenti per il Red-Team
* **Bypass Analisi Dinamica** Durante la valutazione del malware, automatizzare la fase del codice di invito con Frida/Objection per raggiungere il ramo malevolo.
* **Manifest vs. Diff a Runtime** Confrontare `aapt dump permissions` con `PackageManager#getRequestedPermissions()` a runtime; la mancanza di permessi pericolosi è un campanello d'allarme.
* **Canarino di Rete** Configurare `iptables -p tcp --dport 80 -j NFQUEUE` per rilevare picchi di POST non solidi dopo l'inserimento del codice.
* **Ispezione mobileconfig** Utilizzare `security cms -D -i profile.mobileconfig` su macOS per elencare `PayloadContent` e individuare diritti eccessivi.
## Idee di Rilevamento per il Blue-Team
* **Trasparenza dei Certificati / Analisi DNS** per catturare picchi improvvisi di domini ricchi di parole chiave.
* **Regex User-Agent & Path**: `(?i)POST\s+/(check|upload)\.php` da client Dalvik al di fuori di Google Play.
* **Telemetria Codice di Invito** POST di codici numerici di 68 cifre poco dopo l'installazione dell'APK può indicare staging.
* **Firma MobileConfig** Bloccare profili di configurazione non firmati tramite politica MDM.
## Utili Frida Snippet: Auto-Bypass Codice di Invito
```python
# frida -U -f com.badapp.android -l bypass.js --no-pause
# Hook HttpURLConnection write to always return success
Java.perform(function() {
var URL = Java.use('java.net.URL');
URL.openConnection.implementation = function() {
var conn = this.openConnection();
var HttpURLConnection = Java.use('java.net.HttpURLConnection');
if (Java.cast(conn, HttpURLConnection)) {
conn.getResponseCode.implementation = function(){ return 200; };
conn.getInputStream.implementation = function(){
return Java.use('java.io.ByteArrayInputStream').$new("{\"success\":true}".getBytes());
};
}
return conn;
};
});
```
## Indicatori (Generici)
```
/req/checkCode.php # invite code validation
/upload.php # batched ZIP exfiltration
LubanCompress 1.1.8 # "Luban" string inside classes.dex
```
## Riferimenti
- [The Dark Side of Romance: SarangTrap Extortion Campaign](https://zimperium.com/blog/the-dark-side-of-romance-sarangtrap-extortion-campaign)
- [Luban Android image compression library](https://github.com/Curzibn/Luban)
{{#include ../../banners/hacktricks-training.md}}