EZ-PoC-Llama3.1-8B
模型简介
EZ-PoC-Llama3.1-8B 是 EZTEAM 推出的首个围绕 EZ 生态训练的 YAML PoC 生成模型,也是目前首个公开的 PoC 格式微调模型。该模型基于 Llama3.1-8B 架构,通过 LoRA 微调技术,使用 EZ 历史 PoC 数据进行训练。
EZ-PoC 系列模型专注于生成 EZ 扫描器能够识别的格式化(YAML)数据,为自动化渗透测试提供强大的扩展能力和灵活控制能力。
模型特点
- PoC 生成能力:能够将自然语言描述转换为符合 EZ 扫描器标准的 YAML PoC 插件。
- 自动化支持:为渗透测试提供高效的自动化工具支持,减少手动编写 PoC 的时间。
- 灵活控制:通过简单的提示词激活,用户可以灵活控制生成内容。
使用方法
激活 PoC 生成能力
在使用模型生成 YAML PoC 时,需要在对话中使用以下提示词激活(也可以放到 system prompt 中):
将以下描述转换成yaml poc插件,只返回yaml数据,不返回其他
示例
输入:
写一个poc,请求/path.txt,判断是否包含123456
输出:
name: poc-yaml-path-txt-contains-123456
level: 1
finger: |
finger.name.lcontains("path.txt")
rules:
- method: GET
path: /path.txt
expression: |
response.body.bcontains(b"123456")
detail:
author: ez
tvul_id: 123456
代码示例
使用本模型需要安装以下依赖项:
pip install transformers torch
以下是如何加载和使用 EZ-PoC-Llama3.1-8B 的代码示例:
import transformers
import torch
model_id = "EZTEAM/EZ-PoC-Llama-3.1-8B"
pipeline = transformers.pipeline(
"text-generation",
model=model_id,
model_kwargs={"torch_dtype": torch.bfloat16},
device_map="auto",
)
messages = [
{"role": "system", "content": "将以下描述转换成yaml poc插件,只返回yaml数据,不返回其他"},
{"role": "user", "content": "写一个poc,请求/path.txt,判断是否包含123456"},
]
outputs = pipeline(
messages,
max_new_tokens=256,
)
print(outputs[0]["generated_text"][-1])
训练数据
EZ-PoC-Llama3.1-8B 使用 EZ 历史 PoC 数据进行微调,这些数据经过精心筛选和预处理,以确保生成的 YAML PoC 符合 EZ 扫描器的标准。
提供量化版本
地址: EZTEAM/EZ-PoC-Llama-3.1-8B-GGUF
| 参数 | 量化 | 大小 |
|---|---|---|
| 8B | f16 | 16.1GB |
| 8B | Q8_0 | 8.54GB |
| 8B | Q5_K_M | 5.73GB |
| 8B | Q4_K_M | 4.92GB |
性能指标
略
许可证
EZ-PoC-Llama3.1-8B 基于 Apache 2.0 许可证 发布。
引用
如果您使用了 EZ-PoC-Llama3.1-8B,请引用以下内容:
EZ-PoC-Llama3.1-8B: A LoRA fine-tuned model for generating YAML PoC plugins, developed by EZTEAM.
联系我们
如果您有任何问题或建议,欢迎通过以下方式联系我们:
- GitHub: M-SEC-ORG