Bug with malformed host in filter
Carter Bullard
carter at qosient.com
Wed Feb 27 11:25:17 EST 2013
Hey Dave,
Yes seems that there is a bug, as I can get it to do the right thing with a -D4,
but it fails with a -D3 option. Smells like a buffer overrun in creating one of the tests.
osiris:common carter$ ../bin/ra -D3 -b - host 10
Segmentation fault: 11
osiris:common carter$ ../bin/ra -D4 -b - host 10
ra[32415.8001aa7bff7f0000]: 2013/02/27.11:22:30.219159 ArgusFilterCompile () calling argus_lex_init(host 10)
ra[32415.8001aa7bff7f0000]: 2013/02/27.11:22:30.219217 ArgusFilterCompile () calling argus_parse()
ra[32415.8001aa7bff7f0000]: 2013/02/27.11:22:30.219295 Argusgen_linktype (0x806) returns 0x90808e70
ra[32415.8001aa7bff7f0000]: 2013/02/27.11:22:30.219325 Argusgen_linktype (0x800) returns 0x90808cb8
ra[32415.8001aa7bff7f0000]: 2013/02/27.11:22:30.219348 Argusgen_linktype (0x86dd) returns 0x90808b00
ra[32415.8001aa7bff7f0000]: 2013/02/27.11:22:30.219370 Argusgen_host (0x0, 0x5208b668, 0, 0x0, 0) returns 0x90808e70
ra[32415.8001aa7bff7f0000]: 2013/02/27.11:22:30.219394 Argusgen_ncode ((null), 0xa, 0x5208b6b8, 0x1) returns 0x90808e70
ra[32415.8001aa7bff7f0000]: 2013/02/27.11:22:30.219425 Argusfinish_parse (0x90808e70)
ra[32415.8001aa7bff7f0000]: 2013/02/27.11:22:30.219447 ArgusFilterCompile () argus_parse() done
ra[32415.8001aa7bff7f0000]: 2013/02/27.11:22:30.219534 ArgusFilterCompile () done 0
(000) ldb dsr[1][2]
(001) and #31
(002) jeq #0x2 jt 5 jf 3
(003) jeq #0x1 jt 5 jf 4
(004) jeq #0x4 jt 5 jf 6
(005) ret #150
(006) ret #0
I'll find this today.
Carter
On Feb 26, 2013, at 8:53 PM, "Dave Edelman" <dedelman at iname.com> wrote:
> I can verify that under FC14 ra 3.0.7.3 does not segfault but it does
> complain about a filter syntax error.
>
> # ra -S localhost:561 - host 10
> ra[458]: Wed 2013-02-27 01:14:42.277 host 10 filter syntax error
>
> This is strange because according to the inet(3) man page, 10 is a perfectly
> acceptable IPv4 address.
> Just to make things even stranger, I do have a valid DNS resolution for 10
> which is no surprise given Cablevision's level of technical acumen. (At
> least they aren't claiming to be authoritative.)
>
> # dig 10
>
> ; <<>> DiG 9.7.4-P1-RedHat-9.7.4-2.P1.fc14 <<>> 10
> ;; global options: +cmd
> ;; Got answer:
> ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 54672
> ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
>
> ;; QUESTION SECTION:
> ;10. IN A
>
> ;; ANSWER SECTION:
> 10. 0 IN A 67.63.55.3
>
> ;; Query time: 54 msec
> ;; SERVER: 167.206.245.130#53(167.206.245.130)
> ;; WHEN: Wed Feb 27 01:15:15 2013
> ;; MSG SIZE rcvd: 36
>
>
> --Dave
>
>
>> -----Original Message-----
>> From: argus-info-bounces+dedelman=iname.com at lists.andrew.cmu.edu
>> [mailto:argus-info-bounces+dedelman=iname.com at lists.andrew.cmu.edu]
>> On Behalf Of elof2 at sentor.se
>> Sent: Monday, February 25, 2013 11:51 AM
>> To: Carter Bullard
>> Cc: pauls at utdallas.edu; Argus Development
>> Subject: Re: [ARGUS] Bug with malformed host in filter
>>
>>
>> Sounds good. You're swift in response and action as always. :-)
>>
>> Yes, I manually compile and use the latest version of argus and other apps
>> when they have an important bugfix or new feature, but usually I try to
> stick
>> with the normal FreeBSD ports, since this makes managing hundreds of
>> boxes much easier.
>>
>> Perhaps Paul S will deploy an update of the FreeBSD port soon, getting
> argus-
>> clients closer to 3.0.7.5.
>>
>>
>>
>> On your FreeBSD VM, run: portsnap fetch update
>>
>> Remove any currently installed argus/ra binaries.
>>
>> cd /usr/ports/net-mgmt/argus3-clients
>> make
>> make install
>>
>> That should give you Ra Version 3.0.6.2 to play around with.
>>
>> /Elof
>>
>>
>> On Mon, 25 Feb 2013, Carter Bullard wrote:
>>
>>> No problems. I'll look around to see what is up. I've got a
>>> FreeBSD VM I can test on, will try to fire that up today.
>>> The fault concerns me, so I'll try to recreate that first.
>>>
>>> Do try to work with the latest at some point to see if we've
>>> fixed the problem.
>>>
>>> Carter
>>>
>>> On Feb 25, 2013, at 10:47 AM, elof2 at sentor.se wrote:
>>>
>>>>
>>>> I'm using the official Argus port on a FreeBSD 9.1 amd64 machine.
>>>>
>>>> Hehe, no, I have no host called "10". :)
>>>> ...and speaking of resolving, I have no /etc/resolv.conf at all.
>>>>
>>>> Unfortunetly I currently have no time to compile and test
> argus-clients-
>> 3.0.7.5. :-/
>>>>
>>>> /Elof
>>>>
>>>> On Mon, 25 Feb 2013, Carter Bullard wrote:
>>>>
>>>>> Hmmmm,
>>>>> That is interesting. I'm not getting the same types of errors on Mac
> OS X.
>> Are you
>>>>> using Centos by any chance (just a guess). The filter should fail all
> the
>> time.
>>>>> We figure out if " 10 ", which the filter things is either a digit or
> a string, is
>> a good
>>>>> address by calling gethostbyname(). Any chance you have a host named
>> " 10 "
>>>>> outthere?
>>>>>
>>>>> Does argus-clients-3.0.7.5 do a better job ?
>>>>> Carter
>>>>>
>>>>>
>>>>> On Feb 25, 2013, at 9:02 AM, elof2 at sentor.se wrote:
>>>>>
>>>>>>
>>>>>> Hi Carter!
>>>>>>
>>>>>> I stumbled on to a bug when accidentally executing a ra command with
>> an incomplete IP address.
>>>>>> Strangely enough, the error-detection make different descisions
>> depending of its place in the filter string.
>>>>>>
>>>>>> Example:
>>>>>>
>>>>>> #ra -Zb -nr argus.log - host 10.10.10.10 and host 10
>>>>>>
>>>>>> pid 1907 (ra), uid 0: exited on signal 11 (core dumped)
>>>>>> host 10.10.10.10 and host 10 filter syntax error
>>>>>>
>>>>>>
>>>>>>
>>>>>> The filter "tcp and host 10" and other elements before "host 10" also
>> fail.
>>>>>>
>>>>>> However, a filter of just "host 10" by itself does not fail, nor does
> "host
>> 10 and host 10.10.10.10"
>>>>>>
>>>>>>
>>>>>> (ra version 3.0.6.2)
>>>>>>
>>>>>> /Elof
>>>>>>
>>>>>
>>>>>
>>>>
>>>
>>>
>
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 2589 bytes
Desc: not available
URL: <https://pairlist1.pair.net/pipermail/argus/attachments/20130227/586785ca/attachment.bin>
More information about the argus
mailing list