On Wed, 26 May 2010 07:48:14 -0700 (PDT), Dave S <
dst...@comcast.net>
wrote:
> I've been working with OSSEC and this group for several months.
> It seems to me one of the weak areas in ossec's design is the agent/
> server protocol. We've all seen several threads presenting various
> problems regarding "agents disconnecting" etc. One recent such
> problem was fixed by disabling the replay counter because the agent
> had fallen out of sync with the server. There have been other issues
> that may be related to dropped messages due to the use of UDP. We
> should not have to disable security features to make the system more
> stable.
Hello Dave,
While I am sure Daniel would welcome your help, I'm not so sure the common
issues that users face are necessarily protocol-related. Consider:
1. I haven't seen any discussion of dropped messages due to the stateless
nature of UDP. While we all know this is a possibility, and maybe even a
probability on a busy network, there has been no discussion of empirical
evidence showing this is a issue in most environments. Furthermore, the use
of UDP on a busy network may be a better option than UDP, even if some
messages get dropped, simply because it could keep up with an active attack
faster. The use of TCP could actually cause significant delay in delivery
from an attacked system to the trusted host, and that translates to a
higher risk of the not knowing what happened.
2. The replay issue is usually caused by uninstalling/reinstalling agents,
or maybe cloning systems. I think it can be improved, but the rids
generally do not get out of sync on their own. It's an important feature,
since UDP is being used, to prevent replay attacks. I think users just need
a better understanding of how this works. Perhaps a simple rule to alert
someone of the issue with a solution pointing to a Wiki page...
3. I think the TCP option should be explored, primarily because if we use
TCP there are more options for a robust key-management system. Key
management, especially in large enterprises, is a big issue for ossec right
now. Maybe TCP and UDP could both be used: TCP for status, key management,
etc, and UDP for message delivery. Or maybe both TCP and UDP can be an
option for message delivery so the user can choose the appropriate one
based on their needs (speed vs. message delivery robustness).
At any rate, I look forward to your thoughts and contributions.
--
[I] Immutable Security
Information Security, Privacy and Personal Liberty
http://www.immutablesecurity.com