Skip to content

NodeBB - Vulnerability

NodeBB
  • Man stolpert beim Aktualisieren von NodeBB öfter über solche Zeilen.

    found 7 vulnerabilities (2 moderate, 5 high) in 3687 scanned packages
      run `npm audit fix` to fix 6 of them.
      1 vulnerability requires manual review. See the full report for details.
    

    Ein npm audit schmeißt dann z.B. so was hier aus.

    ~/nodebb$ npm audit
                                                                                    
                           === npm audit security report ===                        
                                                                                    
    # Run  npm install helmet@3.21.2  to resolve 1 vulnerability
    ┌───────────────┬──────────────────────────────────────────────────────────────┐
    │ Moderate      │ Configuration Override                                       │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ Package       │ helmet-csp                                                   │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ Dependency of │ helmet                                                       │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ Path          │ helmet > helmet-csp                                          │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ More info     │ https://npmjs.com/advisories/1176                            │
    └───────────────┴──────────────────────────────────────────────────────────────┘
    
    
    # Run  npm update handlebars --depth 3  to resolve 5 vulnerabilities
    ┌───────────────┬──────────────────────────────────────────────────────────────┐
    │ High          │ Prototype Pollution                                          │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ Package       │ handlebars                                                   │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ Dependency of │ nyc [dev]                                                    │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ Path          │ nyc > istanbul-reports > handlebars                          │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ More info     │ https://npmjs.com/advisories/1164                            │
    └───────────────┴──────────────────────────────────────────────────────────────┘
    
    
    ┌───────────────┬──────────────────────────────────────────────────────────────┐
    │ Moderate      │ Denial of Service                                            │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ Package       │ handlebars                                                   │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ Dependency of │ nyc [dev]                                                    │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ Path          │ nyc > istanbul-reports > handlebars                          │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ More info     │ https://npmjs.com/advisories/1300                            │
    └───────────────┴──────────────────────────────────────────────────────────────┘
    
    
    ┌───────────────┬──────────────────────────────────────────────────────────────┐
    │ High          │ Arbitrary Code Execution                                     │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ Package       │ handlebars                                                   │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ Dependency of │ nyc [dev]                                                    │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ Path          │ nyc > istanbul-reports > handlebars                          │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ More info     │ https://npmjs.com/advisories/1316                            │
    └───────────────┴──────────────────────────────────────────────────────────────┘
    
    
    ┌───────────────┬──────────────────────────────────────────────────────────────┐
    │ High          │ Arbitrary Code Execution                                     │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ Package       │ handlebars                                                   │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ Dependency of │ nyc [dev]                                                    │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ Path          │ nyc > istanbul-reports > handlebars                          │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ More info     │ https://npmjs.com/advisories/1324                            │
    └───────────────┴──────────────────────────────────────────────────────────────┘
    
    
    ┌───────────────┬──────────────────────────────────────────────────────────────┐
    │ High          │ Prototype Pollution                                          │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ Package       │ handlebars                                                   │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ Dependency of │ nyc [dev]                                                    │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ Path          │ nyc > istanbul-reports > handlebars                          │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ More info     │ https://npmjs.com/advisories/1325                            │
    └───────────────┴──────────────────────────────────────────────────────────────┘
    
    
    ┌──────────────────────────────────────────────────────────────────────────────┐
    │                                Manual Review                                 │
    │            Some vulnerabilities require your attention to resolve            │
    │                                                                              │
    │         Visit https://go.npm.me/audit-guide for additional guidance          │
    └──────────────────────────────────────────────────────────────────────────────┘
    ┌───────────────┬──────────────────────────────────────────────────────────────┐
    │ High          │ Denial of Service                                            │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ Package       │ mongodb                                                      │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ Patched in    │ >=3.1.13                                                     │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ Dependency of │ socket.io-adapter-mongo                                      │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ Path          │ socket.io-adapter-mongo > mubsub > mongodb                   │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ More info     │ https://npmjs.com/advisories/1203                            │
    └───────────────┴──────────────────────────────────────────────────────────────┘
    found 7 vulnerabilities (2 moderate, 5 high) in 3687 scanned packages
      run `npm audit fix` to fix 6 of them.
      1 vulnerability requires manual review. See the full report for details.
    

    Gut, es gibt ein paar Pakete die ein Security Problem haben. Das kann man mit npm audit fix lösen. Dachte ich !?!?

    ~/nodebb$ npm audit fix
    
    > husky@3.0.9 preuninstall /home/user_nodebb/nodebb/node_modules/husky
    > node husky uninstall
    
    husky > Uninstalling git hooks
    husky > Done
    npm WARN nodebb-plugin-emoji-android@2.0.0 requires a peer of nodebb-plugin-emoji@^2.0.0 but none is installed. You must install peer dependencies yourself.
    npm WARN textcomplete.contenteditable@0.1.1 requires a peer of textcomplete@^0.14.2 but none is installed. You must install peer dependencies yourself.
    
    npm ERR! code EEXIST
    npm ERR! path /home/user_nodebb/nodebb/node_modules/.bin/handlebars
    npm ERR! Refusing to delete /home/user_nodebb/nodebb/node_modules/.bin/handlebars: is outside /home/user_nodebb/nodebb/node_modules/handlebars and not a link
    npm ERR! File exists: /home/user_nodebb/nodebb/node_modules/.bin/handlebars
    npm ERR! Remove the existing file and try again, or run npm
    npm ERR! with --force to overwrite files recklessly.
    
    npm ERR! A complete log of this run can be found in:
    npm ERR!     /home/user_nodebb/.npm/_logs/2019-12-22T08_15_40_111Z-debug.log
    

    Die Logs schreiben aber fast immer rein, was man machen soll 🙂

     npm ERR! Remove the existing file and try again, or run npm
    

    Ok, das bekommen wir hin

    mv /home/user/nodebb/node_modules/.bin/handlebars /home/user
    

    Zur Sicherheit mal irgendwo hin kopiert 😉 Und erneut fixen.

    ~/nodebb$ npm audit fix
    
    > husky@3.0.9 preuninstall /home/user_nodebb/nodebb/node_modules/husky
    > node husky uninstall
    
    husky > Uninstalling git hooks
    husky > Done
    
    > husky@3.1.0 install /home/user_nodebb/nodebb/node_modules/husky
    > node husky install
    
    husky > Setting up git hooks
    husky > Done
    
    > husky@3.1.0 postinstall /home/user_nodebb/nodebb/node_modules/husky
    > opencollective-postinstall || exit 0
    
    Thank you for using husky!
    If you rely on this package, please consider supporting our open collective:
    > https://opencollective.com/husky/donate
    
    npm WARN nodebb-plugin-emoji-android@2.0.0 requires a peer of nodebb-plugin-emoji@^2.0.0 but none is installed. You must install peer dependencies yourself.
    npm WARN textcomplete.contenteditable@0.1.1 requires a peer of textcomplete@^0.14.2 but none is installed. You must install peer dependencies yourself.
    
    + helmet@3.21.2
    added 4 packages from 3 contributors, removed 1 package, updated 10 packages and moved 1 package in 8.094s
    
    6 packages are looking for funding
      run `npm fund` for details
    
    fixed 6 of 7 vulnerabilities in 3687 scanned packages
      1 vulnerability required manual review and could not be updated
    

    Gut, einer bleibt über.

    ~/nodebb$ npm audit
                                                                                    
                           === npm audit security report ===                        
                                                                                    
    ┌──────────────────────────────────────────────────────────────────────────────┐
    │                                Manual Review                                 │
    │            Some vulnerabilities require your attention to resolve            │
    │                                                                              │
    │         Visit https://go.npm.me/audit-guide for additional guidance          │
    └──────────────────────────────────────────────────────────────────────────────┘
    ┌───────────────┬──────────────────────────────────────────────────────────────┐
    │ High          │ Denial of Service                                            │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ Package       │ mongodb                                                      │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ Patched in    │ >=3.1.13                                                     │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ Dependency of │ socket.io-adapter-mongo                                      │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ Path          │ socket.io-adapter-mongo > mubsub > mongodb                   │
    ├───────────────┼──────────────────────────────────────────────────────────────┤
    │ More info     │ https://npmjs.com/advisories/1203                            │
    └───────────────┴──────────────────────────────────────────────────────────────┘
    found 1 high severity vulnerability in 3687 scanned packages
      1 vulnerability requires manual review. See the full report for details.
    

    Da ich diese Datenbank nicht nutze, lasse ich den mal so stehen.