This issue can affect BIND 9 resolvers with stale-answer-enable yes; that also make use of the option stale-answer-client-timeout, configured with a value greater than zero.
If the resolver receives many queries that require recursion, there will be a corresponding increase in the number of clients that are waiting for recursion to complete. If there are sufficient clients already waiting when a new client query is received so that it is necessary to SERVFAIL the longest waiting client (see BIND 9 ARM recursive-clients limit and soft quota), then it is possible for a race to occur between providing a stale answer to this older client and sending an early timeout SERVFAIL, which may cause an assertion failure.
This issue affects BIND 9 versions 9.16.12 through 9.16.36, 9.18.0 through 9.18.10, 9.19.0 through 9.19.8, and 9.16.12-S1 through 9.16.36-S1.
"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2022-3924.json"
[
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "9.16.12-s1"
}
]
},
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "9.16.13-s1"
}
]
},
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "9.16.14-s1"
}
]
},
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "9.16.21-s1"
}
]
},
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "9.16.32-s1"
}
]
},
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "9.16.36-s1"
}
]
}
]