Auteur Sujet: Reverse Engineering : Nouveau système de génération de l'option 90 DHCP  (Lu 230339 fois)

0 Membres et 1 Invité sur ce sujet

basilix

  • Abonné Orange Fibre
  • *
  • Messages: 257
Reverse Engineering : Nouveau système de génération de l'option 90 DHCP
« Réponse #768 le: 08 juin 2024 à 14:11:55 »
@xavierg : Intéressant, merci pour ces informations !

xavierg

  • Abonné Orange Fibre
  • *
  • Messages: 102
Reverse Engineering : Nouveau système de génération de l'option 90 DHCP
« Réponse #769 le: 08 juin 2024 à 15:38:28 »
Petit complément rigolo concernant la possibilité de retrouver le mot de passe originel par bruteforce à partir de l'option 90 : une fois le préfixe (1 caractère), le suffixe (16 caractères) et le hash MD5 extraits de l'option 90, le bruteforce sur une machine moderne est une formalité.
Exemple avec :
  • le préfixe A
  • le suffixe SALTSALTSALTSALT
  • le hash MD5 67160e9d535f08670f3b739e93d455c5

$ echo 67160e9d535f08670f3b739e93d455c5 > /tmp/hashfile
$ time hashcat --optimized-kernel-enable --hash-type=0 --attack-mode=3 --custom-charset1='?l?d' /tmp/hashfile 'A?1?1?1?1?1?1?1SALTSALTSALTSALT'

hashcat (v6.2.6) starting

OpenCL API (OpenCL 3.0 PoCL 5.0+debian  Linux, None+Asserts, RELOC, SPIR, LLVM 17.0.6, SLEEF, DISTRO, POCL_DEBUG) - Platform #1 [The pocl project]
==================================================================================================================================================
* Device #1: cpu-skylake-avx512-AMD Ryzen 7 7840HS w/ Radeon 780M Graphics, 28985/58034 MB (8192 MB allocatable), 16MCU

Minimum password length supported by kernel: 0
Maximum password length supported by kernel: 55

Hashes: 1 digests; 1 unique digests, 1 unique salts
Bitmaps: 16 bits, 65536 entries, 0x0000ffff mask, 262144 bytes, 5/13 rotates

Optimizers applied:
* Optimized-Kernel
* Zero-Byte
* Precompute-Init
* Meet-In-The-Middle
* Early-Skip
* Not-Salted
* Not-Iterated
* Single-Hash
* Single-Salt
* Brute-Force
* Raw-Hash

Watchdog: Temperature abort trigger set to 90c

Host memory required for this attack: 4 MB

67160e9d535f08670f3b739e93d455c5:Apx4fuegSALTSALTSALTSALT

Session..........: hashcat
Status...........: Cracked
Hash.Mode........: 0 (MD5)
Hash.Target......: 67160e9d535f08670f3b739e93d455c5
Time.Started.....: Sat Jun  8 15:28:51 2024 (21 secs)
Time.Estimated...: Sat Jun  8 15:29:12 2024 (0 secs)
Kernel.Feature...: Optimized Kernel
Guess.Mask.......: A?1?1?1?1?1?1?1SALTSALTSALTSALT [24]
Guess.Charset....: -1 ?l?d, -2 Undefined, -3 Undefined, -4 Undefined
Guess.Queue......: 1/1 (100.00%)
Speed.#1.........:  2117.3 MH/s (1.49ms) @ Accel:1024 Loops:256 Thr:1 Vec:16
Recovered........: 1/1 (100.00%) Digests (total), 1/1 (100.00%) Digests (new)
Progress.........: 43804786688/78364164096 (55.90%)
Rejected.........: 0/43804786688 (0.00%)
Restore.Point....: 33783808/60466176 (55.87%)
Restore.Sub.#1...: Salt:0 Amplifier:1024-1280 Iteration:0-256
Candidate.Engine.: Device Generator
Candidates.#1....: Ag7tjuegSALTSALTSALTSALT -> A2zspcobSALTSALTSALTSALT
Hardware.Mon.#1..: Temp:100c Util: 89%

Started: Sat Jun  8 15:28:50 2024
Stopped: Sat Jun  8 15:29:13 2024

real    0m22.989s
user    4m45.080s
sys     0m3.339s

En 23 secondes, hashcat a déterminé que le hash MD5 correspondait à Apx4fuegSALTSALTSALTSALT
Et pour cause : à raison de 2 GH/s, les (26+10)⁷ = 78 364 164 096 combinaisons possibles ne devraient pas tenir plus de 40 secondes.

Mastah

  • Abonné Orange Fibre
  • *
  • Messages: 369
  • XGS-PON et G-PON
Reverse Engineering : Nouveau système de génération de l'option 90 DHCP
« Réponse #770 le: 08 juin 2024 à 18:02:13 »
@zoc : J'essaye d'ajouter plusieurs niveaux de protection comme sur un serveur.

Je vais créer un utilisateur courant recevant des droits administrateurs via sudo et désactiver le compte « root ». Suivre les bonnes pratiques.
J'ai conscience que ce genre de mesures peuvent devenir fragiles mais cela me permet de progresser par petit bout.

C'est pas comme ça qu'on secure un serveur.
Si quelqu'un est sur ta machine c'est deja trop tard.

Les bonnes pratiques:
- tout les comptes system en /bin/null (impossible de se log, y compris en ssh)
- pas d'ouverture sur le net (sauf via bastion (proxy ssh))
- utilisation de vpn
- utilisation de clef ssh (ed25519 si possible) pour s'auth plutôt qu'un password
- utilisation d'un password ultra complex / ultra long qui n'est utilisé qu'en cas de problème avec la clef ssh
- pas de sudo su -

