Top issues
Problem
Uniform Resource Locators (URLs) are structured addresses that point to locations and assets on the internet. URLs allow software developers to build complex applications that exchange data with servers that can be hosted in multiple geographical regions. URLs can commonly be found embedded in documentation, configuration files, source code and compiled binaries. One or more embedded URLs were discovered to link to raw files hosted on GitHub. Attackers often abuse popular web services to host malicious payloads. Since code-sharing services URLs are typically allowed by security solutions, using them for payload delivery increases the odds that the malicious code will reach the user. While the presence of code-sharing service locations does not imply malicious intent, all of their uses in a software package should be documented and approved. An increasing number of software supply chain attacks in the open source space leverages the GitHub service to deliver malicious payloads.Prevalence in PowerShell Gallery community
7 packages
found in
Top 100
389 packages
found in
Top 1k
1464 packages
found in
Top 10k
2513 packages
in community
Next steps
Investigate reported detections.
If the software should not include these network references, 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 an alternative delivery mechanism for software packages.
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
179 packages
found in
Top 1k
969 packages
found in
Top 10k
1540 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.
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
85 packages
found in
Top 100
354 packages
found in
Top 1k
1054 packages
found in
Top 10k
1674 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.
Detected digital signatures that have not been performed with an extended validation certificate.
signatures
Problem
Digital signatures are applied to applications, packages and documents as a cryptographically secured authenticity record. Signatures are made using digital certificates, which can either be purchased from certificate authorities or be self-issued. When a certificate is purchased from a certificate authority, the subject that requests it goes through an identity validation process. Depending on the certificate type, those checks can be basic or extended. Confirming the subject identity is a multi-step process, and the requesting subject can be mapped to its legal entity name only through extended validation of submitted documents. Extended identity validation typically costs more, and it takes longer for a certificate to be issued when this process is correctly followed.Prevalence in PowerShell Gallery community
86 packages
found in
Top 100
259 packages
found in
Top 1k
991 packages
found in
Top 10k
1561 packages
in community
Next steps
Consider the benefits of acquiring extended validation certificates. Operating systems tend to be more trusting of software packages signed in this way. Certain security warnings and prompts might also be automatically suppressed. This reduces the number of support tickets for organizations that opt to use extended validation certificates.
Problem
Operating systems allow multiple user accounts to coexist on a single computer system. Each registered user has identity information associated with their account. At the very least, user accounts consist of a user name and an optional password. In some cases, user account data may also include personally identifiable information. Extended personal information may include user's given and last name, their email and mailing address, personal photo and their telephone number. Financially motivated attackers may seek to collect personal information for purposes of selling the private data to a third-party. Malicious code that typically exhibits these behavior traits is commonly referred to as an information stealer. While the presence of code that accesses identity information does not necessarily imply malicious intent, all of its uses in a software package should be documented and approved. Accessing identity information is a very common behavior for software packages. One example of acceptable use for such functions is verifying that the active user has purchased a software license that allows them to run the application.Prevalence in PowerShell Gallery community
7 packages
found in
Top 100
98 packages
found in
Top 1k
430 packages
found in
Top 10k
758 packages
in community
Next steps
Investigate reported detections as indicators of software tampering.
Consult Mitre ATT&CK documentation: T1033 - System Owner/User Discovery.
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
72 packages
found in
Top 1k
111 packages
found in
Top 10k
218 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
172 packages
found in
Top 1k
803 packages
found in
Top 10k
1281 packages
in community
Deletes credentials from the Windows Credential Manager.
settings
Prevalence in PowerShell Gallery community
Behavior often found in this community (Common)
5 packages
found in
Top 100
71 packages
found in
Top 1k
79 packages
found in
Top 10k
182 packages
in community
Retrieves the local computer name.
search
Prevalence in PowerShell Gallery community
Behavior often found in this community (Common)
2 packages
found in
Top 100
45 packages
found in
Top 1k
170 packages
found in
Top 10k
301 packages
in community
Changes the value of a registry key.
registry
Prevalence in PowerShell Gallery community
Behavior often found in this community (Common)
5 packages
found in
Top 100
65 packages
found in
Top 1k
304 packages
found in
Top 10k
494 packages
in community
Top vulnerabilities
No vulnerabilities found.