MrHackerCharlie/Mutating-Viruses
GitHub: MrHackerCharlie/Mutating-Viruses
一个安全的 Python 教育项目,通过三个递进式演示直观展示了恶意软件的文件变异、图像隐写和自我复制等关键技术原理。
Stars: 1 | Forks: 0
# 🐍 Python 变异病毒演示
**⚠️ 仅供教育目的 - 完全安全的演示**
[](https://youtu.be/Vm_36JfLl-U)
[](https://discord.gg/rbCmYGg2rd)
[](https://x.com/MrHackerCharlie)
[](https://mrhackercharlie.unaux.com)
[](https://python.org)
[](LICENSE)
## 📌 **警告与免责声明**
本仓库中的代码演示了恶意软件中使用的文件变异、隐写术和自我复制技术。这是一个旨在教授网络安全概念的**安全、受控的演示**。
- ✅ 所有操作均隔离在当前文件夹中
- ✅ 不修改任何系统文件
- ✅ 无任何网络活动
- ✅ 无任何恶意意图或功能
**严禁将这些技术用于非法目的。**
**在测试安全概念之前,请务必获得适当的授权。**
## 🔥 **视频演示**
在 YouTube 上观看完整演示:
[](https://youtube.com/watch?v=Vm_36JfLl-U)
## 📚 **这是什么?**
本仓库包含**三个** Python 病毒演示,展示了:
1. **SHA-256 变异** - 文件在每次运行时都会更改其 hash
2. **多节点复制** - 病毒会创建副本并隐藏在图像中
3. **Windows 隐写术** - 病毒隐藏在图像中,删除自身并恢复
每个演示都建立在前一个的基础之上,展示了越来越复杂的技术。
## 🧬 **三大病毒**
### 病毒 1:SHA-256 变异 (Kali Linux)
**文件:** `virus_1_sha256_mutation/mutating_hash.py`
**描述:**
最简单的演示。一个 Python 脚本,它会在每次执行时更改自身的 SHA-256 hash。这展示了最基本的文件变异工作原理。
**功能:**
- 自修改代码
- 每次运行时 SHA-256 hash 都会改变
- 特征码绕过演示
- 安全且隔离的运行环境
**工作原理:**
1. 脚本读取自身内容
2. 在末尾添加随机数据
3. 用新内容保存自身
4. SHA-256 hash 完全改变
5. 原始代码仍然有效
**运行:**
```
python mutating_hash.py
sha256sum mutating_hash.py # Check hash change
```
### 病毒 2:多节点复制 (Kali Linux)
**文件:** `virus_2_multi_node/multi_node_virus.py`
**描述:**
一个更高级的演示。该病毒创建了自身的 3 个副本(节点),每个副本都隐藏在图像中并生成恢复引擎。即使你删除了原始文件,图像中依然保留着病毒。
**功能:**
- 自我复制(3 个节点)
- 图像隐写术 (LSB)
- 生成恢复引擎
- 删除后持久化
- 多节点冗余
**工作原理:**
1. 病毒创建 3 个文件夹 (Node_01, Node_02, Node_03)
2. 将自身复制到每个文件夹中
3. 在每个节点中创建恢复引擎
4. 图像中保存隐藏的病毒数据
5. 恢复引擎提取病毒
**运行:**
```
python multi_node_virus.py
python node_01/recovery_engine.py # Recover from Node 1
```
### 病毒 3:Windows 隐写术 (Windows 11)
**文件:** `virus_3_windows_steganography/mutating_virus.py`
**描述:**
最高级的演示。一个基于 Windows 的病毒,它将自身嵌入图像中,删除原始文件,并创建恢复引擎。每次恢复都会生成一个具有全新 SHA-256 hash 的文件。
**功能:**
- LSB 隐写术(隐藏在图像中)
- 嵌入后自我删除
- 创建恢复引擎
- 恢复时进行 SHA-256 hash 变异
- 无论是否存在图像均可工作
- Notepad 演示
**工作原理:**
1. 病毒寻找或创建图像
2. 使用 LSB 隐写术嵌入自身
3. 创建恢复引擎(不同的文件)
4. 请求确认
5. 删除自身
6. 恢复引擎提取病毒
7. 新文件具有完全不同的 SHA-256 hash
**运行:**
```
# 安装依赖
pip install -r requirements.txt
# 运行 virus
python mutating_virus.py
# 自删除后,运行 recovery
python recovery_engine.py
```
## 🛠️ **技术概述**
### 隐写引擎 (LSB)
LSB (Least Significant Bit,最低有效位) 隐写术技术将数据隐藏在图像像素的最低位中:
```
# 将数据隐藏在 image 中
binary_data = encode_to_binary(data)
for i, bit in enumerate(binary_data):
pixels[i] = (pixels[i] & 0xFE) | int(bit)
# 从 image 中提取数据
binary_data = ''.join(str(pixel & 1) for pixel in pixels)
data = decode_from_binary(binary_data)
```
### SHA-256 变异
病毒修改自身以更改其 hash:
```
# 读取当前 script
with open(__file__, 'rb') as f:
content = f.read()
# 添加随机数据
random_data = os.urandom(16)
new_content = content + random_data
# 保存(hash 发生变化!)
with open(__file__, 'wb') as f:
f.write(new_content)
```
### 自我复制与恢复
病毒创建副本和恢复机制:
```
# 创建 nodes
for i in range(3):
create_node(i)
copy_virus_to_node(i)
create_recovery_engine(i)
embed_in_image(i)
# 自毁
delete_original()
```
## 📦 **安装**
### 前置条件
```
# 需要 Python 3.9+
python --version
# 安装依赖
pip install -r requirements.txt
```
### 克隆仓库
```
git clone [https://github.com/YOUR_USERNAME/Python-Mutating-Virus-Demo.git](https://github.com/YOUR_USERNAME/Python-Mutating-Virus-Demo.git)
cd Python-Mutating-Virus-Demo
```
### 依赖项
**requirements.txt:**
```
pillow==10.1.0
numpy==1.24.3
```
## 🚀 **使用指南**
### 病毒 1:SHA-256 变异
```
cd virus_1_sha256_mutation
python mutating_hash.py
```
### 病毒 2:多节点复制
```
cd virus_2_multi_node
python multi_node_virus.py
```
### 病毒 3:Windows 隐写术
```
cd virus_3_windows_steganography
python mutating_virus.py
```
## 📊 **对比表**
| 功能 | 病毒 1 | 病毒 2 | 病毒 3 |
|---------|---------|---------|---------|
| SHA-256 变异 | ✅ | ✅ | ✅ |
| 自我复制 | ❌ | ✅ | ✅ |
| 图像隐写术 | ❌ | ✅ | ✅ |
| 自我删除 | ❌ | ❌ | ✅ |
| 恢复引擎 | ❌ | ✅ | ✅ |
| 多节点 | ❌ | ✅ | ❌ |
| 支持 Windows | ❌ | ❌ | ✅ |
## 🔒 **安全特性**
所有病毒都包含内置的安全措施:
- ✅ 隔离在当前目录
- ✅ 不修改系统文件
- ✅ 不更改注册表
- ✅ 无网络活动
- ✅ 无数据泄露
- ✅ 需要用户确认
- ✅ 显示教育警告
- ✅ 可通过删除文件夹进行清理
## 📖 **学习资源**
### 理解概念
- [LSB 隐写术](https://en.wikipedia.org/wiki/Steganography)
- [SHA-256 Hash 函数](https://en.wikipedia.org/wiki/SHA-256)
- [文件变异技术](https://en.wikipedia.org/wiki/Polymorphic_code)
- [Python PIL 文档](https://pillow.readthedocs.io/)
### 网络安全教育
- [OWASP 安全指南](https://owasp.org/)
- [道德黑客认证](https://www.eccouncil.org/ethical-hacking/)
- [Kali Linux 文档](https://www.kali.org/docs/)
## 📜 **许可证**
该项目基于 MIT 许可证授权 - 有关详细信息,请参阅 [LICENSE](LICENSE) 文件。
## 💬 **社区与支持**
加入我们的社区,讨论该项目和网络安全话题:
🐍 **Discord 服务器:** [https://discord.gg/rbCmYGg2rd](https://discord.gg/rbCmYGg2rd)
🐍 **在 X (Twitter) 上关注:** [https://x.com/MrHackerCharlie](https://x.com/MrHackerCharlie)
🐍 **访问网站:** [https://mrhackercharlie.unaux.com](https://mrhackercharlie.unaux.com)
## 📺 **观看视频**
[](https://youtube.com/watch?v=https://youtu.be/Vm_36JfLl-U)
## ⭐ **为该仓库加星**
如果您觉得这具有教育意义或很有趣,请为该仓库**加星**!
[](https://github.com/MrHackerCharlie/Mutating-Viruses/stargazers)
## ⚠️ **最后警告**
- ✅ 以此来学习网络安全知识
- ✅ 以此来了解恶意软件的工作原理
- ✅ 以此来防范攻击
- ❌ 切勿用于非法活动
- ❌ 切勿在未经授权的系统上使用
- ❌ 切勿作为真正的恶意软件传播
**切记:能力越大,责任越大。**
## 📧 **联系方式**
如有商业咨询、合作或问题,请联系:
- Discord: [https://discord.gg/rbCmYGg2rd](https://discord.gg/rbCmYGg2rd)
- Twitter: [@MrHackerCharlie](https://x.com/MrHackerCharlie)
- 网站: [mrhackercharlie.unaux.com](https://mrhackercharlie.unaux.com)
**用 ❤️ 为网络安全社区制作**
**#Python #Virus #Cybersecurity #EthicalHacking #KaliLinux #Windows #Steganography**
标签:DAST, DNS 反向解析, Python, 多态代码, 恶意软件分析, 教育演示, 无后门, 网络信息收集, 逆向工具, 隐写术