# Snyk Lab with Terraform

Technologies used:

* [AWS Cloud9 IDE](https://aws.amazon.com/cloud9/)
* [AWS IAM](https://aws.amazon.com/iam/)
* [Snyk](https://snyk.io/)
* [Terraform](https://www.terraform.io/)

For this lab, we will be using AWS Cloud9 as the IDE. You can use any IDE you prefer as well. If you are using Cloud9, you will have to create an environment. Cloud9 will spin up an EC2 instance as its backend.

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2Fs2GKimFRFn7jEVjTMCSs%2Fimage.png?alt=media&#x26;token=9cc29a74-b304-4e2a-bd33-3e805dd31d2d" alt=""><figcaption></figcaption></figure>

There needs to be an IAM role created for the Cloud9 instance. Select AWS Service and EC2.

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2Fx53df6eGGCjDAYB7oTwB%2Fimage.png?alt=media&#x26;token=63375c93-59ac-47f9-aee5-e195c1db1472" alt=""><figcaption></figcaption></figure>

The role will need the AdministratorAccess IAM policy attached.

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FqtXh7Vv3v0VdpuI0MuHf%2Fimage.png?alt=media&#x26;token=75f5b27f-96e8-4751-a263-c594f351060b" alt=""><figcaption></figcaption></figure>

Name the policy and create the role.

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FEb9D738edBweUZRMMKjp%2Fimage.png?alt=media&#x26;token=2d290f5a-0ffb-43be-94b4-7ee5d112803c" alt=""><figcaption></figcaption></figure>

Once the role is created, select Actions > Security > Modify IAM role.

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FAIxCkO4fyiWWbojbP2x9%2Fimage.png?alt=media&#x26;token=be16acf8-b9f3-4825-a0bb-fbe3152e8794" alt=""><figcaption></figcaption></figure>

Under IAM role, select the role and update.

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FvjsMpL5DcCNlMF5WL3h1%2Fimage.png?alt=media&#x26;token=d7b13e04-2727-47c0-8ed4-af9dba43043b" alt=""><figcaption></figcaption></figure>

Navigate to the Cloud9 environment and go to the terminal.

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FSUChuk9aSbMN0YxJ5YjC%2Fimage.png?alt=media&#x26;token=a77dc24b-453b-4953-8e38-94d762d276e6" alt=""><figcaption></figcaption></figure>

To ensure the version of the AWS CLI is up to date, run `sudo pip install --upgrade awscli && hash -r`

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FYW2L2r7x236lMtJxEZcC%2Fimage.png?alt=media&#x26;token=b2dbcda9-de3c-4fc4-948b-5c30fde19657" alt=""><figcaption></figcaption></figure>

Next, an EC2 key pair will need to be created. Under EC2, navigate to Network & Security > Key Pairs.

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2F28eZtIsV3L4Y2QLpehP1%2Fimage.png?alt=media&#x26;token=d44872cd-13e2-4422-8f5d-f6327ceae890" alt=""><figcaption></figcaption></figure>

Select Create Key Pair in the top right corner. Create a name for the key pair, and select RSA and .pem. After doing so, hit Create Key Pair again.

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2Ft2HsqSKe24S7bDj7RlYW%2Fimage.png?alt=media&#x26;token=6c25c31a-eb1c-48cf-a3bb-0bfa07ccdabe" alt=""><figcaption></figcaption></figure>

### **Installing Terraform CLI**

Install yum-config-manager to manage repositories.

```
sudo yum install -y yum-utils
```

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FnlsetXb2C55CoOFKe5Z8%2Fimage.png?alt=media&#x26;token=c1ba6ba0-12fd-48be-bbd8-c4859cc9c8d7" alt=""><figcaption></figcaption></figure>

Using the yum-config-manager, install the Hashicorp Linux repository.

```
sudo yum-config-manager --add-repo 'https://rpm.releases.hashicorp.com/AmazonLinux/hashicorp.repo'
```

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FlM2KToZ8aCgPsUdqwbvm%2Fimage.png?alt=media&#x26;token=20d349cc-097d-4eef-9293-b4c5a2cd185a" alt=""><figcaption></figcaption></figure>

Install the Terraform repository from the Hashicorp repository.

```
sudo yum -y install terraform
```

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2Fg97RooAdTMfHzKrLfCts%2Fimage.png?alt=media&#x26;token=c481e50f-a753-405a-afbf-06a9c940d328" alt=""><figcaption></figcaption></figure>

After installing Terraform, use `terraform -version` to ensure Terraform was installed correctly.

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2Fcfu7VWPeyT1BdatuGNTB%2Fimage.png?alt=media&#x26;token=f7b2d397-9ec3-446d-ae32-5af3b875f59b" alt=""><figcaption></figcaption></figure>

### **Installing Snyk CLI**

Download the Linux binary and then move it to the bin folder.

```
curl https://static.snyk.io/cli/latest/snyk-linux -o snyk && \
chmod +x ./snyk && \
sudo mv ./snyk /usr/local/bin/
```

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2Fgy3IlWccgCBBTLJTPGoP%2Fimage.png?alt=media&#x26;token=e938ed50-709d-4d65-aaf1-a47bb7e8e410" alt=""><figcaption></figcaption></figure>

If you do not have a Snyk account, you can register for a free one [**here**](https://app.snyk.io/login/).

After logging into Synk, navigate to the Auth Token page. (Account Settings > General > Auth Token).

The KEY field will contain the token. You will have to click on the field to view it. This token will be used to authenticate from the command line to Synk.

Note: this is a sensitive value and should not be shared with unauthorized parties.

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FEx40B6RIoHdo5kEyv0sY%2Fimage.png?alt=media&#x26;token=7ba894e8-61b5-465d-90ca-ea432890181d" alt=""><figcaption></figcaption></figure>

Using the auth token from Snyk, authenticate from the Cloud9 CLI. If successful, you should see a message saying : “Your account has been authenticated. Snyk is now ready to be used.”

```
snyk auth <api_token>
```

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2F1JvJWyYdkKprcVd0dobH%2Fimage.png?alt=media&#x26;token=fd64f8f3-0566-4125-bb35-382d7c0e17ca" alt=""><figcaption></figcaption></figure>

This lab will use a GitHub repository that contains a misconfigured EC2 instance. To begin, clone the repository.

```
cd ~/environment && \
git clone https://github.com/gautambaghel/vulnerable-ec2 && \
cd vulnerable-ec2
```

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FjOUE2pgS7OGmMhgc8zeu%2Fimage.png?alt=media&#x26;token=0d5d98a3-ebfd-4deb-9787-d22ef35cb1e5" alt=""><figcaption></figcaption></figure>

At the base of the directory, run the Snyk scan.

```
cd ~/environment/vulnerable-ec2 && \
snyk iac test
```

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2Fd3GxgORf5zIiFJBZuoRN%2Fimage.png?alt=media&#x26;token=2574f8d0-c5ff-40f6-8b5a-5793a554ff72" alt=""><figcaption></figcaption></figure>

Once the scan is completed, Snyk will display the results. Snky provides different types of information:

* Severity as Low, Medium, High, or Critical.
* Title, Info, Path, File - details for you to locate the issue within your code, plus some context.
* Rule - A link to the publicly available description.
* Resolve - mitigation on how to address the issue
* A summary plus a count of files and severities by issues.

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FZqp6K7Wl0eDGautK5BTb%2Fimage.png?alt=media&#x26;token=d4d8a5b2-c561-4d4f-85a0-a35542f847e7" alt=""><figcaption><p>Low Findings</p></figcaption></figure>

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FdigBbGsQwwg8G6lJIj25%2Fimage.png?alt=media&#x26;token=d42787e8-cbdb-43fb-b2c7-e18fd81f5c26" alt=""><figcaption></figcaption></figure>

Let’s look at one of the Medium-rated vulnerabilities. Within Cloud9, navigate to vulnerabile\_ec2 > main.tf. This is the main Terraform file for the lab.

This issue we will look at is related to the medium findings. The AWS Security Group is configured to allow access from anywhere on the internet (0.0.0.0/0). Depending on the design, this might not be something that you want. To address this, the CIDR block should be more restrictive.

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2F892bPHxe9M1CdygVWaTp%2Fimage.png?alt=media&#x26;token=d62ab799-67aa-44e6-875d-0b1e55746b2f" alt=""><figcaption></figcaption></figure>

Create a new file under vulnerable ec-2 called secrets.auto.tfvars. This is where the AWS Keys that were configured earlier in the lab will be stored. Make sure to save the file after creating it.

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FTbd7hiFYRxknDCo6QK9w%2Fimage.png?alt=media&#x26;token=587cc2eb-b0bd-44fc-a572-6c7b002750f8" alt=""><figcaption></figcaption></figure>

Run `terraform init` to initialize the providers

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FCLIpL7QxSQTsjAj15653%2Fimage.png?alt=media&#x26;token=a31ffc60-38af-4321-b55f-b488215936b8" alt=""><figcaption></figcaption></figure>

After initialization, run `terraform plan` to provide an output of what is being compiled and deployed. Terraform plan also provides information on changes.

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FlI92bQP0tHSIAeX3gtsc%2Fimage.png?alt=media&#x26;token=06c98043-a4e7-4220-9191-2cdcba0ebaec" alt=""><figcaption></figcaption></figure>

Once the plan is complete, run `terraform apply` to provision the infrastructure.

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FhdoQqxp4uxqBZTAIPFc8%2Fimage.png?alt=media&#x26;token=619d8928-7522-49e9-9925-18ac77eccb53" alt=""><figcaption></figcaption></figure>

At the end of the output, take note of the IP address. This is the IP for the instance that was just provisioned.

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FwU6g8XEIT9zRvzaPbC0h%2Fimage.png?alt=media&#x26;token=e5734d38-783d-480c-a3e2-03d7925e018c" alt=""><figcaption></figcaption></figure>

SSH into the instance. We get a “Permission denied” because we do not have the SSH key. Although we cannot successfully access the instance, this is still publicly available to anyone on the internet. Some systems may be purposely configured like this, but it is not typically a best practice.

[Instructions on how to SSH into AWS instance.](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/connect-to-linux-instance.html)

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FDekaRd6fNzAEriIAdF53%2Fimage.png?alt=media&#x26;token=d0b1221a-a27f-4d68-88b3-82f1eceeab61" alt=""><figcaption></figcaption></figure>

Similarly, we can run a curl command and also access the application.

```
curl http://<ip addr>
```

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FROdO1jEOklZqwLGismcw%2Fimage.png?alt=media&#x26;token=6dca3d7c-abfc-4e4f-9a4c-74abb48ade75" alt=""><figcaption></figcaption></figure>

Now, let’s visit the instance via browser.

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FUZDtYOzvMVtU4UrqXb9A%2Fimage.png?alt=media&#x26;token=2de73616-e1a9-4956-8597-3a836fe09c6c" alt=""><figcaption></figcaption></figure>

For the purpose of this lab, we want to limit access. As we can see, there are issues with how this is currently configured. Let’s revisit the Terraform code and make some changes to accomplish this.

First, deprovision the resources that were created using `terraform destroy`

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FBkJb6i2XyDCLtCW9IchC%2Fimage.png?alt=media&#x26;token=b7ee14e3-d295-4394-8c26-2cd8b23d6eae" alt=""><figcaption></figcaption></figure>

<div align="center"><figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FIBj8PxLIS2EV66ZRTyvZ%2Fimage.png?alt=media&#x26;token=41dd21ee-0c9f-485a-855e-c31d2a25f79c" alt=""><figcaption></figcaption></figure></div>

Navigate back to vulnerable-ec2 > main.tf. Within the main.tf file, go to the “allow\_ssh\_from\_anywhere” section. There is a block commented out with “# WORKSHOP” and details about changing the CIDR block to one that is specific to the user.

You can find your IP address using a Google search or a site like whatismyipaddress.com.

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FYgmuBKf7uqljGABSynZs%2Fimage.png?alt=media&#x26;token=d30647a1-dbd9-49d9-8533-5b3af06fa20a" alt=""><figcaption></figcaption></figure>

Once you have your IP address, modify the code block to specify your IP (e.g., 175.45.45.89/32).

Ensure that the original CIDR block for 0.0.0.0/0 is commented out or deleted.

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FLYlqeurzPz5ATN2Bvhyu%2Fimage.png?alt=media&#x26;token=e80ef077-a321-4f32-889a-d0e37d7f4a99" alt=""><figcaption></figcaption></figure>

Next, find the section that allows port 80 from anywhere. Make similar modifications here as well.

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2F2AvLBhk1fQ4qPyNB0xuG%2Fimage.png?alt=media&#x26;token=16580703-491a-4fc2-aeb3-bf14f128f7a9" alt=""><figcaption></figcaption></figure>

At the end of the code block, specify the keypair that will be used to access the instance. This was created earlier in the lab.

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FpsiRVl5NZadgxTx87VLT%2Fimage.png?alt=media&#x26;token=4442e6a8-4ceb-4abc-b892-84b263678374" alt=""><figcaption></figcaption></figure>

Save the changes and run Snyk again.

```
snyk iac test
```

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2Fu2pvVDw74iUi1PfFfOHK%2Fimage.png?alt=media&#x26;token=58a08b43-80b7-4744-a8b7-31ccd6316ef2" alt=""><figcaption></figcaption></figure>

Great news—the two medium vulnerabilities are now gone after limiting access. This leaves us with one last vulnerability related to a Non-encrypted root block device. Let’s address this.

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FqwyFjqrmDvx5yJ9pxyLr%2Fimage.png?alt=media&#x26;token=c4193a4a-fe31-4fec-9b9b-b1fed8511715" alt=""><figcaption></figcaption></figure>

Look for the “root\_block\_device” section and uncomment this section. Doing so enables encryption for the EC2 instance.

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FRdlcJW6vanERuh0IPBaq%2Fimage.png?alt=media&#x26;token=4d643e1f-9bb0-40ac-8824-a729a72b8521" alt=""><figcaption></figcaption></figure>

Save changes and then run Snyk.&#x20;

After enabling encryption, there are now 0 medium vulnerabilities.

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FkmF5uA6b6qPCPSoqaFyb%2Fimage.png?alt=media&#x26;token=0ffd3b7f-f506-44a7-8205-595f9f22929c" alt=""><figcaption></figcaption></figure>

Since the vulnerabilities are fixed, redeploy the environment.

```
terraform plan 
```

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FU4lxntzY9u4HJcC0fyaW%2Fimage.png?alt=media&#x26;token=e97cb9b9-bbd2-4184-97b2-a90dbb9cf53f" alt=""><figcaption></figcaption></figure>

```
terraform apply
```

You should be able to see the changes that were made to the configuration (e.g., IP Address).

Revisit the IP to ensure that it is up and running. If you visit the site from an IP outside of your CIDR block, you should not be able to access the site.

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FKjcrzLmHaeKRSiD8Nx4Z%2Fimage.png?alt=media&#x26;token=83efc209-46dc-41a8-a045-5d7044828dc5" alt=""><figcaption></figcaption></figure>

After completing the tests, deprovision the environment

```
terraform destroy
```

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FJHZ6Fkou5QMeWqxp5arZ%2Fimage.png?alt=media&#x26;token=3e07f9e3-b767-4ccb-a483-2b892393463d" alt=""><figcaption></figcaption></figure>

### Snyk Console

Let’s send the Terraform code to Snyk and view the results in the console. We will need to undo the GitHub changes so that we have the original code with the issues.

```
git checkout main.tf
```

```
git checkout output.tf
```

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FG7jexP9oGF68fJ97mS9E%2Fimage.png?alt=media&#x26;token=b13dddb2-c649-42af-9bbb-fc6d00f77308" alt=""><figcaption></figcaption></figure>

```
snyk iac test --report
```

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2Fxg8sQGG0ray0CHYk6U7N%2Fimage.png?alt=media&#x26;token=ea007e60-f205-4319-890a-b2feae0c8235" alt=""><figcaption></figcaption></figure>

The results show the same as the initial scan (3 medium, 5 low).

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2F13FwXeqLCAPimaT8HNIs%2Fimage.png?alt=media&#x26;token=06518589-8b3f-4deb-9d5b-d19001f551fe" alt=""><figcaption></figcaption></figure>

In your Snyk console, you should see the successful test.

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FPwJ6Y0ReFWu5xUVotKAI%2Fimage.png?alt=media&#x26;token=7d7b0f1a-c96a-47bd-b3dc-23292390e89e" alt=""><figcaption></figcaption></figure>

We can see that the medium vulnerabilities are the same as what we saw in the CLI.

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FAkPrp2YEFbxUYwu792s2%2Fimage.png?alt=media&#x26;token=b8bd618a-2de6-4982-8e08-2f40f0073fb2" alt=""><figcaption></figcaption></figure>

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FpiHoID84jMYygHHZ3k3H%2Fimage.png?alt=media&#x26;token=e30801aa-0d4f-4b04-bcab-55cfcaaae7dc" alt=""><figcaption></figcaption></figure>

Select one of the findings. Snyk allows users to label the vulnerabilities as “Not Vulnerable”, “ Ignore Temporarily” or Ignore Permanently”. In this example, select Ignore temporarily.

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2F1BfPDCen61ZJNpYBX4vo%2Fimage.png?alt=media&#x26;token=51feacd8-3af6-4d41-a30a-9cbcc6abb9dd" alt=""><figcaption></figcaption></figure>

When we review it now, the finding provides details about who addressed it, the reason, expiration, etc.

<figure><img src="https://450836410-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fgns9cN7UvH1POIBCfrRn%2Fuploads%2FU3Q9JWiVzuMIeyEAeLXu%2Fimage.png?alt=media&#x26;token=52d74184-ae01-409a-b5e3-649907507946" alt=""><figcaption></figcaption></figure>
