Skip to content

CVE-2018-19838 (Medium) detected in node-sass-v4.12.0 #80

Open
@mend-bolt-for-github

Description

@mend-bolt-for-github

CVE-2018-19838 - Medium Severity Vulnerability

Vulnerable Library - node-sassv4.12.0

🌈 Node.js bindings to libsass

Library home page: https://github.com/sass/node-sass.git

Found in HEAD commit: f6dd84dc144feee598f0e1af4b7f989d4c43506a

Library Source Files (115)

* The source files were matched to this source library based on a best effort match. Source libraries are selected from a list of probable public libraries.

  • /GulpStarter/node_modules/node-sass/src/libsass/src/to_value.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/source_map.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/constants.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/to_c.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/memory_manager.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/node.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/expand.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/listize.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/output.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/parser.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/backtrace.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/units.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/test/test_node.cpp
  • /GulpStarter/node_modules/node-sass/src/sass_types/number.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/sass_util.hpp
  • /GulpStarter/node_modules/node-sass/src/custom_importer_bridge.cpp
  • /GulpStarter/node_modules/node-sass/src/sass_types/sass_value_wrapper.h
  • /GulpStarter/node_modules/node-sass/src/sass_types/null.cpp
  • /GulpStarter/node_modules/node-sass/src/sass_types/string.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/contrib/plugin.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/listize.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/lexer.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/sass_util.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/test/test_superselector.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/units.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/cencode.c
  • /GulpStarter/node_modules/node-sass/src/libsass/src/ast_factory.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/sass_functions.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/ast.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/utf8_string.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/remove_placeholders.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/memory_manager.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/sass_values.cpp
  • /GulpStarter/node_modules/node-sass/src/callback_bridge.h
  • /GulpStarter/node_modules/node-sass/src/libsass/src/constants.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/to_c.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/remove_placeholders.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/util.cpp
  • /GulpStarter/node_modules/node-sass/src/sass_types/color.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/eval.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/sass_context.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/output.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/operation.hpp
  • /GulpStarter/node_modules/node-sass/src/custom_function_bridge.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/inspect.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/sass.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/file.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/include/sass/values.h
  • /GulpStarter/node_modules/node-sass/src/libsass/src/paths.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/sass_values.hpp
  • /GulpStarter/node_modules/node-sass/src/sass_types/boolean.h
  • /GulpStarter/node_modules/node-sass/src/libsass/src/error_handling.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/test/test_unification.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/sass.hpp
  • /GulpStarter/node_modules/node-sass/src/sass_types/list.h
  • /GulpStarter/node_modules/node-sass/src/libsass/src/file.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/position.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/expand.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/context.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/prelexer.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/inspect.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/parser.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/extend.cpp
  • /GulpStarter/node_modules/node-sass/src/sass_types/list.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/bind.cpp
  • /GulpStarter/node_modules/node-sass/src/sass_types/map.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/sass_context.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/values.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/emitter.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/debugger.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/ast_fwd_decl.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/util.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/cssize.cpp
  • /GulpStarter/node_modules/node-sass/src/sass_context_wrapper.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/error_handling.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/position.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/ast_def_macros.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/emitter.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/eval.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/sass2scss.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/functions.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/functions.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/prelexer.hpp
  • /GulpStarter/node_modules/node-sass/src/sass_types/boolean.cpp
  • /GulpStarter/node_modules/node-sass/src/custom_importer_bridge.h
  • /GulpStarter/node_modules/node-sass/src/libsass/src/ast.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/utf8_string.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/include/sass/functions.h
  • /GulpStarter/node_modules/node-sass/src/libsass/src/lexer.cpp
  • /GulpStarter/node_modules/node-sass/src/sass_context_wrapper.h
  • /GulpStarter/node_modules/node-sass/src/libsass/src/b64/encode.h
  • /GulpStarter/node_modules/node-sass/src/libsass/src/base64vlq.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/to_value.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/cssize.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/environment.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/c99func.c
  • /GulpStarter/node_modules/node-sass/src/libsass/test/test_subset_map.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/subset_map.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/include/sass/base.h
  • /GulpStarter/node_modules/node-sass/src/binding.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/source_map.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/include/sass2scss.h
  • /GulpStarter/node_modules/node-sass/src/libsass/src/plugins.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/extend.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/node.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/plugins.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/environment.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/include/sass/context.h
  • /GulpStarter/node_modules/node-sass/src/sass_types/color.h
  • /GulpStarter/node_modules/node-sass/src/libsass/src/color_maps.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/debug.hpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/json.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/context.hpp
  • /GulpStarter/node_modules/node-sass/src/sass_types/factory.cpp
  • /GulpStarter/node_modules/node-sass/src/libsass/src/color_maps.hpp

Vulnerability Details

In LibSass prior to 3.5.5, functions inside ast.cpp for IMPLEMENT_AST_OPERATORS expansion allow attackers to cause a denial-of-service resulting from stack consumption via a crafted sass file, as demonstrated by recursive calls involving clone(), cloneChildren(), and copy().

Publish Date: 2018-12-04

URL: CVE-2018-19838

CVSS 3 Score Details (6.5)

Base Score Metrics:

  • Exploitability Metrics:
    • Attack Vector: Network
    • Attack Complexity: Low
    • Privileges Required: None
    • User Interaction: Required
    • Scope: Unchanged
  • Impact Metrics:
    • Confidentiality Impact: None
    • Integrity Impact: None
    • Availability Impact: High

For more information on CVSS3 Scores, click here.

Suggested Fix

Type: Upgrade version

Origin: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-19838

Fix Resolution: 3.5.5


Step up your Open Source Security Game with WhiteSource here

Metadata

Metadata

Assignees

No one assigned

    Labels

    security vulnerabilitySecurity vulnerability detected by WhiteSource

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions