Top issues
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 PowerShell Gallery community
13 packages
found in
Top 100
176 packages
found in
Top 1k
997 packages
found in
Top 10k
1.61k 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
Installed software stores sensitive user information in application-specific databases. For browsers, this sensitive information includes the complete history of visited websites, autocomplete form data, saved passwords, website cookies and session information. These databases are typically not protected from unauthorized access for user convenience. Any encryption they might employ is easily bypassed, as the encryption keys are commonly stored alongside the data. For this reason, attackers often aim to gain access to browser databases and exfiltrate collected data to a remote server. While the presence of code that accesses browser databases 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 can interact with browser databases. One example of acceptable use for such functions is extending browser functionality through natively developed plugins.Prevalence in PowerShell Gallery community
0 packages
found in
Top 100
3 packages
found in
Top 1k
18 packages
found in
Top 10k
22 packages
in community
Next steps
Investigate reported detections as indicators of software tampering.
Consult Mitre ATT&CK documentation: T1217 - Browser Information Discovery.
Consider rewriting the flagged code without using the marked behaviors.
Detected presence of software components that are rarely included by other public software packages.
hunting
Problem
Software developers use programming and design knowledge to build reusable software components. Software components are the basic building blocks for modern applications. Software consumed by an enterprise consists of hundreds, and sometimes even thousands of open source components. Software developers publish components they have authored to public repositories. While a new software project is a welcome addition to the open source community. it is not always prudent to indiscriminately use the latest components when building a commercial application. Irrespective of the software quality, the danger of using components that are rarely used to build applications lies in the fact that the software component may contain novel, currently undetected malicious code. Therefore, it is prudent to review software component behaviors and even try out software component in a sandbox, an environment meant for testing untrusted code.Prevalence in PowerShell Gallery community
1 packages
found in
Top 100
4 packages
found in
Top 1k
5 packages
found in
Top 10k
20 packages
in community
Next steps
Check the software component behaviors for anomalies.
Consider exploratory software component testing within a sandbox environment.
Consider replacing the software component with a more widely used alternative.
Avoid using this software package until it is vetted as safe.
Detected digital signatures that rely on a weak digest algorithm for integrity validation.
signatures
Problem
Digital signatures are applied to applications, packages and documents as a cryptographically secured authenticity record. Signatures verify the origin and the integrity of the object they apply to. The integrity validation relies on the cryptographic strength of the encryption and the hash verification algorithm. If either of the two is considered weak by current standards, there is a chance the signed object could be maliciously modified, without triggering the integrity failure check.Prevalence in PowerShell Gallery community
87 packages
found in
Top 100
354 packages
found in
Top 1k
1060 packages
found in
Top 10k
1.69k packages
in community
Next steps
Create signatures with strong ECC key-length of at least 224 bits, or RSA key-length of at least 2048 bits, and use SHA256 as the hashing algorithm. While encryption key-length upgrade does require you to obtain a new certificate, the hashing algorithm can freely be selected during signing.
With Microsoft SignTool, you can specify the hashing algorithm using the /fd SHA256 parameter.
Problem
Private keys and certificates are considered sensitive information that should not be included in released software packages. However, developers frequently release sensitive information alongside their applications to facilitate automated software testing. Testing keys and certificates often proliferate through the software supply chain. When such information gets shared publicly, it is catalogued by file reputation databases. Any private key and certificate files seen by a file reputation database prior to configured time threshold can be automatically suppressed. Commonly shared sensitive information is not considered to be secret.Prevalence in PowerShell Gallery community
5 packages
found in
Top 100
123 packages
found in
Top 1k
371 packages
found in
Top 10k
631 packages
in community
Next steps
Review the commonly shared sensitive information for evidence of inadvertently exposed secrets.
If the keys were published unintentionally and the software has been made public, you should revoke the keys and file a security incident.
Top behaviors
Accesses credentials from the Windows Credential Manager.
steal
Prevalence in PowerShell Gallery community
Behavior commonly used by malicious software (Important)
Behavior often found in this community (Common)
5 packages
found in
Top 100
71 packages
found in
Top 1k
114 packages
found in
Top 10k
222 packages
in community
Retrieves the name of the user associated with the process.
search
Prevalence in PowerShell Gallery community
Behavior often found in this community (Common)
12 packages
found in
Top 100
168 packages
found in
Top 1k
806 packages
found in
Top 10k
1.29k packages
in community
Deletes the value of a registry key.
registry
Prevalence in PowerShell Gallery community
Behavior often found in this community (Common)
2 packages
found in
Top 100
54 packages
found in
Top 1k
240 packages
found in
Top 10k
398 packages
in community
Deletes a registry key and its values.
registry
Prevalence in PowerShell Gallery community
Behavior often found in this community (Common)
2 packages
found in
Top 100
55 packages
found in
Top 1k
253 packages
found in
Top 10k
414 packages
in community
Sends data on a connected TCP socket.
network
Prevalence in PowerShell Gallery community
Behavior often found in this community (Common)
5 packages
found in
Top 100
50 packages
found in
Top 1k
485 packages
found in
Top 10k
698 packages
in community
Top vulnerabilities
No vulnerabilities found.