-
Notifications
You must be signed in to change notification settings - Fork 21
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support Terraform Manifest and Code Scanning to Identify 3rd Party Providers #252
Comments
Hi, can you add some description here and I can pick this up ? |
@insaaniManav Thanks for your interest. I have added more details about this issue. Let me know if you have any question or suggestion. |
@insaaniManav I think we should get [1] merged first before working on [2] which may require some research and enhancement in our backend Insights Service which is responsible for providing vet security metadata of a package. |
Oh perfect , can you add some comments to this then ? @abhisek |
@insaaniManav Already added review comments to #260 Is that what you meant? |
@abhisek can we close this ? |
Thanks for your contribution @insaaniManav |
Problem
Terraform is an important piece of software in DevOps & infra management due to the privileged access in cloud infrastructure. Terraform has the concept of providers to extend supported platforms that can be managed by Terraform. For example, Terraform officially supports AWS but there are a large number of community supported providers
Terraform Plugins & Provider
From plugin docs
Locking providers (plugins) to specific versions
Terraform generates a
.terraform.lock.hcl
after plugin discover. This file contains:registry.terraform.io/hashicorp/random
3.6.3
This information can be leveraged to create a Package model in
vet
to represent a discovered 3rd party component that may or may not have a risk.Supply Chain Risk
Terraform plugins (providers) are 3rd party code. Even if you trust terraform, you cannot trust all providers. This introduces the possibility of malicious Terraform providers getting access to privileged environments and secrets.
Solution
We will tackle this problem in two parts in
vet
.terraform.lock.hcl
and create thePackageManifest
andPackage
models internally[1] should be straightforward. We need to build a
.terraform.lock.hcl
parser and read in the plugin definitions. parsers and npm graph parser are relevant references to take this forward.The text was updated successfully, but these errors were encountered: