Skip to content

Implement import allowlist in AutoPeftModel, limit access in megatron#3090

Open
githubnemo wants to merge 3 commits intohuggingface:mainfrom
githubnemo:issue/arbitrary-module-import
Open

Implement import allowlist in AutoPeftModel, limit access in megatron#3090
githubnemo wants to merge 3 commits intohuggingface:mainfrom
githubnemo:issue/arbitrary-module-import

Conversation

@githubnemo
Copy link
Collaborator

Resolves #3085. AutoPeftModel resolves the base model's class by importing the parent library mentioned in the adapter config which makes way for potentially executing malicious code on the adapter creator's behalf. While this is not a remote code execution vulnerability by itself (since the attacker still needs to install a malicious package on the system) it can be used for code execution in case the attacker has file system access, for example.

The same is happening for the megatron.core config key. I haven't found any evidence that megatron wants to load other modules than megatron.*, so we limit it to that.

There was a bit of missing documentation, typo, missing hub_online_once, so I took the opportunity to fix that along the way.

nemo added 3 commits March 11, 2026 12:30
Partially resolves huggingface#3085. AutoPeftModel resolves the base
model's class by importing the parent library mentioned in the
adapter config which makes way for potentially executing malicious
code on the adapter creator's behalf. While this is not a remote
code execution vulnerability by itself (since the attacker still
needs to install a malicious package on the system) it can be
used for code execution in case the attacker has file system
access, for example.
I haven't found any evidence that one wants to load other modules
than `megatron.*`, so we limit it to that.
@githubnemo
Copy link
Collaborator Author

cc @spartan8806

@HuggingFaceDocBuilderDev

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update.

@spartan8806
Copy link

Thanks for the quick turnaround.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Security: Arbitrary Module Import via Malicious Adapter Config (CWE-94)

3 participants