Commit graph

13262 commits

Author SHA1 Message Date
Bernhard Amann
1a1c798738 add SQLite reader.
Probably memleaky as hell, does not support tables/vectors yet, but it
managed to successfully read very simple tables.
2012-10-09 14:30:39 -07:00
Bernhard Amann
a14f85d072 Merge branch 'fastpath' into topic/bernhard/sqlite 2012-10-09 14:05:16 -07:00
Bernhard Amann
2efb976aaf ...and forgotten debug-output, sorry (was already merged in some
other internal repositories before I noticed)
2012-10-09 14:03:55 -07:00
Bernhard Amann
8e960cbee4 Merge branch 'fastpath' into topic/bernhard/sqlite 2012-10-09 14:01:48 -07:00
Bernhard Amann
82eaddb160 and another bug in the input framework: config table does not work (is
not transmitted to the readers) because the initialization was done
the wrong way round.

Just re-ordered some lines, no other changes.
2012-10-09 14:00:32 -07:00
Sheharbano Khattak
83910eeb08 Added function to intercept threshold checking 2012-10-09 05:33:37 +05:00
Jon Siwek
c69431beac Teach --disable-dataseries/--disable-elasticsearch to ./configure.
Addresses #877.
2012-10-08 16:45:04 -05:00
Jon Siwek
6caeb7d7cf Add --with-curl option to ./configure, addresses #877. 2012-10-08 16:27:15 -05:00
Jon Siwek
dedfdf7e11 Add memory leak unit test for GridFTP. 2012-10-08 13:15:47 -05:00
Bernhard Amann
87ef8fe649 Merge remote-tracking branch 'origin/master' into topic/bernhard/sqlite 2012-10-08 10:31:22 -07:00
Robin Sommer
296686d5ca Merge remote-tracking branch 'origin/fastpath'
* origin/fastpath:
  Fix a problem with non-manager cluster nodes applying Notice::policy.
2012-10-08 10:10:53 -07:00
Jon Siwek
e34f6d9e3b Enable GridFTP detection by default. Track/log SSL client certs.
In the *service* field of connection records, GridFTP control channels
are labeled as "gridftp" and data channels as "gridftp-data".

Added *client_subject* and *client_issuer_subject* as &log'd fields to
SSL::Info record.  Also added *client_cert* and *client_cert_chain*
fields to track client cert chain.
2012-10-08 11:38:29 -05:00
Seth Hall
db62369508 Fix for DNS log problem when a DNS response is seen with 0 RRs. 2012-10-05 13:48:49 -04:00
Jon Siwek
d0b249a731 Merge branch 'master' into topic/jsiwek/gridftp 2012-10-05 11:05:01 -05:00
Jon Siwek
49b8c7e390 Add analyzer for GSI mechanism of GSSAPI FTP AUTH method.
GSI authentication involves an encoded TLS/SSL handshake over the FTP
control session.  Decoding the exchanged tokens and passing them to an
SSL analyzer instance allows use of all the familiar script-layer events
in inspecting the handshake (e.g. client/server certificats are
available).  For FTP sessions that attempt GSI authentication, the
service field of the connection record will have both "ftp" and "ssl".

