Spectra Assure
Community
Docs
warningRisk: Hardening
Scanned: 2 days ago

SystemVerilog and Verilog Formatter

Artifact:
latest
Top 10k
Beautify SystemVerilog and Verilog code in VSCode through Verible
License: Permissive (MIT)
Published: 5 months ago

Publisher: bmpenuelas



SAFE Assessment

Compliance

Licenses
No license compliance issues
Secrets
50 debugging symbols found

Security

Vulnerabilities
No known vulnerabilities detected
Hardening
43 baseline mitigations missing

Threats

Tampering
No evidence of software tampering
Malware
No evidence of malware inclusion

INCIDENTS FOR THIS VERSION:

Popularity

59.5k
Total Installs
Contributor
Declared Dependencies
0
Dependents

Top issues

Problem

ASLR (address-space layout randomization) is a mitigation technique that increases the difficulty of performing buffer-overflow attacks that require the attacker to know the address of the program in memory. This is done by loading the program at a randomly selected address in the process' address space. ASLR-enabled kernels can choose a random load address only for position-independent executables and code.

Prevalence in Visual Studio Code community

25 packages
found in
Top 100
144 packages
found in
Top 1k
407 packages
found in
Top 10k
1385 packages
in community

Next steps

To support ASLR, the program must be compiled as position-independent code. In most compilers, this is done by passing the corresponding position-independent flag, such as -fPIC for shared libraries or -fPIE for executables.

Problem

Software components contain executable code that performs actions implemented during its development. These actions are called behaviors. In the analysis report, behaviors are presented as human-readable descriptions that best match the underlying code intent. While most behaviors are benign, some are commonly abused by malicious software with the intent to cause harm. When a software package shares behavior traits with malicious software, it may become flagged by security solutions. Any detection from security solutions can cause friction for the end-users during software deployment. While the behavior is likely intended by the developer, there is a small chance this detection is true positive, and an early indication of a software supply chain attack.

Prevalence in Visual Studio Code community

31 packages
found in
Top 100
242 packages
found in
Top 1k
1429 packages
found in
Top 10k
6896 packages
in community

Next steps

Investigate reported detections.
If the software intent does not relate to the reported behavior, investigate your build and release environment for software supply chain compromise.
You should delay the software release until the investigation is completed, or until the issue is risk accepted.
Consider rewriting the flagged code without using the marked behaviors.

Problem

Software components sometimes need to interact with higher privilege parts of the operating system, often requiring administrative access to accomplish a task. Operating systems include a complete network stack with many services that allow the machine to connect to the internet. Some of these services are used to secure network access. For that reason, attackers often aim to tamper with system network settings. Disabling firewalls and other network security features enable the malicious code to execute without being blocked. While the presence of code that tampers with system network settings does not necessarily imply malicious intent, all of its uses in a software package should be documented and approved. Only select applications should consider using functions that interact with system network settings. One example of acceptable use for such functions is allowing specialized applications to use non-standard network ports by updating the firewall allowlist.

Prevalence in Visual Studio Code community

13 packages
found in
Top 100
63 packages
found in
Top 1k
147 packages
found in
Top 10k
536 packages
in community

Next steps

Investigate reported detections as indicators of software tampering.
Consult Mitre ATT&CK documentation: T1562.004 - Disable or Modify System Firewall.
Consider rewriting the flagged code without using the marked behaviors.

Problem

Control Flow Guard (CFG/CFI) protects the code flow integrity by ensuring that indirect calls are made only to vetted functions. This mitigation protects dynamically resolved function targets by instrumenting the code responsible for transferring execution control. Because the code flow integrity is verified during runtime, malicious code is less likely to be able to hijack trusted execution paths.

Prevalence in Visual Studio Code community

27 packages
found in
Top 100
204 packages
found in
Top 1k
700 packages
found in
Top 10k
2735 packages
in community

Next steps

It's highly recommended to enable this option for all software components used at security boundaries, or those that process user controlled inputs.
To enable this mitigation, refer to your programming language toolchain documentation.
In Microsoft VisualStudio, you can enable CFG mitigation by passing the /guard:cf parameter to the compiler and linker.

Problem

Control Flow Guard (CFG/CFI) protects the code flow integrity by ensuring that indirect calls are made only to vetted functions. This mitigation protects dynamically resolved function targets by instrumenting the code responsible for transferring execution control. Higher-level programming languages implement structured exception handling by managing their own code flow execution paths. As such, they are subject to code flow hijacking during runtime. Language-specific exception handling mitigation enforces execution integrity by instrumenting calls to manage execution context switching. Any deviation from the known and trusted code flow paths will cause the application to terminate. This makes malicious code less likely to execute.

Prevalence in Visual Studio Code community

43 packages
found in
Top 100
278 packages
found in
Top 1k
880 packages
found in
Top 10k
4106 packages
in community

Next steps

It's highly recommended to enable this option for all software components used at security boundaries, or those that process user controlled inputs.
To enable this mitigation, refer to your programming language toolchain documentation.
In Microsoft VisualStudio, you can enable CFG mitigation by passing the /guard:cf parameter to the compiler and linker.

Top behaviors

Prevalence in Visual Studio Code community

Behavior often found in this community (Common)
94 packages
found in
Top 100
834 packages
found in
Top 1k
6690 packages
found in
Top 10k
83799 packages
in community

Prevalence in Visual Studio Code community

Behavior often found in this community (Common)
47 packages
found in
Top 100
282 packages
found in
Top 1k
936 packages
found in
Top 10k
4064 packages
in community

Prevalence in Visual Studio Code community

Behavior often found in this community (Common)
82 packages
found in
Top 100
646 packages
found in
Top 1k
3580 packages
found in
Top 10k
19750 packages
in community

Prevalence in Visual Studio Code community

Behavior uncommon for this community (Uncommon)
2 packages
found in
Top 100
8 packages
found in
Top 1k
20 packages
found in
Top 10k
99 packages
in community

Prevalence in Visual Studio Code community

Behavior uncommon for this community (Uncommon)
Behavior commonly used by malicious software (Important)
3 packages
found in
Top 100
7 packages
found in
Top 1k
21 packages
found in
Top 10k
68 packages
in community

Top vulnerabilities

No vulnerabilities found.