Check: SRG-APP-000251-DNS-000037
Domain Name System (DNS) SRG:
SRG-APP-000251-DNS-000037
(in versions v4 r1 through v2 r4)
Title
The DNS server implementation must check the validity of all data inputs except those specifically identified by the organization. (Cat II impact)
Discussion
Invalid user input occurs when a user inserts data or characters into an application's data entry fields and the application is unprepared to process that data. This results in unanticipated application behavior, potentially leading to an application or information system compromise. Invalid input is one of the primary methods employed when attempting to compromise an application. Checking the valid syntax and semantics of information system inputs (e.g., character set, length, numerical range, and acceptable values) verifies that inputs match specified definitions for format and content. Software applications typically follow well-defined protocols that use structured messages (i.e., commands or queries) to communicate between software modules or system components. Structured messages can contain raw or unstructured data interspersed with metadata or control information. If software applications use attacker-supplied inputs to construct structured messages without properly encoding such messages, then the attacker could insert malicious commands or special characters that can cause the data to be interpreted as control information or metadata. Consequently, the module or component that receives the tainted output will perform the wrong operations or otherwise interpret the data incorrectly. Prescreening inputs prior to passing to interpreters prevents the content from being unintentionally interpreted as commands. Input validation helps to ensure accurate and correct inputs and prevent attacks such as cross-site scripting and a variety of injection attacks. Attacks may be generated by entering invalid data into DNS transactions, in the hopes that the data will not be handled correctly and will allow a vulnerable condition to be exploited. To safeguard against this, all data entered in untrusted DNS transactions (e.g., DNS queries from external hosts) should be checked for validity before being processed further.
Check Content
Review the DNS server implementation configuration to determine if the DNS server checks the validity of all data inputs except those specifically identified by the organization. If the DNS server does not check the validity of all data inputs, this is a finding.
Fix Text
Configure the DNS server to check the validity of all data inputs except those specifically identified by the organization.
Additional Identifiers
Rule ID: SV-205191r961158_rule
Vulnerability ID: V-205191
Group Title: SRG-APP-000251
Expert Comments
CCIs
Number | Definition |
---|---|
CCI-001310 |
Checks the validity of organization-defined information inputs to the system. |
Controls
Number | Title |
---|---|
SI-10 |
Information Input Validation |