<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Sonatype</title>
    <description>The latest articles on DEV Community by Sonatype (@sonatype).</description>
    <link>https://dev.to/sonatype</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F1906%2F25095fb7-8065-49c6-8c3b-a3c429f416b7.png</url>
      <title>DEV Community: Sonatype</title>
      <link>https://dev.to/sonatype</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/sonatype"/>
    <language>en</language>
    <item>
      <title>A peek inside the “fallguys” malware that steals your browsing data and gaming IMs</title>
      <dc:creator>Ax Sharma</dc:creator>
      <pubDate>Thu, 03 Sep 2020 09:18:13 +0000</pubDate>
      <link>https://dev.to/sonatype/a-peek-inside-the-fallguys-malware-that-steals-your-browsing-data-and-gaming-ims-4a78</link>
      <guid>https://dev.to/sonatype/a-peek-inside-the-fallguys-malware-that-steals-your-browsing-data-and-gaming-ims-4a78</guid>
      <description>&lt;p&gt;This weekend a report emerged of mysterious npm malware stealing sensitive information from Discord apps and web browsers installed on a user’s machine.&lt;/p&gt;

&lt;p&gt;The malicious component called “&lt;strong&gt;fallguys&lt;/strong&gt;” lived on npm downloads impersonating an API for the widely popular video game, &lt;a href="https://en.wikipedia.org/wiki/Fall_Guys" rel="noopener noreferrer"&gt;&lt;em&gt;Fall Guys: Ultimate Knockout&lt;/em&gt;&lt;/a&gt;. Its actual purpose, however, was rather sinister.&lt;/p&gt;

&lt;p&gt;As first reported by &lt;a href="https://www.zdnet.com/article/malicious-npm-package-caught-trying-to-steal-sensitive-discord-and-browser-files/" rel="noopener noreferrer"&gt;&lt;em&gt;ZDNet&lt;/em&gt;&lt;/a&gt; and analyzed by the npm security team, the component when included in your development builds would run alongside your program, and access the following files:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; /AppData/Local/Google/Chrome/User\x20Data/Default/Local\x20Storage/leveldb&lt;/li&gt;
&lt;li&gt; /AppData/Roaming/Opera\x20Software/Opera\x20Stable/Local\x20Storage/leveldb&lt;/li&gt;
&lt;li&gt; /AppData/Local/Yandex/YandexBrowser/User\x20Data/Default/Local\x20Storage/leveldb&lt;/li&gt;
&lt;li&gt; /AppData/Local/BraveSoftware/Brave-Browser/User\x20Data/Default/Local\x20Storage/leveldb&lt;/li&gt;
&lt;li&gt; /AppData/Roaming/discord/Local\x20Storage/leveldb&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The file list comprises the local storage &lt;em&gt;leveldb&lt;/em&gt; files of different web browsers, such as Chrome, Opera, Yandex, and Brave, along with any locally installed Discord apps.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://en.wikipedia.org/wiki/LevelDB" rel="noopener noreferrer"&gt;LevelDB&lt;/a&gt; is a key-value storage format mainly used by web browsers to store data especially that relates to a user’s web browsing sessions.&lt;/p&gt;

&lt;p&gt;The “fallguys” component would pry on these files and upload them to a third-party Discord server, e.g. via &lt;a href="https://support.discord.com/hc/en-us/articles/228383668-Intro-to-Webhooks" rel="noopener noreferrer"&gt;webhooks&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  A peek inside npm “fallguys”
&lt;/h2&gt;

&lt;p&gt;Npm &lt;a href="https://www.npmjs.com/advisories/1552" rel="noopener noreferrer"&gt;removed&lt;/a&gt; the malicious package, but fortunately we retain a copy of all components in a secure archive, so the Sonatype Security Research team was able to quickly analyze the malware. In fact, we got this into our data well before the news broke so Nexus users are safe!&lt;/p&gt;

&lt;p&gt;In this Nexus Intelligence Insights post, we share a first look inside “fallguys”.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Vulnerability identifier:&lt;/strong&gt; sonatype-2020-0774&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Vulnerability type:&lt;/strong&gt; Embedded Malicious Code&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Impacted package:&lt;/strong&gt; &lt;em&gt;fallguys&lt;/em&gt; as formerly present in npm downloads&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;CVSS 3.1 Severity Metrics:&lt;/strong&gt; CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;CVSS3.1 Score:&lt;/strong&gt; 10 (Critical)&lt;/p&gt;

&lt;p&gt;While “fallguys” package was likely created with malicious intent from the beginning, the package exhibits outright suspicious behavior in version &lt;strong&gt;1.0.6&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;There are three files found in version 1.0.6. One is a README which touts the malware being a *Fall Guys *game API to gain some trust from the user and the other two files include the application manifest (“package.json”), and the main “index.js”.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Flh3.googleusercontent.com%2FwIg0Evm8XsNEb97BcD2LKR5woxb7BfXZtXMVoBUYDB3MjPm5r6MIDDvYe07AGrvC37pOs-dakJ5pvBx3hTc0mL8uumdYasefBxDHmUPX_o8sq5VmGWcpWGCnoK9xgo5UprVIMFF3" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Flh3.googleusercontent.com%2FwIg0Evm8XsNEb97BcD2LKR5woxb7BfXZtXMVoBUYDB3MjPm5r6MIDDvYe07AGrvC37pOs-dakJ5pvBx3hTc0mL8uumdYasefBxDHmUPX_o8sq5VmGWcpWGCnoK9xgo5UprVIMFF3" alt="fallguys"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;The README.MD file present in“fallguys” npm malware&lt;/strong&gt; (Image source: Sonatype)&lt;/p&gt;

&lt;p&gt;The manifest reveals nothing out of the blue, but in “index.js” we see a whole lot going on:&lt;/p&gt;

&lt;p&gt;The very first constant “_0x13e5” is a cryptic array containing different strings and locations of multiple “leveldb” files the malware would eventually begin reading. This is all part of the obfuscation process, to jam different strings the application would need into a single array and read from this array.&lt;/p&gt;

&lt;p&gt;For example, on line 30, the variable assignment obtains a value from this very “_0x13e5” array at an obfuscated subscript address “_0xe64ed6” (15093462).&lt;/p&gt;

&lt;p&gt;There is also mention of strings such as “username”, “email”, “phone”, “Token grabber”, etc. but their purpose doesn’t become immediately obvious to an analyst.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fpracticaldev%2Fimage%2Ffetch%2Fs--zbj4Lxc---%2Fc_imagga_scale%2Cf_auto%2Cfl_progressive%2Ch_420%2Cq_auto%2Cw_1000%2Fhttps%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fwxl1vym2fu2grh2riyng.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fpracticaldev%2Fimage%2Ffetch%2Fs--zbj4Lxc---%2Fc_imagga_scale%2Cf_auto%2Cfl_progressive%2Ch_420%2Cq_auto%2Cw_1000%2Fhttps%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fwxl1vym2fu2grh2riyng.png" alt="fallguys"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Obfuscated code in index.js file of “fallguys” with Discord webhooks&lt;/strong&gt; (Spread out by us to make it more legible; Image source: Sonatype)&lt;/p&gt;

&lt;p&gt;On line 37, we see the “webhook” variable containing the URL to the attacker’s Discord app which is where data read from the “leveldb” files we list above, would be posted to:&lt;/p&gt;

&lt;p&gt;var webhook = '&lt;a href="https://discordapp%5B.%5Dcom/api/webhooks/746189410042904617/RQVJEOhzAblK5FlkQ-WIXkWfKfg5BFCdsjTeVueAIrVLaQMTvHgbuhuqFafPZYHfwnEq" rel="noopener noreferrer"&gt;https://discordapp[.]com/api/webhooks/746189410042904617/RQVJEOhzAblK5FlkQ-WIXkWfKfg5BFCdsjTeVueAIrVLaQMTvHgbuhuqFafPZYHfwnEq&lt;/a&gt;'&lt;/p&gt;

