gerezk/IoT-security-MLops

GitHub: gerezk/IoT-security-MLops

基于 MQTTset 数据集构建 MLOps 流水线,用于预测和检测针对 MQTT 协议 IoT 网络的网络攻击。

Stars: 0 | Forks: 0

# 预测 IoT 网络网络攻击的 MLops 流水线 ## 📌 太长不看 tbw ## 🚀 概述 tbw ## 📊🔍 消息频率验证 在文档记录与实际观察到的消息频率之间发现了不一致之处,主要涉及标记为 random 的传感器,这通常意味着发送是在随机周期(*m*)内完成的,且 *m* ≤ *n*,其中 *n* 是文档记录的消息频率。所有 random 传感器的 *n* 值都被指定为 3600。这意味着消息应在 0 到 3600 秒之间随机分布。 然而,结果发现所有 random 传感器的行为都像周期性传感器一样,消息频率为 1 秒。此外,光照强度传感器本应每 1800 秒推送一条消息,但实际观察到的频率却是 180 秒。 这一发现并不会使该数据集的主要用途失效,因为其重点在于协议级别的特征和攻击签名,而不是精确的时间结构。但在为 MLops 流水线创建测试时,仍需注意这一点。 有关分析的详细信息,请参阅 `../notebooks/msg_freq_validation.ipynb`。 ## ✅ 测试 ### 训练前测试 有关训练前测试的理由,请参阅 `../notebooks/pre-training_analysis.ipynb`。 测试的实现可以在 `../src/tests/pre-training-test.py` 中找到。 ### 部署前测试 tbd ### 部署后测试 tbd ## 🛠️ 技术栈 - Python (3.12) - 测试 - Great Expectations - 数据处理 - pandas - NumPy - 机器学习 - tbd ## ▶️ 如何运行 ### Docker 克隆仓库: ``` gh repo clone gerezk/IoT-security-MLops cd IoT-security-MLops ``` 打开 Docker: ``` open -a Docker ``` 构建容器: ``` docker build -t mqtt-mlops . ``` 运行容器: ``` docker run -it \ -v $(pwd)/data/processed:/app/data/processed \ -v $(pwd)/test_results:/app/test_results \ mqtt-mlops ``` ### 虚拟环境 本仓库仅保证在 Python 3.12 环境下正常运行。 ``` python3.12 -m venv .venv ``` 如果使用 Mac/Linux: ``` source .venv/bin/activate ``` 如果使用 Windows: ``` .venv\Scripts\activate ``` 安装依赖: ``` pip install -r requirements.txt ``` ## ℹ️ 来源 项目中的数据集基于 MQTTset。数据集创建者的目标是提供一个基于 MQTT 通信协议的现实 IoT 配置数据集,该协议是一种专门用于 IoT 场景的网络协议。 完整数据集位于 [Kaggle](https://www.kaggle.com/datasets/cnrieiit/mqttset)。其采用 [CC BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/) 许可证。 更多信息请参阅该论文([DOI: 10.3390/s20226578](https://doi.org/10.3390/s20226578))。 预处理后的数据集可在 [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.19663452.svg)](https://doi.org/10.5281/zenodo.19663452) 找到。 这些数据集同样采用 [CC BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/) 许可证。
标签:AMSI绕过, Apex, CISA项目, Docker, Great Expectations, IoT网络, MLOps, MQTTset数据集, NumPy, Python, 人工智能安全, 协议分析, 合规性, 威胁检测, 安全运营, 安全防御评估, 工业物联网, 异常检测, 扫描框架, 数据科学, 数据管道, 数据验证, 无后门, 机器学习, 机器学习运维, 权限提升, 模型部署, 消息频率分析, 物联网安全, 网络安全, 网络攻击预测, 请求拦截, 资源验证, 软件工程, 逆向工具, 隐私保护