Skip to content

危险漏洞 #341

Description

@kunkun9900

基于对代码的分析,我发现了以下几个潜在的安全漏洞:

  1. trust_remote_code=True - 远程代码执行风险 (高危)
    位置: auto_model.py:37-42
    config = AutoConfig.from_pretrained(pretrained_model_name_or_path, trust_remote_code=True,
    token=kwargs['hf_token'])
    问题: trust_remote_code=True 允许从 Hugging Face 仓库下载并执行任意远程代码。攻击者可以:
  • 上传恶意模型到托管平台
  • 在 model.py 或配置文件里植入恶意代码
  • 在你的服务器上执行任意命令
    建议: 默认设为 False,只在完全信任模型来源时启用
  1. 反序列化漏洞 - torch.load 未设置安全标志 (高危)
    位置: utils.py:438, 446, 457, 463
    state_dict.update(torch.load(to_load, map_location='cpu'))
    问题: PyTorch 的 torch.load 默认使用 pickle 反序列化,可执行任意代码。应该添加:
    torch.load(to_load, map_location='cpu', weights_only=True)
  2. 路径遍历风险 (中危)
    位置: utils.py:251-262
    问题: link_or_copy_file 函数使用 os.path.realpath 处理后仍无法完全防止恶意构造的路径攻击,可能导致创建文件到预期外目录。
  3. 敏感信息泄露风险 (低危)
    位置: utils.py:371-378
    huggingface_hub.snapshot_download(repo_id, allow_patterns=os.path.basename(to_load),
    token=hf_token)
    问题: Hugging Face 的 API token 作为参数明文传递,如果打印日志可能会泄露凭证。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions