Giter Site home page Giter Site logo

chrome-extension-nexus-iq's Introduction

Chrome Extension for Sonatype Nexus IQ

DepShield Badge CircleCI

Table of Contents

Purpose

To allow you to inspect a package before you download it. The plugin requires a valid Sonatype Nexus Lifecycle instance, which means you must be licensed to use this plugin. The plugin can scan packages at the following repositories:

  1. Java - maven - https://search.maven.org/
  2. Java - maven - https://mvnrepository.com/
  3. JS/Node - npm - https://www.npmjs.com/
  4. .Net - nuget - https://www.nuget.org/
  5. Ruby - rubygems - https://rubygems.org/
  6. Python - pypi - https://pypi.org/
  7. php - packagist/composer/ - https://packagist.org/
  8. R - CRAN - https://cran.r-project.org/
  9. Rust - Crates- https://crates.io/
  10. Golang - Go - https://gocenter.jfrog.com/

Data

The data is sourced from Lifecycle's IQ Server, which accesses the Sonatype Data Services for those supported ecosystems, currently 1-6. Systems 7-10 get their data from Sonatype OSSIndex ( https://ossindex.sonatype.org/ ).

Usage

  1. The install will create a new icon in your Chrome Browser next to the location box.

drawing

  1. The plugin will work on any new page opened after install. It will not work on pages already opened at time of install.

  2. Navigate to one of the pages that the extension is compatible with (see the detailed list below).

  3. Click on the Blue Sonatype Logo...

drawing


4.1 ...The solution will think for a second...Then show the Data.

drawing


5. Component Information

drawing


6. License Information

drawing


7. Security Information The security data is presented in a list with clickable sections for each vulnerability.

drawing


8. Security Details The security details for each vulnerability is available. Click on the reference to display the security details.

drawing


9. Version History The version history is available for each component.

drawing


10. Remediation Guidance The remediation guidance API has been added. The recommended fix version will be highlighted in green.

drawing


Examples

The list of pages that are supported are here.

Java - maven

Pattern - https://search.maven.org/artifact/<group>/<artifact>/<version>/<extension>
e.g. https://search.maven.org/artifact/org.apache.struts/struts2-core/2.3.30/jar

Java - maven

Pattern -https://mvnrepository.com/artifact/<group>/<artifact>/<version>
e.g. https://mvnrepository.com/artifact/commons-collections/commons-collections/3.2.1

JS/Node - npm

Pattern - https://www.npmjs.com/package/<package>
e.g. https://www.npmjs.com/package/lodash/
and
Pattern - https://www.npmjs.com/package/<package>/v/<version>
e.g. https://www.npmjs.com/package/lodash/v/4.17.9

DotNet - nuget

Pattern - https://www.nuget.org/packages/<package>/<version>
e.g. https://www.nuget.org/packages/LibGit2Sharp/0.20.1

Ruby - rubygems

Pattern - https://rubygems.org/gems/<package>
e.g. https://rubygems.org/gems/bundler

Python - pypi

Pattern - https://pypi.org/<package>/
e.g. https://pypi.org/project/Django/
or Pattern - https://pypi.org/<package>/<version>/
e.g. https://pypi.org/project/Django/1.6/

php - packagist/composer/

Pattern - https://packagist.org/
e.g. https://packagist.org/packages/drupal/drupal

R - CRAN

Pattern - https://cran.r-project.org/
e.g. https://cran.r-project.org/web/packages/A3/index.html

Rust - Crates

Pattern - https://crates.io/
e.g. https://crates.io/crates/random

Golang - Gocenter

https://search.gocenter.io/
e.g. https://search.gocenter.io/github.com~2Fjbenet~2Fgo-random/versions

Github - any language but only supports the releases tag at this stage

https://github.com/jquery/jquery/releases/tag/1.11.1

Installation

  1. Download the plugin from GitHub git clone https://github.com/sonatype-nexus-community/nexus-iq-chrome-extension.git
  2. Open Chrome Browser
  3. Click on the three dots, then More Tools, then Extensions

drawing


4. Click on load unpacked (requires "Developper Mode" to be enabled)

drawing


drawing


5. Navigate to the folder where you downloaded the plugin from GitHub onto your local machine.

drawing


6. You will be prompted to enter your login details. (Important: Please note that this version stores your details in plain text in Chrome Storage. We are investigated secure storage but at this time we do not support it.)

drawing


7. Select an Application to link to this plugin. The application is required to perform the advanced history and remediation scanning now available.

drawing


8. Click Save to save your credentials.
  1. You will be advised that your details are saved. Click Close when you are done and You will be taken back to the Extensions Install screen in Chrome. Close the screen and begin using.
  2. The installer will have created a new icon in your Chrome Menu Bar.

drawing


Uninstall

If you do not want to use the extension then you can right click on the icon and choose Remove from Chrome
drawing

Version History

No longer documented here. Go to the releases tab

Version 1.7.7

  • Bug fix whereby sometimes the Waiting page would sit there for ever. Due to content script not being injected. Seems the content script is always injected now as I inject it with code rather than in the manifest.json declaration

Version 1.7.6

  • Release fixes

Version 1.7.5

  • Added README.md

Version 1.7.4-Styling

  • Styling of User interface

Version 1.7.3-All URLS

  • Supports running IQ Server on any URL
  • Fixed various bugs

Version 1.7.2-added new formats

  • added new formats
  • Fixed various bugs
  • Added unit tests
Formats/package manager pages supported as of 1.7.2

Version 1.7.1 - Fixed popup

  • Fixed popup logic bug.
  • Began adding testing

Version 1.7 - initial release

Complete rewrite to fix cookie problem with calling Nexus IQ Server. I have decided the best way to fix the security issues for now is to limit access to http://iq-server:8070. So you will have to alias your localhost as iq-server in your /etc/hosts/ file to use this plugin for now. I will think about a change which gives access to all URLS like so below

Add *://*/* to permissions section like so

"permissions": [ "*://*/*",

This would then mean you would not need to alias Nexus IQ.

Supports scanning components in the following repos

chrome-extension-nexus-iq's People

Contributors

ctownshend avatar

Stargazers

 avatar

Watchers

 avatar  avatar

chrome-extension-nexus-iq's Issues

[DepShield] (CVSS 7.5) Vulnerability due to usage of debug:2.6.9

Vulnerabilities

DepShield reports that this application's usage of debug:2.6.9 results in the following vulnerability(s):


Occurrences

debug:2.6.9 is a transitive dependency introduced by the following direct dependency(s):

jest:24.5.0
        └─ jest-cli:24.5.0
              └─ @jest/core:24.5.0
                    └─ micromatch:3.1.10
                          └─ extglob:2.0.4
                                └─ expand-brackets:2.1.4
                                      └─ debug:2.6.9
                          └─ snapdragon:0.8.2
                                └─ debug:2.6.9

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

[DepShield] (CVSS 7.4) Vulnerability due to usage of lodash.sortby:4.7.0

Vulnerabilities

DepShield reports that this application's usage of lodash.sortby:4.7.0 results in the following vulnerability(s):


Occurrences

lodash.sortby:4.7.0 is a transitive dependency introduced by the following direct dependency(s):

jest:24.5.0
        └─ jest-cli:24.5.0
              └─ jest-config:24.5.0
                    └─ jest-environment-jsdom:24.5.0
                          └─ jsdom:11.12.0
                                └─ data-urls:1.1.0
                                      └─ whatwg-url:7.0.0
                                            └─ lodash.sortby:4.7.0
                                └─ whatwg-url:6.5.0
                                      └─ lodash.sortby:4.7.0

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.