You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
So the problem is related directly to fix for those vulnerabilities CVE-ID: CVE-2021-3672, CVE-2021-22931 - 5f947db68c
especially this new function is problematic:
static int is_hostnamech(int ch)
{
/* [A-Za-z0-9-.]
* Don't use isalnum() as it is locale-specific
*/
if (ch >= 'A' && ch <= 'Z')
return 1;
if (ch >= 'a' && ch <= 'z')
return 1;
if (ch >= '0' && ch <= '9')
return 1;
if (ch == '-' || ch == '.')
return 1;
return 0;
}
So allow list doesn't contain underscore char "_". It's easy to fix that by changing last "if" to: if (ch == '-' || ch == '.' || ch == '_').
The question is if this is by design or just oversight.
It's critical in our business because our domains contain underscore. Do you able to fix that?
The text was updated successfully, but these errors were encountered:
Version
12.22.5 14.17.5 all X.XX.5
Platform
AllPlatforms
Subsystem
DNS node module
What steps will reproduce the bug?
Just try to resolve domain by a pointer that contains underscore char "_".
How often does it reproduce? Is there a required condition?
Every time.
What is the expected behavior?
Domain should be resolved :)
What do you see instead?
errno: 'EBADRESP',
code: 'EBADRESP',
syscall: 'queryPtr',
Additional information
So the problem is related directly to fix for those vulnerabilities CVE-ID: CVE-2021-3672, CVE-2021-22931 - 5f947db68c
especially this new function is problematic:
So allow list doesn't contain underscore char "_". It's easy to fix that by changing last "if" to:
if (ch == '-' || ch == '.' || ch == '_').
The question is if this is by design or just oversight.
It's critical in our business because our domains contain underscore. Do you able to fix that?
The text was updated successfully, but these errors were encountered: