Yeah, I plan to have it pushed out next week to the Fedora Extras repo.
Thanks,
Jeff
On May 5, 2006, at 8:20 AM, Martin Wyser wrote:
Hi Mark
Yes, that worked, thanks a million.
I have reported to bugzilla with a patch limited to that file,
hoping they rebuild the package for FC5, meanwhile I have rebuilt
the package myself.
Thanks again, and kind regards, Martin
Mark Burgess wrote:
Martin Wyser wrote:
Hi
I have installed the cfengine 2.1.20 package from Fedora Core 5
Extras, and when I run it with my previous configuration, cfagent
fails with the message:
*** stack smashing detected ***: cfagent terminated
Aborted
Apparently a problem found by the "Buffer Overflow detection ..."
mentioned at http://fedora.redhat.com/docs/release-notes/fc5/
#id2934140
I installed debuginfo and gdb, and run this with gdb cfagent, run
--no-splay -v, and after the abort, see the stack trace below.
Note the "out of bounds" at #5, this was actually the first arg
to HandleIPRange in #6.
Looking closer, I see that arg 2 to FuzzySetMatch is that of an
IPv6 interface being matched against a definition in my
cfagent.conf:
ikr = ( IPRange(129.132.166.67-98) ) #HostRange(ikr,1-32)
This causes trouble at lines 833 and 845 of item.c, which sscanf
the entire arg 2 of FuzzySetMatch ("fe80::240:63ff:fee2:1ecc")
into a buffer of length 8, killing the canary on the stack.
I see similar behaviour at line 840 of item.c by crafting a
special arg in the configuration file (IPRange(123456789....),
more than 7 chars before the dot) - this writes beyond buffer1.
I don't have an easy patch at hand. First, I think that the
address family of both args should be checked (false if ipv4 and
ipv6 are mixed). Second I was thinking of using stuff like "if
(2==sscanf(sp1, "%d-%d", &min, &max)) ... else if (1==sscanf(sp1,
"%d", &min)) { max=min; } ...", but it is not satisfactory either.
I also attach a small test prog isolating the problem.
Kind regards, Martin
Martin,
many thanks for this information. I have increased the buffer
sizes in the code and the patches are available on the svn/
snapshot now.
_______________________________________________
Bug-cfengine mailing list
[email protected]
http://cfengine.org/mailman/listinfo/bug-cfengine
_______________________________________________
Bug-cfengine mailing list
[email protected]
http://cfengine.org/mailman/listinfo/bug-cfengine