dddd 项目使用教程

dddd 项目使用教程

dddd一款高可拓展的指纹识别、供应链漏洞探测工具。支持从Hunter、Fofa批量拉取目标。项目地址:https://gitcode.com/gh_mirrors/dd/dddd

1. 项目的目录结构及介绍

dddd/
├── README.md
├── LICENSE
├── dddd.py
├── config/
│   └── config.yaml
├── modules/
│   ├── scanner.py
│   ├── fingerprint.py
│   └── utils.py
├── pocs/
│   ├── poc1.py
│   ├── poc2.py
│   └── ...
└── results/
    ├── result.txt
    ├── result.html
    └── audit.log
  • README.md: 项目介绍和使用说明。
  • LICENSE: 项目许可证。
  • dddd.py: 项目主启动文件。
  • config/: 配置文件目录。
    • config.yaml: 主要配置文件。
  • modules/: 功能模块目录。
    • scanner.py: 扫描模块。
    • fingerprint.py: 指纹识别模块。
    • utils.py: 工具函数模块。
  • pocs/: 漏洞检测脚本目录。
    • poc1.py, poc2.py, ...: 具体的漏洞检测脚本。
  • results/: 结果输出目录。
    • result.txt: 文本格式输出结果。
    • result.html: HTML格式输出结果。
    • audit.log: 审计日志文件。

2. 项目的启动文件介绍

dddd.py

dddd.py 是项目的主启动文件,负责初始化配置、加载模块和启动扫描任务。以下是启动文件的主要功能:

  • 初始化配置: 读取 config/config.yaml 中的配置信息。
  • 加载模块: 导入 modules/ 目录下的各个功能模块。
  • 启动扫描任务: 根据用户输入的参数启动相应的扫描任务。

使用示例:

python dddd.py -t 192.168.0.1/24

3. 项目的配置文件介绍

config/config.yaml

config/config.yaml 是项目的主要配置文件,包含扫描参数、输出设置、日志配置等。以下是配置文件的主要内容:

scan:
  target: "192.168.0.1/24"
  ports: [80, 443, 3306]
  timeout: 10

output:
  format: "txt"
  file: "results/result.txt"

log:
  level: "INFO"
  file: "results/audit.log"
  • scan: 扫描配置。
    • target: 扫描目标。
    • ports: 扫描端口。
    • timeout: 超时设置。
  • output: 输出配置。
    • format: 输出格式(txt 或 html)。
    • file: 输出文件路径。
  • log: 日志配置。
    • level: 日志级别。
    • file: 日志文件路径。

通过修改 config.yaml 文件,可以灵活配置扫描任务的各项参数。

dddd一款高可拓展的指纹识别、供应链漏洞探测工具。支持从Hunter、Fofa批量拉取目标。项目地址:https://gitcode.com/gh_mirrors/dd/dddd

dd-trainer 是一个基于 PyTorch 的深度学习模型训练框架,可以用于训练各种自然语言处理模型,比如文本分类、情感分析、机器翻译、问答系统等等。下面是一个简单的 dd-trainer 训练教程: 1. 安装 dd-trainer 可以通过 pip 安装 dd-trainer: ```bash pip install dd-trainer ``` 2. 准备数据 dd-trainer 支持多种数据格式,比如 CSV、JSON、XML、TXT 等等。你需要将你的数据转换为 dd-trainer 支持的格式,并将其分成训练集、验证集和测试集。下面是一个 CSV 格式的数据示例: ```csv text,label "这是一篇正面的文章。",1 "这是一篇负面的文章。",0 ``` 其中,`text` 列是文本数据,`label` 列是对应的分类标签。 3. 定义模型 你需要定义一个模型类,继承自 `dd_trainer.models.base.ModelBase` 类,并实现 `forward` 方法。下面是一个简单的文本分类模型示例: ```python import torch.nn as nn class TextClassificationModel(ModelBase): def __init__(self, vocab_size, num_classes, embedding_dim, hidden_dim, num_layers): super().__init__() self.embedding = nn.Embedding(vocab_size, embedding_dim) self.rnn = nn.LSTM(embedding_dim, hidden_dim, num_layers, bidirectional=True) self.fc = nn.Linear(hidden_dim * 2, num_classes) def forward(self, inputs): x = self.embedding(inputs) x, _ = self.rnn(x) x = x.mean(dim=1) x = self.fc(x) return x ``` 这个模型使用了一个双向 LSTM 来提取文本特征,并通过一个全连接层将特征映射为分类标签。 4. 配置训练参数 你需要定义一个字典类型的训练参数,包括模型类、数据路径、训练批次大小、学习率、损失函数、优化器等等。下面是一个简单的训练参数示例: ```python config = { 'model_class': TextClassificationModel, 'data_path': 'data.csv', 'batch_size': 32, 'lr': 0.001, 'loss_fn': nn.CrossEntropyLoss(), 'optimizer': torch.optim.Adam, 'optimizer_kwargs': {'weight_decay': 0.01}, 'num_epochs': 10, 'device': 'cuda', 'log_step': 10, 'save_step': 100, 'output_dir': 'output', } ``` 5. 训练模型 你可以通过以下代码开始训练模型: ```python from dd_trainer.trainers import TextClassificationTrainer trainer = TextClassificationTrainer(config) trainer.train() ``` 这个训练器会自动加载数据、模型,并在指定的设备上训练模型。训练过程中,你可以在控制台看到训练的进度和损失值。 6. 测试模型 你可以通过以下代码测试模型: ```python from dd_trainer.utils import load_model, load_data model = load_model('output/best_model.pt') data = load_data('data.csv', 'test') inputs, labels = data['inputs'], data['labels'] with torch.no_grad(): outputs = model(inputs) preds = outputs.argmax(dim=-1) acc = (preds == labels).float().mean().item() print(f'Test accuracy: {acc}') ``` 这个代码会加载训练好的模型和测试数据,并在测试数据上计算准确率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

卓融浪Keene

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值