One additional change is an FTP server's acceptance of an AUTH request
no longer causes analysis of the connection to cease (because further
analysis likely wasn't possible).  This decision can be made more
dynamically at the script-layer (plus there's now the fact that further
analysis can be done at least on the GSSAPI AUTH method).
2012-10-05 10:43:23 -05:00
Jon Siwek
53d9832d5a Fix a problem with non-manager cluster nodes applying Notice::policy.
This could, for example, result in duplicate emails being sent (one from
manager and one from worker) if Notice::emailed_types is redef'd in
local.bro (or any script that gets loaded on all cluster nodes).

The problem was that Notice::policy is used to populate the internal
Notice::ordered_policy vector in a priority 10 bro_init handler (in
scripts/base/frameworks/notice/main.bro) and then that is what is used
when applying policy to notices.  In order for
scripts/base/frameworks/notice/cluster.bro to prevent Notice::policy
from being used on non-manager nodes, it needs to clear it in a
bro_init hander of higher priority than 10.
2012-10-04 16:45:56 -05:00
Robin Sommer
14de9e675e Merge remote-tracking branch 'origin/fastpath'
* origin/fastpath:
  Redo the "how to upgrade" FAQ.
  Add general FAQ entry about upgrading Bro.
2012-10-03 16:05:01 -07:00
Robin Sommer
1290ed6b95 Merge remote-tracking branch 'origin/topic/jsiwek/delay-teredo-confirm'
* origin/topic/jsiwek/delay-teredo-confirm:
  Add new Tunnel::delay_teredo_confirmation option, default to true.

Closes #890.
2012-10-03 16:01:42 -07:00
Jon Siwek
06d6277f0a Redo the "how to upgrade" FAQ. 2012-10-03 16:14:52 -05:00
Seth Hall
73f2fd8e3a Updating some intel framework test baselines. 2012-10-03 16:25:18 -04:00
Seth Hall
bf9651b323 Reworked cluster intelligence data distribution mechanism and fixed tests.
- Intel data distribution on clusters is now pushed in whole
  by the manager when a worker connects.  Additions after that point
  are managed by the normal single-item distribution mechanism already
  built into the intelligence framework.

- The manager maintains the complete "minimal" data store that the
  workers use to do their matching so that full "minimal" data
  distribution is very easy.

- Tests are cleaned up and work.
2012-10-03 16:25:02 -04:00
Jon Siwek
2ac6fab5fc Merge branch 'master' into topic/jsiwek/gridftp 2012-10-02 16:39:34 -05:00
Jon Siwek
e93748d28b Add general FAQ entry about upgrading Bro. 2012-10-02 15:36:12 -05:00
Jon Siwek
5f3af9e9eb Add new Tunnel::delay_teredo_confirmation option, default to true.
This option indicates that the Teredo analyzer should wait until
it sees both sides of a connection using a valid Teredo encapsulation
before issuing a protocol_confirmation.  Previous behavior confirmed
on the first instance of a valid encapsulation, which could result
in more false positives (and e.g. bogus entries in known-services.log).

Addresses #890.
2012-10-02 15:13:38 -05:00
Robin Sommer
b4b7a384dc Updating submodule(s).
[nomail]

Closes #889
2012-10-02 12:10:49 -07:00
Robin Sommer
6ae8ac310a Merge remote-tracking branch 'origin/topic/matthias/libcurl-fix'
* origin/topic/matthias/libcurl-fix:
  Use second granularity for ElasticSearch timeouts.
  Fix compile issues with older versions of libcurl.
2012-10-02 12:07:26 -07:00
Robin Sommer
4d7eabc2a9 Merge remote-tracking branch 'origin/fastpath'
* origin/fastpath:
  Small but important fix for the input framework. BroStrings were constructed without a final \0 - which means that strings read by the input framework are unusable by basically all internal functions (like to_count).
2012-10-02 12:02:59 -07:00
Seth Hall
6750b0f7b9 Merge remote-tracking branch 'origin/master' into topic/seth/metrics-updates
Conflicts:
	testing/btest/Baseline/scripts.base.frameworks.metrics.basic-cluster/manager-1.metrics.log
	testing/btest/Baseline/scripts.base.frameworks.metrics.basic/metrics.log
	testing/btest/Baseline/scripts.base.frameworks.metrics.cluster-intermediate-update/manager-1.notice.log
	testing/btest/Baseline/scripts.base.frameworks.metrics.notice/notice.log
	testing/btest/scripts/base/frameworks/metrics/basic-cluster.bro
2012-10-01 16:23:06 -04:00
Bernhard Amann
4cbf4e3caf Small but important fix for the input framework. BroStrings were constructed
without a final \0 - which means that strings read by the input framework are
unusable by basically all internal functions (like to_count).

the basic test now also checks this.

Thanks at Sheharbano for noticing this.
2012-10-01 13:04:40 -07:00
Jon Siwek
68aead024a Add an example of a GridFTP data channel detection script.
It relies on the heuristics of GridFTP data channels commonly default to
SSL mutual authentication with a NULL bulk cipher and that they usually
transfer large datasets (default threshold of script is 1 GB).  The
script also defaults to skip_further_processing() after detection to try
to save cycles analyzing the large, benign connection.

Also added a script in base/protocols/conn/polling that generalizes the
process of polling a connection for interesting features.  The GridFTP
data channel detection script depends on it to monitor bytes
transferred.
2012-10-01 12:32:24 -05:00
Robin Sommer
474ab86b9c Updating submodule(s).
[nomail]
2012-09-29 14:44:58 -07:00
Robin Sommer
c412678e13 Merge remote-tracking branch 'origin/topic/dnthayer/remove-unused-code'
* origin/topic/dnthayer/remove-unused-code:
  Remove deprecated attribute &disable_print_hook
  Remove unused argument of helper function
  Remove deprecated built-in functions
  Remove unused reserved keyword "this"

Closes #885.
2012-09-29 14:18:59 -07:00
Robin Sommer
906a34e3b3 Merge remote-tracking branch 'origin/fastpath'
* origin/fastpath:
  Reliability adjustments to istate tests with network communication.
2012-09-29 14:09:27 -07:00
Seth Hall
38468f9daa Lots more intelligence checking in SMTP traffic. 2012-09-28 22:43:36 -04:00
Seth Hall
375769f42c Added intelligence check for "Received" path checking and a bit of reshuffling. 2012-09-28 22:07:40 -04:00
Seth Hall
bacc99f645 Added sources to the intel log. 2012-09-28 21:17:14 -04:00
Seth Hall
03532ff051 Fixing a problem with intel distribution on clusters. 2012-09-28 16:38:34 -04:00
Seth Hall
38f0b7927c Updated intel framework test to include matching. 2012-09-28 14:52:05 -04:00
Seth Hall
0bcedcd204 Restructuring the scripts that feed data into the intel framework slightly. 2012-09-28 13:25:37 -04:00
Seth Hall
2366b21787 One test for cluster transparency of the intel framework. 2012-09-28 13:25:06 -04:00
Seth Hall
bd6779b83c Fixed a cluster support bug. 2012-09-28 09:49:00 -04:00
Seth Hall
51249d0984 Merge remote-tracking branch 'origin/master' into topic/seth/intel-framework 2012-09-28 09:27:52 -04:00
Seth Hall
a803cae92e Intelligence framework checkpoint
- Basic API seems to works, but tests aren't updated yet.

 - Several scripts are available in policy/frameworks/intel that
   call the "seen" function to provide data into the intel
   framework to be tested.

 - Intel::policy is not done yet and needs to be discussed to
   figure out what it needs to have.

 - Running the intel framework and having it do something finally
   is really cool!
2012-09-28 07:07:02 -04:00
Matthias Vallentin
1ce76da90f Use second granularity for ElasticSearch timeouts.
Since the millisecond resolution cannot be harnessed universally and is not
supported by older version of libcurl, we will allow only specifications at the
granularity of seconds.

This commit also fixes a typing issue that causes that prevented the
ElasticSearch timeout to work in the first place: curl_easy_setopt requires a
long but was given a uint64_t.
2012-09-27 16:34:16 -07:00
Matthias Vallentin
b73809d54f Fix compile issues with older versions of libcurl.
Older versions of libcurl do not offer *_MS timeout constants, which causes the
build to fail. For sub-second timeout specification, we now fall back to
hard-coded timeouts in older libcurl version.
2012-09-27 12:18:25 -07:00
Seth Hall
71c5b49bdc Major updates to fix the Intel framework API. 2012-09-27 13:39:48 -04:00
Daniel Thayer
254715eaaa Remove deprecated attribute &disable_print_hook 2012-09-26 16:47:51 -05:00
Daniel Thayer
72f16f2642 Remove unused argument of helper function
Removed an unused argument of the "do_split" helper function.  The unused
argument was previously used by a now-removed BIF.
2012-09-26 15:20:54 -05:00
Daniel Thayer
f00a7c3ee4 Remove deprecated built-in functions 2012-09-26 14:20:30 -05:00
Daniel Thayer
5593f339bd Remove unused reserved keyword "this"
Removed unused reserved keyword "this" (a script using it would cause Bro to
segfault).
2012-09-26 13:09:54 -05:00