Compare commits

...

13 Commits

Author SHA1 Message Date
Mark Andrews
d8a6fe8b4d 9.9.3-P2 2013-07-17 08:13:06 +10:00
Mark Andrews
8f3c715e41 3621. [security] Incorrect bounds checking on private type 'keydata'
can lead to a remotely triggerable REQUIRE failure
                        (CVE-2013-4854). [RT #34238]

(cherry picked from commit fdb4ae8f6c)
2013-07-17 08:08:11 +10:00
Evan Hunt
58d2f2e260 [v9_9_3_patch] assertion failure in resolver.c
3584.	[security]	Caching data from an incompletely signed zone could
			trigger an assertion failure in resolver.c [RT #33690]
(cherry picked from commit 276457f7a3)
2013-06-04 11:30:02 -07:00
Mark Andrews
f7f7e3d299 Merge branch 'v9_9' into v9_9_3_patch 2013-05-17 14:21:31 +10:00
Mark Andrews
aa02136e5e Merge branch 'v9_9' into v9_9_3_patch 2013-04-05 13:39:55 +11:00
Mark Andrews
60914be77b Merge branch 'v9_9' into v9_9_3_patch
Conflicts:
	lib/isccfg/parser.c
2013-03-07 14:14:07 +11:00
Mark Andrews
b1eea8fece add POST's 2013-01-17 23:25:56 +11:00
Mark Andrews
14e92401ad s/head/tail/ 2013-01-17 21:47:15 +11:00
Mark Andrews
72751ba1f8 Silence "Access to field 'refs' results in a dereference of a null pointer" by adding appropriate assertions. 2013-01-17 14:39:47 +11:00
Mark Andrews
4651c80f17 Silence "Use of memory after it is freed" by asserting the head and tail of list are not the element after it is unlinked from the list. 2013-01-17 14:23:39 +11:00
Mark Andrews
cd49786a11 silence compiler warning: Value stored to '?' is never used 2013-01-16 07:15:35 +11:00
Mark Andrews
3f8dd698bf silence compiler warning 2013-01-11 17:38:01 +11:00
Mark Andrews
054a9d20f9 silence compiler warning 2013-01-11 17:30:59 +11:00
4 changed files with 37 additions and 9 deletions

11
CHANGES
View File

@@ -1,3 +1,14 @@
--- 9.9.3-P2 released ---
3621. [security] Incorrect bounds checking on private type 'keydata'
can lead to a remotely triggerable REQUIRE failure
(CVE-2013-4854). [RT #34238]
--- 9.9.3-P1 released ---
3584. [security] Caching data from an incompletely signed zone could
trigger an assertion failure in resolver.c [RT #33690]
--- 9.9.3 released ---
3568. [cleanup] Add a product description line to the version file,

View File

@@ -194,7 +194,7 @@ fromwire_keydata(ARGS_FROMWIRE) {
UNUSED(options);
isc_buffer_activeregion(source, &sr);
if (sr.length < 4)
if (sr.length < 16)
return (ISC_R_UNEXPECTEDEND);
isc_buffer_forward(source, sr.length);

View File

@@ -4395,7 +4395,7 @@ fctx_log(void *arg, int level, const char *fmt, ...) {
static inline isc_result_t
findnoqname(fetchctx_t *fctx, dns_name_t *name, dns_rdatatype_t type,
dns_name_t **noqname)
dns_name_t **noqnamep)
{
dns_rdataset_t *nrdataset, *next, *sigrdataset;
dns_rdata_rrsig_t rrsig;
@@ -4408,10 +4408,12 @@ findnoqname(fetchctx_t *fctx, dns_name_t *name, dns_rdatatype_t type,
dns_fixedname_t fclosest;
dns_name_t *nearest;
dns_fixedname_t fnearest;
dns_rdatatype_t found = dns_rdatatype_none;
dns_name_t *noqname = NULL;
FCTXTRACE("findnoqname");
REQUIRE(noqname != NULL && *noqname == NULL);
REQUIRE(noqnamep != NULL && *noqnamep == NULL);
/*
* Find the SIG for this rdataset, if we have it.
@@ -4480,8 +4482,10 @@ findnoqname(fetchctx_t *fctx, dns_name_t *name, dns_rdatatype_t type,
&data, NULL, fctx_log,
fctx)))
{
if (!exists)
*noqname = nsec;
if (!exists) {
noqname = nsec;
found = dns_rdatatype_nsec;
}
}
if (nrdataset->type == dns_rdatatype_nsec3 &&
@@ -4494,13 +4498,26 @@ findnoqname(fetchctx_t *fctx, dns_name_t *name, dns_rdatatype_t type,
closest, nearest,
fctx_log, fctx)))
{
if (!exists && setnearest)
*noqname = nsec;
if (!exists && setnearest) {
noqname = nsec;
found = dns_rdatatype_nsec3;
}
}
}
}
if (result == ISC_R_NOMORE)
result = ISC_R_SUCCESS;
if (noqname != NULL) {
for (sigrdataset = ISC_LIST_HEAD(noqname->list);
sigrdataset != NULL;
sigrdataset = ISC_LIST_NEXT(sigrdataset, link)) {
if (sigrdataset->type == dns_rdatatype_rrsig &&
sigrdataset->covers == found)
break;
}
if (sigrdataset != NULL)
*noqnamep = noqname;
}
return (result);
}

View File

@@ -8,5 +8,5 @@ DESCRIPTION="(Extended Support Version)"
MAJORVER=9
MINORVER=9
PATCHVER=3
RELEASETYPE=
RELEASEVER=
RELEASETYPE=-P
RELEASEVER=2