&lt;p&gt;At the time of writing, our tests confirm the webhook endpoint is no longer responsive and was likely brought down by Discord:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Flh3.googleusercontent.com%2FMymoU00ZZou1caYYZQ9qe3s3lzdpzzWQT28R9_bC7y-ij9xdUxLyH-BHjmVEZaHBpTp9CLG1bIs_FZHghoNO0r39w-O7ZwW19ts7p-3EAFzxr4lHEmescaI0ypemFZvzjF3Kt-k9" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Flh3.googleusercontent.com%2FMymoU00ZZou1caYYZQ9qe3s3lzdpzzWQT28R9_bC7y-ij9xdUxLyH-BHjmVEZaHBpTp9CLG1bIs_FZHghoNO0r39w-O7ZwW19ts7p-3EAFzxr4lHEmescaI0ypemFZvzjF3Kt-k9" alt="fallguys"&gt;&lt;/a&gt;&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Discord webhook where “fallguys” malware would post sensitive information to&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The “send” function also has a nested JSON object which appears to contain the profile metadata with bits such as the author name, avatar thumbnail, username, email, etc.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Flh3.googleusercontent.com%2FsameqNy0OmX9rbq8k_Aplzd8j2CWF6O8T7Q0Hy1U-9z7P2u9rrU0boFgkrty6BpbjHy5ZZ1-cLyx42RV3_4O4hzqB_hhxnXwaDLOkWHI9zO5O1Sm65cg92rXFr9uH7MAV82Ez2-2" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Flh3.googleusercontent.com%2FsameqNy0OmX9rbq8k_Aplzd8j2CWF6O8T7Q0Hy1U-9z7P2u9rrU0boFgkrty6BpbjHy5ZZ1-cLyx42RV3_4O4hzqB_hhxnXwaDLOkWHI9zO5O1Sm65cg92rXFr9uH7MAV82Ez2-2"&gt;&lt;/a&gt;&lt;br&gt;&lt;br&gt;
&lt;strong&gt;The “send” function within the malicious “fallguys” component&lt;/strong&gt; (Image source: Sonatype)&lt;/p&gt;

&lt;h2&gt;
  
  
  Mostly your browser data, nothing else
&lt;/h2&gt;

&lt;p&gt;In an age where adversaries find innovative ways to pollute the software supply chain via attacks such as &lt;a href="https://blog.sonatype.com/octopus-scanner-compromises-26-oss-projects-on-github" rel="noopener noreferrer"&gt;Octopus Scanner&lt;/a&gt;, or leverage typosquatting techniques to mine &lt;a href="https://blog.sonatype.com/nexus-intelligence-insights-protect-your-bitcoins-from-700-malicious-rubygems-with-sonatype-2020-0196" rel="noopener noreferrer"&gt;Bitcoins&lt;/a&gt;, it is certainly odd for malware to exclusively target browser data stores and Discord files without touching more sensitive areas of a system.&lt;/p&gt;

&lt;p&gt;“The malicious package appears to have been performing some sort of reconnaissance, gathering data on victims, and trying to assess what sites the infected developers were accessing, before delivering more targeted code via an update to the package later down the road,” states the ZDNet report.&lt;/p&gt;

&lt;p&gt;Thankfully, this malware was caught early and has only been downloaded around 300 times. However, we may not always be so lucky.&lt;/p&gt;

&lt;h2&gt;
  
  
  Our New Normal
&lt;/h2&gt;

&lt;p&gt;According to our &lt;a href="https://www.sonatype.com/2020ssc" rel="noopener noreferrer"&gt;2020 State of the Software Supply Chain&lt;/a&gt; report, next-generation software supply chain “attacks” are far more sinister because bad actors are no longer waiting for public vulnerability disclosures. Instead, they are taking the initiative and actively injecting malicious code into open source projects that feed the global supply chain.&lt;/p&gt;

&lt;p&gt;By shifting their focus “upstream,” such as with open-source malware in “fallguys,” bad actors can infect a single component, which will then be distributed “downstream” using legitimate software workflows and update mechanisms.&lt;/p&gt;

&lt;p&gt;Our 2020 report also shows that this is happening at a rapidly increased rate. In fact, there was a 430% increase in next-generation software supply chain attacks over the past year. Keeping this in mind, it is virtually impossible to manually chase and keep track of such components.&lt;/p&gt;

&lt;p&gt;Sonatype’s world-class security research data, combined with our &lt;a href="https://www.sonatype.com/press-release-blog/next-generation-nexus-intelligence" rel="noopener noreferrer"&gt;automated malware detection&lt;/a&gt; technology safeguards your developers, customers, and software supply chain from infections like these.&lt;/p&gt;

&lt;p&gt;DevOps-native organizations with the ability to continuously deploy software releases have an automation advantage that allows them to stay one step ahead of malicious intent. Sonatype Nexus customers were notified of &lt;strong&gt;sonatype-2020-0774&lt;/strong&gt; within hours of the discovery, and their development teams automatically received instructions on how to remediate the risk. Their browsing history and gaming IMs are safe.&lt;/p&gt;

&lt;p&gt;If you're not a Sonatype customer and want to find out if your code is vulnerable, you can use Sonatype's free &lt;a href="https://www.sonatype.com/appscan" rel="noopener noreferrer"&gt;Nexus Vulnerability Scanner&lt;/a&gt; to find out quickly.&lt;/p&gt;

&lt;p&gt;Visit the &lt;a href="https://www.sonatype.com/nexus-intelligence-insights" rel="noopener noreferrer"&gt;Nexus Intelligence Insights&lt;/a&gt; page for a deep dive into other vulnerabilities like this one or subscribe to automatically receive Nexus Intelligence Insights hot off the press.&lt;/p&gt;

</description>
      <category>malware</category>
      <category>opensource</category>
      <category>security</category>
      <category>hacking</category>
    </item>
    <item>
      <title>Secure Your Golang Projects Using Nancy</title>
      <dc:creator>Dan Rollo</dc:creator>
      <pubDate>Mon, 13 Apr 2020 20:36:43 +0000</pubDate>
      <link>https://dev.to/sonatype/secure-your-golang-projects-using-nancy-5fk5</link>
      <guid>https://dev.to/sonatype/secure-your-golang-projects-using-nancy-5fk5</guid>
      <description>&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fppxh2t5fsaksga0u7a3j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fppxh2t5fsaksga0u7a3j.png" alt="nancy"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Who is Nancy?
&lt;/h3&gt;

&lt;p&gt;Nancy is a command line application, written in Golang by the Golang community and sponsored by Sonatype. It uses Sonatype’s OSS Index to check your dependencies for publicly filed vulnerabilities.&lt;/p&gt;

&lt;p&gt;You can get more information about Nancy by going to the GitHub repository for it at: &lt;br&gt;
&lt;a href="https://github.com/sonatype-nexus-community/nancy" rel="noopener noreferrer"&gt;https://github.com/sonatype-nexus-community/nancy&lt;/a&gt; or on &lt;a href="https://pkg.go.dev/github.com/sonatype-nexus-community/nancy?tab=doc" rel="noopener noreferrer"&gt;https://pkg.go.dev/github.com/sonatype-nexus-community/nancy?tab=doc&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;
  
  
  Why would I use Nancy?
&lt;/h3&gt;

&lt;p&gt;Nancy can take dependency results from your go mod powered or dep powered projects and scan them for vulnerabilities. This is quite handy, as you’ll see that vulnerabilities pop up in libraries, like golang/x/crypto:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://ossindex.sonatype.org/component/pkg:golang/golang.org/x/crypto@v0.0.0-20190227175134-215aa809caaf" rel="noopener noreferrer"&gt;https://ossindex.sonatype.org/component/pkg:golang/golang.org/x/crypto@v0.0.0-20190227175134-215aa809caaf&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Vulnerabilities in these third party or even standard lib libraries (x/crypto is a part of Golang itself!) can sneak up on you, if, for example, you are using a framework that uses them, or using them directly yourself. It’s never a good feeling getting pwned because of someone else’s code, and Nancy is here to help you!&lt;/p&gt;
&lt;h3&gt;
  
  
  How do I use Nancy?
&lt;/h3&gt;

&lt;p&gt;Nancy is quite easy to use, and the Community/Sonatype have gone to great lengths to make it as easy as possible.&lt;/p&gt;
&lt;h4&gt;
  
  
  Installing Nancy
&lt;/h4&gt;

&lt;p&gt;Nancy is distributed as an executable built with Golang and each executable is available on it’s release from multiple repositories:&lt;br&gt;
GitHub&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/sonatype-nexus-community/nancy/releases" rel="noopener noreferrer"&gt;https://github.com/sonatype-nexus-community/nancy/releases&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;
  
  
  Docker
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fzytp1kvdfprrbwu54eyd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fzytp1kvdfprrbwu54eyd.png" alt="nancy-docker"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For ease of use a Docker image has been created, as well as a homebrew tap for OS X users that love brew!&lt;/p&gt;

&lt;p&gt;To run it with Docker one need only follow the instructions available here: &lt;a href="https://github.com/sonatype-nexus-community/nancy#docker-usage" rel="noopener noreferrer"&gt;https://github.com/sonatype-nexus-community/nancy#docker-usage&lt;/a&gt; or for ease of use in this post:&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;go list -m all | docker run -i sonatypecommunity/nancy:latest
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;h4&gt;
  
  
  Homebrew
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fqzs58llis5zah3p3frwq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fqzs58llis5zah3p3frwq.png" alt="homebrew"&gt;&lt;/a&gt;&lt;br&gt;
To install with homebrew, instructions are available here: &lt;a href="https://github.com/sonatype-nexus-community/nancy#homebrew-usage" rel="noopener noreferrer"&gt;https://github.com/sonatype-nexus-community/nancy#homebrew-usage&lt;/a&gt;, and for ease of use, here you go:&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;brew tap sonatype-nexus-community/homebrew-nancy-tap
brew install nancy
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;h4&gt;
  
  
  Ok I installed it, now what!?
&lt;/h4&gt;

&lt;p&gt;For a go mod powered project, one need only do:&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;go list -m all | nancy
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;p&gt;For a dep powered project:&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;nancy /path/to/your/Gopkg.lock
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;p&gt;The beauty of Nancy is Nancy tries to meet you where you are. It cares about securing all projects. If you use a package manager that it doesn’t support, it is Open Source and the community is more than willing to help you change that!&lt;/p&gt;
&lt;h4&gt;
  
  
  What do results look like?
&lt;/h4&gt;

&lt;p&gt;If you run Nancy and find nothing wrong with your dependencies you’ll see something akin to the following:&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fro22b9v3hb35ib6l9ipb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fro22b9v3hb35ib6l9ipb.png" alt="results-novuln"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Nancy will exit with a zero code in this case, and all is good in the world!&lt;/p&gt;

&lt;p&gt;If Nancy finds a vulnerability in one of your dependencies it will exit with a non zero code, allowing you to use Nancy as a tool in your CI/CD process, and fail builds, if you’d like.&lt;/p&gt;

&lt;p&gt;Output when it finds a vulnerability looks like:&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Frtmeod463gus8lz6c4yg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Frtmeod463gus8lz6c4yg.png" alt="results-vuln"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You are given the information on what the vulnerability is, and how to get more info on the OSS Index site about it!&lt;/p&gt;
&lt;h4&gt;
  
  
  What do I do if the vulnerability doesn’t apply to me?
&lt;/h4&gt;

&lt;p&gt;Since Nancy is checking the dependencies for vulnerabilities, sometimes you’ll run into one where you are not using the affected code path. The community has built functionality to let you exclude the vulnerability from being reported.&lt;/p&gt;

&lt;p&gt;The information on how to do this is available here: &lt;a href="https://github.com/sonatype-nexus-community/nancy#exclude-vulnerabilities" rel="noopener noreferrer"&gt;https://github.com/sonatype-nexus-community/nancy#exclude-vulnerabilities&lt;/a&gt; and for ease of use:&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;nancy -exclude-vulnerability CVE-789,bcb0c38d-0d35-44ee-b7a7-8f77183d1ae2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;p&gt;You can also use an exclusion file to keep better track of them and avoid passing in long lists via the command line. The default file name, if you check this in to your repo, would be: &lt;code&gt;.nancy-ignore&lt;/code&gt; and an example looks like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# This vulnerability is coming from package xyz, we are ok with this for now
CVN-111 
CVN-123 # Mitigated the risk of this since we only use one method in this package and the affected code doesn't matter
CVN-543
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If you want to temporarily exclude a vulnerability, the community has provided functionality for that as well:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;CVN-111 until=2021-01-01
CVN-543 until=2018-02-12 #Waiting on release from third party. Should be out before this date but gives us a little time to fix it.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This can be handy if you are waiting for the upstream library to get fixed, and want to just exclude the vulnerability until a new version has been released, or just a specific time frame to remind yourself.&lt;/p&gt;

&lt;h4&gt;
  
  
  I love this! How do I use Nancy in CI/CD so that it runs for everything on my repo?
&lt;/h4&gt;

&lt;p&gt;We got you, fam!&lt;/p&gt;

&lt;p&gt;You can take a look at how we have used Nancy in CI/CD at the following repo: &lt;a href="https://github.com/sonatype-nexus-community/intentionally-vulnerable-golang-project" rel="noopener noreferrer"&gt;https://github.com/sonatype-nexus-community/intentionally-vulnerable-golang-project&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;There are examples for TravisCI and CircleCI.&lt;/p&gt;

&lt;p&gt;There are also &lt;a href="https://bitbucket.org/product/features/pipelines/integrations?p=sonatype-community/nancy-scan" rel="noopener noreferrer"&gt;BitBucket pipes for Nancy&lt;/a&gt;, and community willing &lt;a href="https://github.com/marketplace/actions/nancy-for-github-actions" rel="noopener noreferrer"&gt;GitHub actions&lt;/a&gt; :)&lt;/p&gt;

&lt;h4&gt;
  
  
  What else?
&lt;/h4&gt;

&lt;p&gt;Nancy works with Sonatype’s OSS Index by default, but also will work with Nexus Lifecycle, for improved policy driven auditing. You can get information on that here: &lt;a href="https://github.com/sonatype-nexus-community/nancy#nexus-iq-server-options" rel="noopener noreferrer"&gt;https://github.com/sonatype-nexus-community/nancy#nexus-iq-server-options&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A couple notes:&lt;/p&gt;

&lt;p&gt;OSS Index usage is prone to rate limiting, the community goes out of their way to make sure you won’t run into this however, Nancy caches results from OSS Index for a period of 12 hours, ensuring that you only run checks against dependencies you change the version for, or results that have expired from it’s cache.&lt;/p&gt;

&lt;h5&gt;
  
  
  OSS Index account registration
&lt;/h5&gt;

&lt;p&gt;If you register for Sonatype’s OSS Index, your rate limiting gets substantially upgraded which can be very nice if you are using Nancy in a CI/CD pipeline.&lt;/p&gt;

&lt;p&gt;You can register for a free OSS Index account here: &lt;a href="https://ossindex.sonatype.org/user/register" rel="noopener noreferrer"&gt;https://ossindex.sonatype.org/user/register&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;To see how to use your new registered user with Nancy, check out &lt;a href="https://github.com/sonatype-nexus-community/nancy#rate-limiting--setting-oss-index-config" rel="noopener noreferrer"&gt;this portion of Nancy’s documentation&lt;/a&gt;. If you are reading along in this post, it’s pretty easy:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;nancy config
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;From there decide on if you are setting OSS Index or Nexus IQ Server config, and Nancy will save it for you.&lt;/p&gt;

&lt;p&gt;NOTE: A good portion of the OSS Index tools (jake, AuditJS, chelsea, etc…) will pick up this config if you set it once, allowing all of the tools you use to benefit from this!&lt;/p&gt;

&lt;h4&gt;
  
  
  Feedback
&lt;/h4&gt;

&lt;p&gt;If you end up using Nancy, the community and Sonatype would love to hear your feedback, we actively work on this project, and we love to help the Golang community shift security further left!&lt;/p&gt;

&lt;p&gt;If you run into an issue with Nancy, go ahead and file an issue on the GitHub repo, here: &lt;a href="https://github.com/sonatype-nexus-community/nancy/issues" rel="noopener noreferrer"&gt;https://github.com/sonatype-nexus-community/nancy/issues&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you’d like to give us just general feedback, reach out to me! You can leave a comment on this article or reach out otherwise.&lt;/p&gt;

&lt;h4&gt;
  
  
  I want to work on this too!
&lt;/h4&gt;

&lt;p&gt;Nancy is open source, and we love getting new contributors. Interested in working on Nancy with the community? Pop in to their gitter: &lt;a href="https://gitter.im/sonatype-nexus-community/nancy" rel="noopener noreferrer"&gt;https://gitter.im/sonatype-nexus-community/nancy&lt;/a&gt; or just send us a PR. Nancy is powered by community contributors, and we are all very proud of their contributions that make this tool even better!&lt;/p&gt;

&lt;p&gt;Thanks for reading this article, and we hope you get a ton of value out of using Nancy!&lt;/p&gt;

</description>
      <category>security</category>
      <category>go</category>
      <category>mod</category>
      <category>dep</category>
    </item>
    <item>
      <title>Ryan Lockard Names the Seven Deadly Sins of DevSecOps</title>
      <dc:creator>Katie McCaskey</dc:creator>
      <pubDate>Thu, 02 Apr 2020 13:45:00 +0000</pubDate>
      <link>https://dev.to/sonatype/ryan-lockard-names-the-seven-deadly-sins-of-devsecops-4dbd</link>
      <guid>https://dev.to/sonatype/ryan-lockard-names-the-seven-deadly-sins-of-devsecops-4dbd</guid>
      <description>&lt;p&gt;&lt;a href="https://blog.sonatype.com/ryan-lockard-names-the-seven-deadly-sins-of-devsecops"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--zBoSUyjj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://blog.sonatype.com/hubfs/GettyImages-1139085522.png" alt="Ryan Lockard Names the Seven Deadly Sins of DevSecOps [VIDEO]"&gt; &lt;/a&gt;&lt;/p&gt;

&lt;p&gt;_ &lt;strong&gt;Editor's Note:&lt;/strong&gt; _ &lt;em&gt;Ryan's story is included in "&lt;a href="https://www.sonatype.com/epic-failures-2"&gt;Epic Failures in DevSecOps, Volume 2&lt;/a&gt;", available for free download.&lt;/em&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"It is said in Roman Catholicism that each of the seven deadly sins is uniquely bad. Any time one of these sins are committed, we must confess them and do all that we can to not transgress again. Applying the DevSecOps context, each of the failures discussed in this chapter are an opportunity to reflect, inspect and improve our own DevSecOps practices every day." -- Ryan Lockard, &lt;em&gt;Epic Failures in DevSecOps&lt;/em&gt;, Chapter 7.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://blog.sonatype.com/ryan-lockard-names-the-seven-deadly-sins-of-devsecops"&gt;Watch his interview with host Justin Miller, on the Sonatype blog&lt;/a&gt;&lt;/p&gt;

</description>
      <category>appsec</category>
      <category>applicationsecurity</category>
      <category>devsecops</category>
      <category>newsandviews</category>
    </item>
    <item>
      <title>SAML/SSO Authentication and Conan in Nexus Repository 3.22</title>
      <dc:creator>Katie McCaskey</dc:creator>
      <pubDate>Wed, 01 Apr 2020 19:16:54 +0000</pubDate>
      <link>https://dev.to/sonatype/saml-sso-authentication-and-conan-in-nexus-repository-3-22-20n0</link>
      <guid>https://dev.to/sonatype/saml-sso-authentication-and-conan-in-nexus-repository-3-22-20n0</guid>
      <description>&lt;p&gt;By &lt;a href="https://dev.to/brent_kostak"&gt;Brent Kostak&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://blog.sonatype.com/saml/sso-authentication-and-conan-in-nexus-repository-3.22"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--zCyIlspC--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://blog.sonatype.com/hubfs/GettyImages-1148091063.png" alt="single sign-on"&gt; &lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Introducing the release of &lt;a href="https://help.sonatype.com/repomanager3/release-notes/2020-release-notes#id-2020ReleaseNotes-RepositoryManager3.22.0"&gt;Nexus Repository 3.22&lt;/a&gt;. Our product teams are excited to announce &lt;a href="https://help.sonatype.com/repomanager3/security/saml"&gt;SAML/SSO&lt;/a&gt; authentication for Nexus Repository Pro. In addition to SAML/SSO, this release includes proxy support for Conan native format in both &lt;a href="https://www.sonatype.com/product-nexus-repository"&gt;Nexus Repository Pro&lt;/a&gt; users and our free version, &lt;a href="https://www.sonatype.com/nexus-repository-oss"&gt;Nexus Repository OSS&lt;/a&gt;. Conan is the decentralized, portable, and extensible package manager for C/C++ projects.&lt;/p&gt;

&lt;p&gt;Amidst much anticipation, Nexus Repository Pro now provides users the ability to authenticate with Security Assertion Markup Language (SAML) identity providers. Using SAML, users can now experience single sign-on (SSO) when logging into the Nexus ecosystem. In the reading ahead, we will ‘pop the hood’ on SAML to learn how it works with Nexus Repository Pro, what benefits users can gain setting up the SAML integration, and key highlights for both Nexus Repository admins and developers.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--2kQ61Qyb--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://track.hubspot.com/__ptq.gif%3Fa%3D1958393%26k%3D14%26r%3Dhttps%253A%252F%252Fblog.sonatype.com%252Fsaml%252Fsso-authentication-and-conan-in-nexus-repository-3.22%26bu%3Dhttps%25253A%25252F%25252Fblog.sonatype.com%26bvt%3Drss" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--2kQ61Qyb--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://track.hubspot.com/__ptq.gif%3Fa%3D1958393%26k%3D14%26r%3Dhttps%253A%252F%252Fblog.sonatype.com%252Fsaml%252Fsso-authentication-and-conan-in-nexus-repository-3.22%26bu%3Dhttps%25253A%25252F%25252Fblog.sonatype.com%26bvt%3Drss" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://blog.sonatype.com/saml/sso-authentication-and-conan-in-nexus-repository-3.22"&gt;Read more on the Sonatype blog&lt;/a&gt;&lt;/p&gt;

</description>
      <category>nexusrepository</category>
      <category>featured</category>
      <category>cc</category>
      <category>saml</category>
    </item>
    <item>
      <title>Developers Gain Contextual Feedback with Automated Pull Request Commenting</title>
      <dc:creator>Katie McCaskey</dc:creator>
      <pubDate>Tue, 31 Mar 2020 15:14:09 +0000</pubDate>
      <link>https://dev.to/sonatype/developers-gain-contextual-feedback-with-automated-pull-request-commenting-2875</link>
      <guid>https://dev.to/sonatype/developers-gain-contextual-feedback-with-automated-pull-request-commenting-2875</guid>
      <description>&lt;p&gt;&lt;a href="https://blog.sonatype.com/developers-gain-contextual-feedback-with-automated-pull-request-commenting"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--pNJryLr2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://blog.sonatype.com/hubfs/GettyImages-1198272365.png" alt="Developers Gain Contextual Feedback with Automated Pull Request Commenting"&gt; &lt;/a&gt;&lt;/p&gt;

&lt;p&gt;At Sonatype, we work continuously to increase awareness of open source risk, and decrease the time it takes you to make your applications safe. It is our never ending quest to shift security left. We’ve rolled out even more granular and automated policy feedback with pull request comments directly in GitHub. &lt;/p&gt;

&lt;p&gt;Developers need to know where potential policy violations or security vulnerabilities are introduced so that they can address and fix the issues efficiently and effectively. This reduces time to remediation and minimizes manual work. Our new PR commenting feature for GitHub notifies a developer when the code they commit introduces risk or breaks a build, and why.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--3EqqwUJJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://track.hubspot.com/__ptq.gif%3Fa%3D1958393%26k%3D14%26r%3Dhttps%253A%252F%252Fblog.sonatype.com%252Fdevelopers-gain-contextual-feedback-with-automated-pull-request-commenting%26bu%3Dhttps%25253A%25252F%25252Fblog.sonatype.com%26bvt%3Drss" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--3EqqwUJJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://track.hubspot.com/__ptq.gif%3Fa%3D1958393%26k%3D14%26r%3Dhttps%253A%252F%252Fblog.sonatype.com%252Fdevelopers-gain-contextual-feedback-with-automated-pull-request-commenting%26bu%3Dhttps%25253A%25252F%25252Fblog.sonatype.com%26bvt%3Drss" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://blog.sonatype.com/developers-gain-contextual-feedback-with-automated-pull-request-commenting"&gt;Read more on the Sonatype blog&lt;/a&gt;&lt;/p&gt;

</description>
      <category>github</category>
      <category>vulnerabilities</category>
      <category>opensourcegovernance</category>
      <category>automation</category>
    </item>
    <item>
      <title>Department of Defense DevSecOps Journey</title>
      <dc:creator>Katie McCaskey</dc:creator>
      <pubDate>Mon, 30 Mar 2020 14:15:25 +0000</pubDate>
      <link>https://dev.to/sonatype/department-of-defense-devsecops-journey-12nk</link>
      <guid>https://dev.to/sonatype/department-of-defense-devsecops-journey-12nk</guid>
      <description>&lt;p&gt;&lt;a href="https://blog.sonatype.com/department-of-defense-devsecops-journey"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--bP4CT2w4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://blog.sonatype.com/hubfs/GettyImages-1163415073.png" alt="fighter jet"&gt; &lt;/a&gt;&lt;/p&gt;

&lt;p&gt;By &lt;a href="https://dev.to/sylviafronczak"&gt;Sylvia Fronczak&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;_ &lt;strong&gt;Editors Note:&lt;/strong&gt; _ We recently discussed why the &lt;a href="https://blog.sonatype.com/top-6-reasons-the-time-is-now-for-devsecops-in-the-federal-government"&gt;federal government should adopt DevSecOps&lt;/a&gt;. Here, a look at DevSecOps efforts at the Department of Defense presented at All Day DevOps. Sign up now for the upcoming &lt;a href="https://www.alldaydevops.com/register-springbreak-2020"&gt;All Day DevOps | Spring Break Edition&lt;/a&gt; happening April 17.&lt;/p&gt;

&lt;p&gt;The U.S. Department of Defense (DoD) has a unique DevSecOps journey, and we'll discuss that today thanks to a presentation by Hasan Yasar and Nicolas Chaillan (&lt;a href="https://twitter.com/NicolasChaillan"&gt;@NicolasChaillan&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;But first, here’s some background on the DoD. &lt;/p&gt;

&lt;p&gt;The DoD depends on software, but it doesn’t always control development. Instead, they must maintain software written elsewhere. Difficulties arise when the entire lifecycle is out of their hands.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ga6bsvkk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://track.hubspot.com/__ptq.gif%3Fa%3D1958393%26k%3D14%26r%3Dhttps%253A%252F%252Fblog.sonatype.com%252Fdepartment-of-defense-devsecops-journey%26bu%3Dhttps%25253A%25252F%25252Fblog.sonatype.com%26bvt%3Drss" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ga6bsvkk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://track.hubspot.com/__ptq.gif%3Fa%3D1958393%26k%3D14%26r%3Dhttps%253A%252F%252Fblog.sonatype.com%252Fdepartment-of-defense-devsecops-journey%26bu%3Dhttps%25253A%25252F%25252Fblog.sonatype.com%26bvt%3Drss" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://blog.sonatype.com/department-of-defense-devsecops-journey"&gt;Read more on the Sonatype blog&lt;/a&gt;&lt;/p&gt;

</description>
      <category>government</category>
      <category>devsecops</category>
      <category>departmentofdefense</category>
      <category>newsandviews</category>
    </item>
    <item>
      <title>Sonatype Nexus Repository 3.20 Installation, Admin Login, and Port Change [VIDEO]</title>
      <dc:creator>Katie McCaskey</dc:creator>
      <pubDate>Fri, 27 Mar 2020 13:45:00 +0000</pubDate>
      <link>https://dev.to/sonatype/sonatype-nexus-repository-3-20-installation-admin-login-and-port-change-video-1k58</link>
      <guid>https://dev.to/sonatype/sonatype-nexus-repository-3-20-installation-admin-login-and-port-change-video-1k58</guid>
      <description>&lt;p&gt;&lt;a href="https://blog.sonatype.com/sonatype-nexus-3.2-installation-admin-login-and-port-change-video"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--UXqHJSVJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://blog.sonatype.com/hubfs/GettyImages-921518946.jpg" alt="Sonatype Nexus Repository 3.20 Installation, Admin Login, and Port Change [VIDEO]"&gt; &lt;/a&gt;&lt;/p&gt;

&lt;p&gt;There are often times in agile teams where &lt;a href="https://blog.sonatype.com/definition-of-devops"&gt;DevOps&lt;/a&gt; is constrained by bandwidth. &lt;/p&gt;

&lt;p&gt;This tutorial is aimed at developers to help them get things up and running without hassle. This will give them confidence to try out things on a working instance rather than just learning theory.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--VkDWyQTZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://track.hubspot.com/__ptq.gif%3Fa%3D1958393%26k%3D14%26r%3Dhttps%253A%252F%252Fblog.sonatype.com%252Fsonatype-nexus-3.2-installation-admin-login-and-port-change-video%26bu%3Dhttps%25253A%25252F%25252Fblog.sonatype.com%26bvt%3Drss" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--VkDWyQTZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://track.hubspot.com/__ptq.gif%3Fa%3D1958393%26k%3D14%26r%3Dhttps%253A%252F%252Fblog.sonatype.com%252Fsonatype-nexus-3.2-installation-admin-login-and-port-change-video%26bu%3Dhttps%25253A%25252F%25252Fblog.sonatype.com%26bvt%3Drss" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://blog.sonatype.com/sonatype-nexus-3.2-installation-admin-login-and-port-change-video"&gt;Watch the video at the Sonatype blog&lt;/a&gt;&lt;/p&gt;

</description>
      <category>nexusrepository</category>
      <category>featured</category>
      <category>product</category>
    </item>
    <item>
      <title>Nexus Vulnerability Scanner: Getting Started with Vulnerability Analysis</title>
      <dc:creator>Katie McCaskey</dc:creator>
      <pubDate>Thu, 26 Mar 2020 13:45:00 +0000</pubDate>
      <link>https://dev.to/sonatype/nexus-vulnerability-scanner-getting-started-with-vulnerability-analysis-l3m</link>
      <guid>https://dev.to/sonatype/nexus-vulnerability-scanner-getting-started-with-vulnerability-analysis-l3m</guid>
      <description>&lt;p&gt;&lt;a href="https://blog.sonatype.com/nexus-vulnerability-scanner-and-vulnerability-analysis"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--xmjGY4U---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://blog.sonatype.com/hubfs/GettyImages-576581752.png" alt="Nexus Vulnerability Scanner: Getting Started with Vulnerability Analysis"&gt; &lt;/a&gt;&lt;/p&gt;

&lt;p&gt;As a developer, you know the importance of building a robust application. With cyberattacks increasing every day, you should make sure your application is safe from the attacks and isn’t vulnerable.&lt;/p&gt;

&lt;p&gt;To assess your application for security and to help you find vulnerabilities in your application so you can fix them, &lt;a href="https://www.sonatype.com/appscan"&gt;Nexus Vulnerability Scanner&lt;/a&gt; would be of great help!&lt;/p&gt;

&lt;p&gt;So, in this post, I’ll be telling you what this tool is and how to use it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--mPLTrbip--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://track.hubspot.com/__ptq.gif%3Fa%3D1958393%26k%3D14%26r%3Dhttps%253A%252F%252Fblog.sonatype.com%252Fnexus-vulnerability-scanner-and-vulnerability-analysis%26bu%3Dhttps%25253A%25252F%25252Fblog.sonatype.com%26bvt%3Drss" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--mPLTrbip--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://track.hubspot.com/__ptq.gif%3Fa%3D1958393%26k%3D14%26r%3Dhttps%253A%252F%252Fblog.sonatype.com%252Fnexus-vulnerability-scanner-and-vulnerability-analysis%26bu%3Dhttps%25253A%25252F%25252Fblog.sonatype.com%26bvt%3Drss" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://blog.sonatype.com/nexus-vulnerability-scanner-and-vulnerability-analysis"&gt;Read more on the Sonatype blog&lt;/a&gt;&lt;/p&gt;

</description>
      <category>vulnerabilities</category>
      <category>security</category>
      <category>appsec</category>
      <category>applicationsecurity</category>
    </item>
    <item>
      <title>Top 6 Reasons the Time is Now for DevSecOps in the Federal Government</title>
      <dc:creator>Katie McCaskey</dc:creator>
      <pubDate>Wed, 25 Mar 2020 13:45:00 +0000</pubDate>
      <link>https://dev.to/sonatype/top-6-reasons-the-time-is-now-for-devsecops-in-the-federal-government-2722</link>
      <guid>https://dev.to/sonatype/top-6-reasons-the-time-is-now-for-devsecops-in-the-federal-government-2722</guid>
      <description>&lt;p&gt;&lt;a href="https://blog.sonatype.com/top-6-reasons-the-time-is-now-for-devsecops-in-the-federal-government"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--9zPDymYd--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://blog.sonatype.com/hubfs/GettyImages-1154438278.png" alt="Top 6 Reasons the Time is Now for DevSecOps in the Federal Government"&gt; &lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Underpinning all modern technology - software and hardware - is a supply chain. However, even as “software eats the world,” or we could argue “ate the world,” there is still too little understanding of the software supply chain, with continued focus on hardware. The reality, however, is that software is much easier to pollute than hardware. While there has been an increase in awareness around the need for a coordinated application security strategy, the federal government has historically focused on playing strong defense, putting up walls at the perimeter, and at the end of the digital supply chain.&lt;/p&gt;

&lt;p&gt;It’s time to shift more security resources further left. In this way, the government can play better offense at the beginning of the digital supply chain so that federal agencies can better protect themselves and the American citizenry.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--K2IzObIo--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://track.hubspot.com/__ptq.gif%3Fa%3D1958393%26k%3D14%26r%3Dhttps%253A%252F%252Fblog.sonatype.com%252Ftop-6-reasons-the-time-is-now-for-devsecops-in-the-federal-government%26bu%3Dhttps%25253A%25252F%25252Fblog.sonatype.com%26bvt%3Drss" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--K2IzObIo--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://track.hubspot.com/__ptq.gif%3Fa%3D1958393%26k%3D14%26r%3Dhttps%253A%252F%252Fblog.sonatype.com%252Ftop-6-reasons-the-time-is-now-for-devsecops-in-the-federal-government%26bu%3Dhttps%25253A%25252F%25252Fblog.sonatype.com%26bvt%3Drss" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://blog.sonatype.com/top-6-reasons-the-time-is-now-for-devsecops-in-the-federal-government"&gt;Read more at the Sonatype blog&lt;/a&gt;&lt;/p&gt;

</description>
      <category>cybersecurity</category>
      <category>government</category>
      <category>devsecops</category>
      <category>featured</category>
    </item>
    <item>
      <title>Microsoft Acquires npm</title>
      <dc:creator>Katie McCaskey</dc:creator>
      <pubDate>Mon, 16 Mar 2020 19:44:03 +0000</pubDate>
      <link>https://dev.to/sonatype/microsoft-acquires-npm-591h</link>
      <guid>https://dev.to/sonatype/microsoft-acquires-npm-591h</guid>
      <description>&lt;p&gt;Today, news broke that GitHub and its parent company Microsoft, acquired npm and its public repository of open source JavaScript packages.&lt;/p&gt;

&lt;p&gt;Sonatype CTO Brian Fox shares his reaction in this post, &lt;a href="https://blog.sonatype.com/microsoft-acquires-npm-a-healthy-move-for-critical-public-infrastructure"&gt; Microsoft Acquires npm: A Healthy Move for Critical Public Infrastructure&lt;/a&gt;.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>npm audit vs auditjs</title>
      <dc:creator>Mike Hoskins</dc:creator>
      <pubDate>Wed, 11 Mar 2020 23:32:37 +0000</pubDate>
      <link>https://dev.to/sonatype/npm-audit-vs-auditjs-2fhp</link>
      <guid>https://dev.to/sonatype/npm-audit-vs-auditjs-2fhp</guid>
      <description>&lt;p&gt;[Full disclosure: I work for Sonatype, the company who offers OSS Index and AuditJS as free tools. We do this to give back to the OpenSource community, help raise awareness through easier access to security data, and garner interest in the extended feature set of commercial DevSecOps tooling we provide.]&lt;/p&gt;

&lt;p&gt;Awhile back I wrote &lt;a href="https://blog.devopsdreams.io/beyond-npm-audit" rel="noopener noreferrer"&gt;a blog post&lt;/a&gt; after a colleague shared &lt;a href="https://www.npmjs.com/package/auditjs" rel="noopener noreferrer"&gt;a new JavaScript auditing tool called AuditJS&lt;/a&gt;. I wanted to update that based on more time with the tool, particularly since a new version was recently released!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/sonatype-nexus-community/auditjs" rel="noopener noreferrer"&gt;AuditJS&lt;/a&gt; is a free tool leveraging &lt;a href="https://ossindex.sonatype.org/" rel="noopener noreferrer"&gt;Sonatype's OSS Index&lt;/a&gt;. OSSI exposes &lt;a href="https://ossindex.sonatype.org/doc/rest" rel="noopener noreferrer"&gt;a ReST API&lt;/a&gt; aggregating several security vulnerability feeds including &lt;a href="https://cve.mitre.org" rel="noopener noreferrer"&gt;CVE&lt;/a&gt;, &lt;a href="https://cwe.mitre.org" rel="noopener noreferrer"&gt;CWE&lt;/a&gt; and &lt;a href="https://nvd.nist.gov" rel="noopener noreferrer"&gt;NVD&lt;/a&gt;. OSSI continues to evolve by adding more data sources and benefits from ongoing curation of existing feeds. The effort required to mine so much data is conveniently abstracted away as it should be by a good tool -- setup AuditJS to reap the benefits!&lt;/p&gt;

&lt;p&gt;The 4.x release brought a lot of bug fixes and usability enhancements based on community feedback... Installation is quick and easy, if you want to run AuditJS as a NPM script just &lt;code&gt;npm i auditjs -D&lt;/code&gt; to get started. I prefer running it via &lt;code&gt;npx auditjs ossi&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;You can use it as a one-off CLI or easily integrate with your CI/CD pipelines. It's possible to integrate with the commercial &lt;a href="https://help.sonatype.com/iqserver" rel="noopener noreferrer"&gt;IQ Server&lt;/a&gt; (benefits from additional curation including both human and machine intelligence), but it is completely free to use with OSSI. You might want to &lt;a href="https://ossindex.sonatype.org/user/register" rel="noopener noreferrer"&gt;register for a free account&lt;/a&gt;, but even that is not required. The one benefit of an account is removing the rate-limit which can affect larger projects. I haven't hit rate-limit issues in my typically-sized NodeJS projects. You can even submit vulnerability reports via &lt;a href="https://github.com/OSSIndex/vulns" rel="noopener noreferrer"&gt;an awesome Git-based process&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Let's see what it looks like, and talk about a couple things which might surprise you when comparing to &lt;code&gt;npm audit&lt;/code&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight console"&gt;&lt;code&gt;&lt;span class="go"&gt;➜ npx auditjs ossi
 ________   ___  ___   ________   ___   _________       ___   ________
|\   __  \ |\  \|\  \ |\   ___ \ |\  \ |\___   ___\    |\  \ |\   ____\
\ \  \|\  \\ \  \\\  \\ \  \_|\ \\ \  \\|___ \  \_|    \ \  \\ \  \___|_
 \ \   __  \\ \  \\\  \\ \  \ \\ \\ \  \    \ \  \   __ \ \  \\ \_____  \
  \ \  \ \  \\ \  \\\  \\ \  \_\\ \\ \  \    \ \  \ |\  \\_\  \\|____|\  \
   \ \__\ \__\\ \_______\\ \_______\\ \__\    \ \__\\ \________\ ____\_\  \
    \|__|\|__| \|_______| \|_______| \|__|     \|__| \|________||\_________\
                                                                \|_________|

  _      _                       _   _
 /_)    /_`_  _  _ _/_   _  _   (/  /_`_._  _   _/ _
/_)/_/ ._//_// //_|/ /_//_//_' (_X /  ///_'/ //_/_\
   _/                _//

  AuditJS version: 4.0.10

✔ Starting application
✔ Getting coordinates for Sonatype OSS Index
✔ Auditing your application with Sonatype OSS Index
✔ Submitting coordinates to Sonatype OSS Index
✔ Reticulating splines
✔ Removing whitelisted vulnerabilities

  Sonabot here, beep boop beep boop, here are your Sonatype OSS Index results:
  Total dependencies audited: 224

[1/224] - pkg:npm/@nodelib/fs.scandir@2.1.3 - No vulnerabilities found!
[2/224] - pkg:npm/@nodelib/fs.stat@2.0.3 - No vulnerabilities found!
[3/224] - pkg:npm/@nodelib/fs.walk@1.2.4 - No vulnerabilities found!
[4/224] - pkg:npm/@sendgrid/client@6.5.3 - No vulnerabilities found!
[5/224] - pkg:npm/@sendgrid/helpers@6.5.3 - No vulnerabilities found!
[6/224] - pkg:npm/@sendgrid/mail@6.5.4 - No vulnerabilities found!
[7/224] - pkg:npm/@testim/chrome-version@1.0.7 - No vulnerabilities found!
[8/224] - pkg:npm/@types/caseless@0.12.2 - No vulnerabilities found!
[9/224] - pkg:npm/@types/events@3.0.0 - No vulnerabilities found!

&lt;/span&gt;&lt;span class="gp"&gt;#&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;Result list trimmed...
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Dependency lists can obviously be long in NodeJS projects (understatement of the decade?), but the important thing is the reference to Sonatype's OSS Index (yay it's working!) as well as the ability to whitelist.&lt;/p&gt;

&lt;p&gt;Let's say you are alerted about a vulnerability, but know it doesn’t affect you because you aren’t using the vulnerable method -- you can whitelist that! Just pass in a whitelist file containing the OSS Index IDs (the only required field, but you can add others for clarity):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight console"&gt;&lt;code&gt;&lt;span class="go"&gt;➜ cat my-whitelist.json
{
  "ignore": [
    { "id": "long-oss-index-guid", "reason": "I accept the risk!" },
    { "id": "another-oss-index-guid", "reason": "We totally got this!" }
  ]
}

➜ npx auditjs ossi --whitelist my-whitelist.json
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The ideal is obviously to fix all the things, but this puts control in the hands of the developer and is especially useful in larger projects or CI/CD pipelines where the risk of lower severity issues is understood and potentially annoying people or breaking builds while waiting on upstream fixes.&lt;/p&gt;

&lt;p&gt;The other thing I want to call out is the dependency count. Above we see 224 dependencies were audited. By default, AuditJS only scans production dependencies. This is similar to &lt;code&gt;--only=prod&lt;/code&gt; with NPM, but for AuditJS we need &lt;code&gt;--dev&lt;/code&gt; to force scanning everything. Let's compare:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight console"&gt;&lt;code&gt;&lt;span class="gp"&gt;#&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;Could also use some &lt;span class="nt"&gt;--json&lt;/span&gt; | jq fu!
&lt;span class="gp"&gt;➜ npx auditjs ossi 2&amp;gt;&lt;/span&gt;&amp;amp;1|grep &lt;span class="nt"&gt;-e&lt;/span&gt; &lt;span class="s1"&gt;'^\['&lt;/span&gt;|wc
&lt;span class="go"&gt;     224    1568   14428

&lt;/span&gt;&lt;span class="gp"&gt;➜ npx auditjs ossi --dev 2&amp;gt;&lt;/span&gt;&amp;amp;1|grep &lt;span class="nt"&gt;-e&lt;/span&gt; &lt;span class="s1"&gt;'^\['&lt;/span&gt;|wc
&lt;span class="go"&gt;     885    6195   58537

&lt;/span&gt;&lt;span class="gp"&gt;#&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;Nothing too crazy here:
&lt;span class="go"&gt;➜ jq .devDependencies &amp;lt;package.json
{
  "acorn": "^7.1.1",
  "acorn-jsx": "^5.2.0",
  "ajv": "^6.12.0",
  "auditjs": "^4.0.10",
  "eslint": "^6.8.0",
  "eslint-config-airbnb": "^18.0.1",
  "eslint-config-airbnb-base": "^14.0.0",
  "eslint-config-prettier": "^6.10.0",
  "eslint-plugin-import": "^2.20.1",
  "eslint-plugin-jsx-a11y": "^6.2.3",
  "eslint-plugin-node": "^11.0.0",
  "eslint-plugin-prettier": "^3.1.2",
  "eslint-plugin-promise": "^4.2.1",
  "eslint-plugin-react": "^7.19.0",
  "eslint-plugin-react-hooks": "^2.5.0",
  "jest": "^25.1.0",
  "nodemon": "^2.0.2",
  "prettier": "^1.19.1",
  "supertest": "^4.0.2"
}
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Even a modest set of devDependencies requires a lot of additional scanning (~75% more in this case). AuditJS scans production dependencies by default, as these are what will get shipped with your built product, making it easier to understand the risk profile. You can add devDependencies in if you want!&lt;/p&gt;

