Commit graph

6667 commits

Author SHA1 Message Date
Jon Siwek
011e2cdd32 Improve use of &deprecated on functions.
- Don't report warnings on function definition if declaration is marked
  deprecated.
- Allow &deprecated to apply to a standalone function definition.
2015-01-21 12:27:09 -06:00
Jon Siwek
87962a48dd Add a new attribute: &deprecated.
While scripts are parsed, a warning is raised for each usage of an
identifier marked as &deprecated.  This also works for BIFs.

Addresses BIT-924, BIT-757.
2015-01-21 09:40:50 -06:00
Vlad Grigorescu
b8376ca733 Add Kerberos support for PKINIT (x509 cert authentication) 2015-01-20 20:43:51 -05:00
Vlad Grigorescu
3c3920bfbc Kerberos - Add TCP support 2015-01-20 17:46:26 -05:00
Vlad Grigorescu
2e8eb574f5 A number of Kerberos fixes, following testing. Added some fields to the log, and parsed some more data. 2015-01-19 18:16:27 -05:00
Robin Sommer
f51dc5cbb8 Fixing (harmless) Coverity warning. 2015-01-17 08:07:18 -08:00
Jon Siwek
7e563b7275 broker integration: add remote events 2015-01-15 15:45:08 -06:00
Robin Sommer
41ff1c4cd0 Merge remote-tracking branch 'origin/topic/robin/dnp3-merge-v4'
* origin/topic/robin/dnp3-merge-v4:
  add test trace in which DNP3 packets are over UDP; update test scripts and baseline results
  A bit more DNP3 tweaking.
  remove redundnt codes; find a way to use the analyzer function, such as Weird; fix a small bug in ProcessData function in DNP3.cc; passed the test
  Renameing the DNP3 TCP analyzer
  quickly fix another bug; adding missing field of the declaration of dnp3_request_application_header and dnp3_response_application_header
  Removing the debug printf in DNP3.cc
  fixed the bug of deciding the size of object 1 varition 1 in DNP3
  Fix some things in DNP3 UDP analyzer.
  changed a bug, but still not working
  modify DNP3.cc and DNP3.h to add DNP3_UDP_Analyzer; binpac unchanged

BIT-1231 #merged
2015-01-14 13:25:42 -08:00
Jon Siwek
1e462481dc broker integration: add remote printing 2015-01-14 13:28:34 -06:00
Jon Siwek
0daa954ddb broker integration: add remote connection status events. 2015-01-14 10:40:11 -06:00
Jon Siwek
1e8d6cd917 broker integration: add API for connecting to peers 2015-01-13 17:14:21 -06:00
Vlad Grigorescu
2c8a3fce49 Merge remote-tracking branch 'origin/master' into topic/vladg/kerberos
Conflicts:
	testing/btest/Baseline/core.print-bpf-filters/output2
	testing/btest/Baseline/scripts.policy.misc.dump-events/smtp-events.log
2015-01-13 14:46:18 -05:00
Vlad Grigorescu
05ecac2497 Refactored the SSH analyzer. Added supported for algorithm detection and more key exchange message types. 2015-01-13 12:02:31 -05:00
Jon Siwek
39d51ca99c Improve documentation for connection_established event. 2015-01-12 09:38:50 -06:00
Vlad Grigorescu
245bd07af7 Add host key support for SSH1. 2015-01-06 21:23:18 -06:00
Vlad Grigorescu
5e206ed108 Add support for SSH1 2015-01-06 20:27:20 -06:00
Vlad Grigorescu
727eada9ac Move SSH analyzer to new plugin architecture. 2014-12-27 17:46:42 -06:00
Vlad Grigorescu
fa98aee0a7 Merge remote-tracking branch 'origin/master' into topic/vladg/ssh
Conflicts:
	src/analyzer/protocol/CMakeLists.txt
	src/analyzer/protocol/ssh/Plugin.cc
	src/analyzer/protocol/ssh/SSH.h
