Top issues
Detected presence of web service access tokens.
Causes risk: web service credentials found
secrets
Problem
Software as a Service (SaaS) platforms expose programmable interfaces to their authenticated users. These web services enable action automation and secure exchange of information. For authorization, web service users provide a unique token that confirms their access rights. These tokens are considered secrets. They should never be included in a software release package, even if they are obfuscated by encryption on the client-side.Prevalence in PyPI community
4 packages
found in
Top 100
14 packages
found in
Top 1k
81 packages
found in
Top 10k
2.82k packages
in community
Next steps
You should securely store web service access tokens, and fully automate their management and periodic rotation.
If tokens were published unintentionally and the software has been made public, you should revoke exposed tokens and file a security incident.
Examples of service tokens that may have been detected include AWS, Facebook, JWT, SWT, Slack and others.
Detected presence of software components distributed with copyleft licenses.
Causes risk: copyleft licensed components
licenses
Problem
Software license is a legal instrument that governs the use and distribution of software source code and its binary representation. Software publishers have the freedom to choose any commonly used or purposefully written license to publish their work under. While some licenses are liberal and allow almost any kind of distribution, with or without code modification, other licenses are more restrictive and impose rules for their inclusion in other software projects. Copyleft licenses in particular impose substantial restrictions on the licensee. They typically require that any derived works, and even software code that merely interacts with copyleft code, be licensed under the same license. Since copyleft licenses are commonly applied to open source code, their inclusion requires that the entire software package becomes open sourced. For commercial applications, this is typically undesirable. Therefore, the inclusion of copyleft code is commonly avoided or even prohibited by the organization policy.Prevalence in PyPI community
4 packages
found in
Top 100
42 packages
found in
Top 1k
659 packages
found in
Top 10k
89.98k packages
in community
Next steps
Confirm that the software package includes a copyleft component.
Investigate if the software publisher provides this component under a non-copyleft license.
Consider replacing the software component with an alternative that offers a license compatible with commercial use.
Detected presence of licenses that place restrictions on software distribution.
Causes risk: software distribution restrictions
licenses
Problem
Software license is a legal instrument that governs the use and distribution of software source code and its binary representation. Software publishers have the freedom to choose any commonly used or purposefully written license to publish their work under. While some licenses are liberal and allow almost any kind of distribution, with or without code modification, other licenses are more restrictive and impose rules for their inclusion in other software projects. Some software licenses place restrictions on software distribution of the code they apply to. These restrictions may extend to the services built upon the code licensed under such restrictive licenses. Some restrictive licenses explicitly state that the licensee may not provide the software to third parties as a hosted or managed service, where the service provides users with access to any substantial set of the features or functionality of the licensed software. When building commercial applications, this is typically undesirable. Therefore, the inclusion of any code that may impose limits on software distribution is commonly avoided or even prohibited by the organization policy.Prevalence in PyPI community
7 packages
found in
Top 100
82 packages
found in
Top 1k
1208 packages
found in
Top 10k
109.57k packages
in community
Next steps
Confirm that the software package references a component or a dependency with a restrictive license.
Consider replacing the software component with an alternative that offers a license compatible with organization policy.
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. Top-level domains (TLD) are a part of the Domain Name System (DNS), and are used to lookup an Internet Protocol (IP) address of a requested website. There are a few different types of top-level domains. Generic, sponsored and country-code TLDs are generally accessible to the public. Registrars that govern the assignment of domain names within the TLD may choose to sell specific domain names to an interested party. However, some registrars are known to have less strict rules for assigning domain names. Attackers often abuse gaps in governance and actively seek to register their malicious domains in such TLDs. This issue is raised for all domains registered within TLDs that harbor an excessive number of malicious sites. While the presence of suspicious TLDs does not imply malicious intent, all of its uses in a software package should be documented and approved.Prevalence in PyPI community
12 packages
found in
Top 100
90 packages
found in
Top 1k
503 packages
found in
Top 10k
15.92k 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 changing the top-level domain to avoid being flagged by security solutions.
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. A port number is associated with a network address of a host, such as an IP address, and the type of network protocol used for communication. Within URLs, the ports are optional. Ports can be specified in a URL immediately following the domain name. Each network protocol, or schema, has a set of standard ports on which the service operates. This issue is raised when a mismatch between a network protocol and its expected port number is detected. While the presence of non-standard ports does not imply malicious intent, all of their uses in a software package should be documented and approved.Prevalence in PyPI community
35 packages
found in
Top 100
271 packages
found in
Top 1k
1732 packages
found in
Top 10k
61.12k 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 changing the port to one that is standard for the networking protocol.
Top behaviors
Sends data on a connected TCP socket.
network
Prevalence in PyPI community
Behavior often found in this community (Common)
14 packages
found in
Top 100
98 packages
found in
Top 1k
585 packages
found in
Top 10k
18.68k packages
in community
Receives data from a connected TCP socket.
network
Prevalence in PyPI community
Behavior often found in this community (Common)
10 packages
found in
Top 100
93 packages
found in
Top 1k
490 packages
found in
Top 10k
15.62k packages
in community
Permits an incoming connection on a TCP socket.
network
Prevalence in PyPI community
Behavior often found in this community (Common)
9 packages
found in
Top 100
66 packages
found in
Top 1k
290 packages
found in
Top 10k
8.75k packages
in community
Opens a socket listening for an incoming connection.
network
Prevalence in PyPI community
Behavior often found in this community (Common)
10 packages
found in
Top 100
78 packages
found in
Top 1k
317 packages
found in
Top 10k
9.18k packages
in community
Connects through HTTP.
network
Prevalence in PyPI community
Behavior often found in this community (Common)
23 packages
found in
Top 100
129 packages
found in
Top 1k
1177 packages
found in
Top 10k
46.1k packages
in community
Top vulnerabilities
No vulnerabilities found.