xavierg

  • Abonné Orange Fibre
  • *
  • Messages: 102
Reverse Engineering : Nouveau système de génération de l'option 90 DHCP
« Réponse #771 le: 08 juin 2024 à 18:59:49 »
- tout les comptes system en /bin/null (impossible de se log, y compris en ssh)

Je pense que tu voulais dire /usr/sbin/nologin ou /bin/false.

- utilisation d'un password ultra complex / ultra long qui n'est utilisé qu'en cas de problème avec la clef ssh

Je dirais plutôt : qu'en cas de problème avec la conf réseau qui rend sshd injoignable (j'y ai eu droit récemment).

Je te rejoins sur tous les autres points.

basilix

  • Abonné Orange Fibre
  • *
  • Messages: 257
Reverse Engineering : Nouveau système de génération de l'option 90 DHCP
« Réponse #772 le: 08 juin 2024 à 19:59:39 »
@Mastah @xavierg :

J'ai lu un livre sur ce type de sujet.

La sécurité c'est durcir au possible la tâche d'un attaquant potentiel. Ne pas abandonner le contrôle de son système en cas de compromission.

Mastah

  • Abonné Orange Fibre
  • *
  • Messages: 369
  • XGS-PON et G-PON
Reverse Engineering : Nouveau système de génération de l'option 90 DHCP
« Réponse #773 le: 08 juin 2024 à 20:35:49 »
@Mastah @xavierg :

J'ai lu un livre sur ce type de sujet.

La sécurité c'est durcir au possible la tâche d'un attaquant potentiel. Ne pas abandonner le contrôle de son système en cas de compromission.

Tu parles d'une machine chez toi. Unplug le rj45, problème réglé :)
Tu fais un poil dans l'excès de zèle :D
« Modifié: 09 juin 2024 à 02:36:40 par Mastah »

levieuxatorange

  • Expert Orange
  • Expert
  • *
  • Messages: 176
Reverse Engineering : Nouveau système de génération de l'option 90 DHCP
« Réponse #774 le: 10 juin 2024 à 08:35:57 »
Petit complément rigolo concernant la possibilité de retrouver le mot de passe originel par bruteforce à partir de l'option 90 : une fois le préfixe (1 caractère), le suffixe (16 caractères) et le hash MD5 extraits de
Bonjour

Effectivement.

En sécurité, par contre, il y a toujours une analyse de où se trouve la donnée et comment on la récupère.

J'ai mon analyse, mais la tienne m'intéresse, là peux tu faire une analyse sécurité de "comment je récupère l'option 90" avant de lancer la Brute Force.

Ne jamais oublier que la sécu c'est un numéro d'équilibriste entre le risque, les moyens à mettre en oeuvre pour ce risque, le gain à grande échelle, et ce qu'il est plus facile (pour l'attaquant) de faire ailleurs :)
Avec deux règles d'or à retenir : 1) l'attaquant (enfin au dela du scriptkidy) est en général très bon, 2) il est là pour faire de l'argent et sans se faire attraper, donc il va tenter de le faire de très loin de chez toi.
Une règle du milieux communément admise est de ne jamais attaquer sur son propre territoire juridique ....
Si c'est pour la beauté de la chose mais que pour faire l'attaque, il doit _déjà_ être physiquement chez toi, ben ... c'est un autre sujet

D'ailleurs point intéressant, le CHAP c'est hyper vieux (en sécu c'est un synonyme de pourris), mais finalement cela reste un standard de fait car avec une surface d'exploitation hyper faible qui compense assez largement la faiblesse inhérente au protocole ...

LeVieux


xavierg

  • Abonné Orange Fibre
  • *
  • Messages: 102
Reverse Engineering : Nouveau système de génération de l'option 90 DHCP
« Réponse #775 le: 10 juin 2024 à 13:16:41 »
En sécurité, par contre, il y a toujours une analyse de où se trouve la donnée et comment on la récupère. [...]

Entièrement d'accord. Ici, j'ai fait tourner hashcat pour bien démontrer à basilix qu'il était possible de récupérer l'utilisateur et le mot de passe Orange à partir de l'option 90.
La récupération de l'option 90 elle-même peut se faire :
- théoriquement en sniffant le réseau, mais en pratique je ne vois pas de positionnement qui rendrait cette option abordable sur les plans opérationnel et financier.
- en pratique par attaque sur le routeur. Par exemple, on pourrait imaginer que le routeur expose un service sur Internet (on est dans la section "Remplacer la LiveBox par un routeur" mais il faut bien voir que c'est aussi la section "Remplacer la LiveBox par toute autre forme d'ordinateur") et que ce service soit vulnérable à une RCE à un instant t. À partir de là, soit le fichier contenant l'option 90 est world-readable, soit un composant (kernel ou service exécuté en root) est vulnérable et tout le routeur tombe sous le contrôle de l'attaquant, rendant l'accès à l'option 90 trivial.

À ce stade-là, l'attaquant possède l'option 90, donc les credentials Orange du propriétaire du routeur et... et je ne sais pas. Je ne sais pas à quoi ça sert de voler ces identifiants. Je ne crois pas qu'on puisse les utiliser pour du social engineering, je ne pense pas qu'ils suffisent à usurper l'identité d'un autre client Orange... peut-être sur le moment, mais une enquête interne pointerait le décalage entre l'adresse connue de l'abonné et la ligne physique utilisée pour présenter ces credentials.

D'où ma recommandation de veiller aux permissions Unix des fichiers contenant les credentials et/ou l'option 90, parce que ça ne coûte quasiment rien et que ça devrait être un réflexe systématique en présence de secrets/credentials. Mais je ne pense pas que les credentials Orange méritent plus d'efforts que cela.