2014-12-27 17:22:26 -06:00
Vlad Grigorescu
3ed6dd5585 A bit of code cleanup. 2014-12-27 17:19:43 -06:00
Jon Siwek
6941538f81 Fix reference counting bug in refactored file reassembly code. 2014-12-16 20:58:27 -06:00
Jon Siwek
f6257618e5 Change file extraction to explicitly NUL-fill gaps
Instead of expecting pwrite to do it.
2014-12-16 20:56:15 -06:00
Jon Siwek
cbbe7b52dc Review/fix/change file reassembly functionality.
- Re-arrange how some fa_file fields (e.g. source, connection info, mime
  type) get updated/set for consistency.

- Add more robust mechanisms for flushing the reassembly buffer.
  The goal being to report all gaps and deliveries to file analyzers
  regardless of the state of the reassembly buffer at the time it has to
  be flushed.
2014-12-16 14:05:15 -06:00
Jon Siwek
edaf7edc11 Merge remote-tracking branch 'origin/topic/seth/files-reassembly-and-mime-updates' into topic/jsiwek/file-reassembly-merge
Conflicts:
	testing/btest/Baseline/scripts.policy.misc.dump-events/all-events.log
2014-12-15 10:33:09 -06:00
Jon Siwek
d31b556b85 Change IP_Hdr copy ctor/assign to explicit method
Addresses BIT-1298
2014-12-12 14:14:24 -06:00
Jon Siwek
c211a2c91a Fix PIA packet replay to deliver copy of IP header
This prevented one from writing a packet-wise analyzer that needs access
to IP headers and can be attached to a connection via signature match.

None of the analyzers currently shipping are affected.  And maybe it's
unlikely there will be many that ever would be, but it's awkward for the
API to omit IP headers in this special case (i.e. packets buffer for use
with DPD signature matching).

Addresses BIT-1298
2014-12-10 15:12:38 -06:00
Robin Sommer
a4e45dca80 Merge remote-tracking branch 'origin/topic/jsiwek/bit-1295'
* origin/topic/jsiwek/bit-1295:
  Fix compound assignment to require proper L-value.

BIT-1295 #merged
2014-12-03 14:22:36 -08:00
Robin Sommer
bb7d94d9c5 Merge remote-tracking branch 'origin/topic/jsiwek/bit-1296'
* origin/topic/jsiwek/bit-1296:
  Make using local IDs in @if directives an error.

BIT-1296 #merged
2014-12-03 14:14:23 -08:00
Robin Sommer
19d9a8bfa2 Merge remote-tracking branch 'origin/fastpath'
* origin/fastpath:
  Fix some "make doc" warnings and update some doc tests
2014-12-03 14:10:49 -08:00
Jon Siwek
cdbe459f20 Make using local IDs in @if directives an error.
Addresses BIT-1296.
2014-12-02 12:30:46 -06:00
Jon Siwek
3f590859bb Fix compound assignment to require proper L-value.
Allows for catching more invalid assignments at parse-time instead of
aborting at runtime after realizing an assignment won't work.

Addresses BIT-1295.
2014-12-02 10:12:48 -06:00
Daniel Thayer
cc7286b628 Fix some "make doc" warnings and update some doc tests 2014-12-01 22:43:17 -06:00
Jon Siwek
20ddf1e62f Merge branch 'master' of https://github.com/hillu/bro
* 'master' of https://github.com/hillu/bro:
  BIFScanner: Make filename->symbol transformation more robust
2014-12-01 12:08:07 -06:00
Hilko Bengen
fc71572aad BIFScanner: Make filename->symbol transformation more robust
When trying to build bro from a path that contained a plus sign, an
invalid symbol name for the #ifdef guard was generated.
2014-11-26 20:55:22 +01:00
Robin Sommer
071834b948 Merge remote-tracking branch 'origin/topic/johanna/ssl-fail-earlier'
BIT-1293 #merged

* origin/topic/johanna/ssl-fail-earlier:
  and just to be safe - also require the &if check in binpac
  make the SSL analyzer skip further processing once encountering situations which are very probably non-recoverable.
2014-11-25 17:35:49 -08:00
Johanna Amann
d87476b403 and just to be safe - also require the &if check in binpac 2014-11-25 15:01:12 -08:00
Johanna Amann
529668670a make the SSL analyzer skip further processing once encountering
situations which are very probably non-recoverable.

Current behavior could lead to us jumping in in the middle of an old
443 stream and interpreting some data as ssl before failing again.
2014-11-25 14:57:10 -08:00
Robin Sommer
977446e7ee Merge remote-tracking branch 'origin/fastpath'
* origin/fastpath:
  make sslv2 protocol tests more strict - in its current state they triggered on http traffic over port 443 sometimes.
  Fix x509 analyzer to correctly return ecdsa as the key_type for ecdsa certs.
2014-11-25 14:28:10 -08:00
Johanna Amann
1e2ba6ebfb make sslv2 protocol tests more strict - in its current state they triggered
on http traffic over port 443 sometimes.

Sorry, no test because that specific traffic is a tad hard to get.

Found by Michał Purzyński.
2014-11-25 13:11:06 -08:00
Johanna Amann
cd21b7f130 Fix x509 analyzer to correctly return ecdsa as the key_type for ecdsa certs.
Returned dsa so far.

Bug found by Michał Purzyński
2014-11-25 11:18:07 -08:00
Gilbert Clark
cda7c93704 More small fixes 2014-11-24 16:35:26 -05:00
Gilbert Clark
616ed22572 Small fixes 2014-11-24 16:30:12 -05:00
Gilbert Clark
7eadcad674 Merge branch 'master' into topic/gilbert/plugin-api-tweak
Conflicts:
	testing/btest/Baseline/plugins.api-version-mismatch/output
	testing/btest/Baseline/plugins.hooks/output
	testing/btest/plugins/api-version-mismatch.sh
2014-11-24 16:21:23 -05:00
Gilbert Clark
6055b56f5c Incremental 2014-11-24 14:28:17 -05:00
Jon Siwek
5436faed69 Disable verbose bison output.
These logs aren't generally useful to build everytime, just when working
on and debugging one of the various grammars and at least I haven't
needed to look at them in years.  Also, Ninja builds don't seem to work
because of them (can probably improve the related CMake macros so the
verbose logs do play nice with Ninja, but doesn't seem worth effort
right now, see previous comment).
2014-11-19 10:57:58 -06:00
Robin Sommer
bf35ed699c Merge remote-tracking branch 'origin/topic/jsiwek/bit-1288'
* origin/topic/jsiwek/bit-1288:
  BIT-1288: Improve coercion of &default expressions.

BIT-1288 #merged
2014-11-18 11:09:33 -08:00
Jon Siwek
f214158cc5 BIT-1288: Improve coercion of &default expressions. 2014-11-18 12:40:16 -06:00
Robin Sommer
ee14b96a15 Merge remote-tracking branch 'origin/topic/struck/BIT-1287'
* origin/topic/struck/BIT-1287:
  [ADD] builtin function enum_to_int()

BIT-1287 #merged
2014-11-11 13:20:40 -08:00
Robin Sommer
557218895e Removing method from SSL analyzer that's no longer used. 2014-11-11 11:51:04 -08:00
Robin Sommer
e8e81043a1 Merge remote-tracking branch 'origin/topic/vladg/mysql'
* origin/topic/vladg/mysql:
  Update baselines.
  Fix a logic bug with handling quits after the cleanup.
  Integrate MySQL with the software framework
  A bit of MySQL cleanup - removed unused events, consolidated similar events, fixed up main.bro a bit
  Move MySQL analyzer to the new plugin architecture.
  Add a btest for the Wireshark sample MySQL PCAP
  Add support for more commands, and support quit
  Redo the response handling..
  Whitespace/readability fixes.
  Add memleak and auth btests.
  Update baselines.
  Get MySQL to compile and add basic v9 support.
  MySQL analyzer
2014-11-11 11:49:26 -08:00
Christian Struck
b36d5fc81b [ADD] builtin function enum_to_int()
[ADD] added tests for the new enum_to_int function
2014-11-10 18:24:27 -08:00