CWE

Common Weakness Enumeration

A Community-Developed List of Software & Hardware Weakness Types

CWE Top 25 Most Dangerous Weaknesses
Home > CWE List > CWE- Individual Dictionary Definition (4.3)  
ID

CWE-1327: Binding to an Unrestricted IP Address

Weakness ID: 1327
Abstraction: Base
Structure: Simple
Status: Incomplete
Presentation Filter:
+ Description
The product assigns the address 0.0.0.0 for a database server, a cloud service/instance, or any computing resource that communicates remotely.
+ Extended Description

When a server binds to the address 0.0.0.0, it allows connections from every IP address on the local machine, effectively exposing the server to every possible network. This might be much broader access than intended by the developer or administrator, who might only be expecting the server to be reachable from a single interface/network.

+ Relationships

The table(s) below shows the weaknesses and high level categories that are related to this weakness. These relationships are defined as ChildOf, ParentOf, MemberOf and give insight to similar items that may exist at higher and lower levels of abstraction. In addition, relationships such as PeerOf and CanAlsoBe are defined to show similar weaknesses that the user may want to explore.

+ Relevant to the view "Research Concepts" (CWE-1000)
NatureTypeIDName
ChildOfPillarPillar - a weakness that is the most abstract type of weakness and represents a theme for all class/base/variant weaknesses related to it. A Pillar is different from a Category as a Pillar is still technically a type of weakness that describes a mistake, while a Category represents a common characteristic used to group related things.284Improper Access Control
+ Modes Of Introduction

The different Modes of Introduction provide information about how and when this weakness may be introduced. The Phase identifies a point in the life cycle at which introduction may occur, while the Note provides a typical scenario related to introduction during the given phase.

PhaseNote
System Configuration
+ Applicable Platforms
The listings below show possible areas for which the given weakness could appear. These may be for specific named Languages, Operating Systems, Architectures, Paradigms, Technologies, or a class of such platforms. The platform is listed along with how frequently the given weakness appears for that instance.

Languages

Other (Undetermined Prevalence)

Operating Systems

Class: OS-Independent (Undetermined Prevalence)

Architectures

Class: Architecture-Independent (Undetermined Prevalence)

Technologies

Web Server (Undetermined Prevalence)

Class: Client Server (Undetermined Prevalence)

Class: Cloud Computing (Undetermined Prevalence)

+ Common Consequences

The table below specifies different individual consequences associated with the weakness. The Scope identifies the application security area that is violated, while the Impact describes the negative technical impact that arises if an adversary succeeds in exploiting this weakness. The Likelihood provides information about how likely the specific consequence is expected to be seen relative to the other consequences in the list. For example, there may be high likelihood that a weakness will be exploited to achieve a certain impact, but a low likelihood that it will be exploited to achieve a different impact.

ScopeImpactLikelihood
Availability

Technical Impact: DoS: Amplification

High
+ Demonstrative Examples

Example 1

The following code snippet uses 0.0.0.0 in a Puppet script.

(bad code)
Example Language: Other 
signingserver::instance {
"nightly-key-signing-server":
listenaddr => "0.0.0.0",
port => "9100",
code_tag => "SIGNING_SERVER",
}

The Puppet code snippet is used to provision a signing server that will use 0.0.0.0 to accept traffic. However, as 0.0.0.0 is unrestricted, malicious users may use this IP address to launch frequent requests and cause denial of service attacks.

(good code)
Example Language: Other 
signingserver::instance {
"nightly-key-signing-server":
listenaddr => "127.0.0.1",
port => "9100",
code_tag => "SIGNING_SERVER",
}
+ Potential Mitigations

Phase: System Configuration

Assign IP addresses that are not 0.0.0.0.

Effectiveness: High

Phase: System Configuration

Strategy: Firewall

Unwanted connections to the configured server may be denied through a firewall or other packet filtering measures.

Effectiveness: High

+ References
[REF-1158] Akond Rahman, Md Rayhanur Rahman, Chris Parnin and Laurie Williams. "Security Smells in Ansible and Chef Scripts: A Replication Study". 2020-06-20. <https://arxiv.org/pdf/1907.07159.pdf>.
[REF-1159] Akond Rahman, Chris Parnin and Laurie Williams. "The Seven Sins: Security Smells in Infrastructure as Code Scripts". ICSE '19: Proceedings of the 41st International Conference on Software Engineering. 2019-05. <https://dl.acm.org/doi/10.1109/ICSE.2019.00033>.
+ Content History
+ Submissions
Submission DateSubmitterOrganization
2020-09-08Akond RahmanTennessee Technological University
More information is available — Please select a different filter.
Page Last Updated: December 10, 2020