&lt;p&gt;Aside from scanning behavior, another place AuditJS attempts to be more efficient is in reporting. NPM will often over-inflate vulnerability reports (to be fair, we might call this erring on the side of caution). Often, with NPM, you'll see output similar to the following:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight console"&gt;&lt;code&gt;&lt;span class="go"&gt;➜ npm audit

&lt;/span&gt;&lt;span class="c"&gt;...
&lt;/span&gt;&lt;span class="go"&gt;
added 1405 packages from 1327 contributors and audited 896097 packages in 26.484s
found 18 moderate severity vulnerabilities
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;896,097 packages?!? Or is it 1405? What gives -- I don't write efficient code (I likes me some cowsay), but I don't see that much stuff in node_packages...&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fpreview.redd.it%2Ftfugj4n3l6ez.png%3Fwidth%3D960%26crop%3Dsmart%26auto%3Dwebp%26s%3Db477bf6ac3c7bddfef1c2d483d73029437a42e30" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fpreview.redd.it%2Ftfugj4n3l6ez.png%3Fwidth%3D960%26crop%3Dsmart%26auto%3Dwebp%26s%3Db477bf6ac3c7bddfef1c2d483d73029437a42e30" title="Heaviest Objects in the Universe" alt="node_modules meme"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Let's break that down:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight console"&gt;&lt;code&gt;&lt;span class="go"&gt;➜ npm ls --parseable | wc
    1057    1057   88307

➜ npm ls --parseable --only=prod | wc
     231     231   18007
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;231 is a lot closer to AuditJS' default behavior... Where did those extra packages come from? The devil is in the details, and this can lead to confusion when comparing tools... AuditJS de-dupes, so you still get warned about any critical vulnerabilities despite potentially looking like it did less work. Here's an example of how NPM reports on the same package multiple times:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight console"&gt;&lt;code&gt;&lt;span class="gp"&gt;➜ npm ls --parseable|grep -E 'ms$&lt;/span&gt;&lt;span class="s1"&gt;'
&lt;/span&gt;&lt;span class="go"&gt;src/thing/node_modules/log4js/node_modules/ms
src/thing/node_modules/streamroller/node_modules/ms
src/thing/node_modules/rewire/node_modules/ms
src/thing/node_modules/eslint/node_modules/ms
src/thing/node_modules/ms
src/thing/node_modules/send/node_modules/debug/node_modules/ms
src/thing/node_modules/send/node_modules/ms
&lt;/span&gt;&lt;span class="c"&gt;...
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;ms&lt;/code&gt; is indeed used in all these different places, but in total only three versions of it exist in my project. AuditJS only reports on the distinct coordinates it finds (2.0.0, 2.1.1, 2.1.2), whereas &lt;code&gt;npm ls&lt;/code&gt; (and the associated &lt;code&gt;npm audit&lt;/code&gt; commands) count multiple times if something is duplicated.&lt;/p&gt;

&lt;p&gt;In the arms race that is security, it's nice to see new tools which help developers stay ahead of the bad guys are rapidly evolving. For your next JavaScript project, take a moment to test drive some &lt;code&gt;npm audit&lt;/code&gt; alternatives!&lt;/p&gt;

</description>
      <category>npm</category>
      <category>security</category>
      <category>javascript</category>
      <category>node</category>
    </item>
    <item>
      <title>Nexus Intelligence Insights: What's in a Ghostcat? CVE-2020-1938 Apache Tomcat - Local File Inclusion Potentially Leads to RCE</title>
      <dc:creator>Katie McCaskey</dc:creator>
      <pubDate>Mon, 09 Mar 2020 13:45:00 +0000</pubDate>
      <link>https://dev.to/sonatype/nexus-intelligence-insights-what-s-in-a-ghostcat-cve-2020-1938-apache-tomcat-local-file-inclusion-potentially-leads-to-rce-30h1</link>
      <guid>https://dev.to/sonatype/nexus-intelligence-insights-what-s-in-a-ghostcat-cve-2020-1938-apache-tomcat-local-file-inclusion-potentially-leads-to-rce-30h1</guid>
      <description>&lt;p&gt;By &lt;a href="https://dev.to/axsharma"&gt;Ax Sharma&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://blog.sonatype.com/nexus-intelligence-insights-whats-in-a-ghostcat-cve-2020-1938-apache-tomcat"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--kKAht9Md--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://blog.sonatype.com/hubfs/GettyImages-1086981736.png" alt="ghostcat"&gt; &lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For this month’s Nexus Intelligence Insights, let’s dive deep into the popular &lt;em&gt;Ghostcat&lt;/em&gt; vulnerability making headlines recently.&lt;/p&gt;

&lt;p&gt;This vulnerability deserves attention as it impacts the widely used Apache Tomcat web server, has at least &lt;a href="https://www.tenable.com/blog/cve-2020-1938-ghostcat-apache-tomcat-ajp-file-readinclusion-vulnerability-cnvd-2020-10487"&gt;&lt;strong&gt;5 exploits publicly available&lt;/strong&gt;&lt;/a&gt; on GitHub and &lt;a href="https://www.exploit-db.com/exploits/48143"&gt;ExploitDB&lt;/a&gt;, and has a rather simple, yet overlooked, root cause. In fact,&lt;a href="https://www.zdnet.com/article/ghostcat-bug-impacts-all-apache-tomcat-versions-released-in-the-last-13-years/"&gt;&lt;strong&gt;no version of Tomcat&lt;/strong&gt;  &lt;strong&gt;released in the last 13 years&lt;/strong&gt;&lt;/a&gt; is immune to Ghostcat, unless properly patched.&lt;/p&gt;

&lt;p&gt;The vulnerability, left unresolved, could pave an easy way for attackers to access arbitrary files on the server. The files may very well divulge sensitive information such as proprietary source code, stored passwords, API tokens, etc. More advanced PoCs can let malicious actors cause even further damage by remotely executing code on the system and &lt;a href="https://twitter.com/campuscodi/status/1233400508435619845"&gt;planting backdoors&lt;/a&gt;, if they are able to get their hands on juicy bits of information.&lt;/p&gt;

&lt;p&gt;What’s more? “&lt;a href="https://www.bleepingcomputer.com/news/security/active-scans-for-apache-tomcat-ghostcat-vulnerability-detected-patch-now/"&gt;Mass scanning activity targeting this vulnerability has already begun&lt;/a&gt;,” according to Bad Packets and evident from Shodan, thereby prompting immediate attention and a speedy remediation of this issue.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--g2XtaJh5--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://track.hubspot.com/__ptq.gif%3Fa%3D1958393%26k%3D14%26r%3Dhttps%253A%252F%252Fblog.sonatype.com%252Fnexus-intelligence-insights-whats-in-a-ghostcat-cve-2020-1938-apache-tomcat%26bu%3Dhttps%25253A%25252F%25252Fblog.sonatype.com%26bvt%3Drss" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--g2XtaJh5--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://track.hubspot.com/__ptq.gif%3Fa%3D1958393%26k%3D14%26r%3Dhttps%253A%252F%252Fblog.sonatype.com%252Fnexus-intelligence-insights-whats-in-a-ghostcat-cve-2020-1938-apache-tomcat%26bu%3Dhttps%25253A%25252F%25252Fblog.sonatype.com%26bvt%3Drss" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://blog.sonatype.com/nexus-intelligence-insights-whats-in-a-ghostcat-cve-2020-1938-apache-tomcat"&gt;Read more at the Sonatype blog&lt;/a&gt;&lt;/p&gt;

</description>
      <category>vulnerabilities</category>
      <category>tomcat</category>
      <category>featured</category>
      <category>nexusintelligencei</category>
    </item>
  </channel>
</rss>
