Commit graph

7390 commits

Author SHA1 Message Date
Robin Sommer
aab3819c70 Merge remote-tracking branch 'origin/master' into topic/seth/dce_rpc_fixes 2016-10-25 16:31:18 -07:00
Johanna Amann
3284e92677 NEWS file tweaks: input error events & OpenFlow.
These were pointed out by Daniel.
2016-10-25 10:21:57 -07:00
Johanna Amann
6aea681832 Merge branch 'patch-2' of https://github.com/balintm/bro
* 'patch-2' of https://github.com/balintm/bro:
  Update smb1-com-open-andx.pac
2016-10-25 09:46:37 -07:00
Johanna Amann
0f29405d6e Merge remote-tracking branch 'origin/topic/robin/sig-fixes'
* origin/topic/robin/sig-fixes:
  Fix a couple of problems with signature matching.

BIT-1737 #merged
2016-10-25 09:42:29 -07:00
Johanna Amann
860cfa7002 Update submodule
[nomail]
2016-10-25 09:32:11 -07:00
Johanna Amann
784fc7f042 Merge remote-tracking branch 'origin/fastpath'
* origin/fastpath:
  Python 3 compatibility fix for coverage-calc script
2016-10-25 09:28:44 -07:00
Seth Hall
8276c250bd Updates for SMB auth handling from Martin van Hensbergen.
- Raw NTLM (not in GSSAPI) over SMB is now handled correctly.
 - The encrypted NTLM session key is now passed into scriptland
   through the ntlm_authenticate event.
2016-10-25 02:52:09 -04:00
Johanna Amann
89f9315fb0 XMPP: Fix detection of StartTLS when using namespaces
the starttls command will sometimes be issued with a namespace, e.g. as
<ns2:starttls xmlns:ns2='urn:ietf:params:xml:ns:xmpp-tls'/>. The XMPP
analyzer did not handle this scenario correctly.

This is very similar to the following ejabberd bug:
https://support.process-one.net/browse/EJAB-1123
2016-10-24 11:54:47 -07:00
Robin Sommer
c57f83d8bf Merge remote-tracking branch 'origin/topic/johanna/gcc-6.2.1'
BIT-1732 #merged

* origin/topic/johanna/gcc-6.2.1:
  Fix alignment issue of ones_complement_checksum
2016-10-24 11:12:05 -07:00
Seth Hall
36ae5e6662 Make DCE_RPC skip input in strange fragment circumstances.
If there are too many concurrent fragments or too much
data fragmented, skip further input on DCE_RPC.
2016-10-24 13:50:13 -04:00
Seth Hall
c88719472b Stop calling Remove() on DCE_RPC analyzer.
This was crashing Bro when it was called on DCE_RPC traffic
carried over SMB.
2016-10-24 13:44:44 -04:00
Seth Hall
e4b620673b More DCE_RPC improvements.
- The logic for fragment handling has been rewritten and should be correct now.
 - There are now tunables for fragment handling overflow situations.
   - DCE_RPC::max_cmd_reassembly and DCE_RPC::max_frag_data
   - They result in weirds and analyzer removal.
 - Memory leak fixed by unique_ptr auto cleanup.
 - DCE_RPC is now intolerate of content gaps and will stop
   analyzing traffic if content gaps happen (like most other analyzers currently).
2016-10-24 03:22:20 -04:00
Daniel Thayer
8ae064006b Merge remote-tracking branch 'origin/master' into fastpath 2016-10-21 09:35:04 -05:00
Daniel Thayer
99cd34f57d Python 3 compatibility fix for coverage-calc script 2016-10-21 09:33:04 -05:00
Johanna Amann
3d1f35f85b Update submodule
[nomail]
2016-10-20 11:53:34 -04:00
Johanna Amann
96d14691df Merge remote-tracking branch 'origin/topic/dnthayer/ticket1731'
* origin/topic/dnthayer/ticket1731:
  Fix istate.pybroccoli test on systems using Python 3

BIT-1731 #merged
2016-10-20 11:41:19 -04:00
Robin Sommer
5cf2320fbc Fix a couple of problems with signature matching.
- IPv4 CIDR specifications didn't work with dst-ip/src-ip.

    - The "payload-size" condition was unreliable with UDP traffic.
2016-10-19 14:23:43 -07:00
Johanna Amann
8ce746cc25 Merge remote-tracking branch 'origin/topic/vladg/bit-1641'
* origin/topic/vladg/bit-1641:
  Logic fix for ssh/main.bro when the auth status is indeterminate, and fix a test. Addresses BIT-1641.
  Clean up the logic for ssh_auth_failed. Addresses BIT-1641
  Update baselines for adding a field to ssh.log as part of BIT-1641
  Script-land changes for BIT-1641.
  Change SSH.cc to use ssh_auth_attempted instead of ssh_auth_failed. Addresses BIT-1641.
  Revert "Fixing duplicate SSH authentication failure events."
  Create new SSH events ssh_auth_attempt and ssh_auth_result. Add auth_attempts to SSH::Info. Address BIT-1641.

I extended the tests a bit and did some small cleanups. I also moved the
SSH events back to the global namespace for backwards compatibility and
for consistency (the way it was at the moment, some of them were global
some SSH::).

Furthermore, I fixed the ssh_auth_result result event, it was only
raised in the success case. ssh_auth_result is now also checked in the
testcases. I also have a suspicion that the intel integration never
really worked before.

BIT-1641 #merged
2016-10-18 21:57:27 -04:00
Johanna Amann
c5696821c8 Update submodule
[nomail]
2016-10-18 13:53:13 -04:00
balintm
303985e7db Update smb1-com-open-andx.pac
# of bytes in reserved field of request is 4 & response is 6B long.
2016-10-17 10:18:09 +01:00
Johanna Amann
24f74cb52e Fix alignment issue of ones_complement_checksum
The ones_complement_checksum function assumes that the bytes passed into
it are aligned on 16 bit boundaries.

When using gcc (GCC) 6.2.1 20160916 (Red Hat 6.2.1-2) with -O2, this
does not seem to hold true anymore; assuming 16 bit alignment will lead
to accesses to uninitialized memory and wrong checksums.

This commit adds a minimally invasive change that does not assume
alignment anymore. This might have a small performance impact for every
single packet we process.

This error occured reproducibly when called from icmp6_checksum.
2016-10-14 15:40:59 -07:00
Daniel Thayer
6fa9540e47 Fix istate.pybroccoli test on systems using Python 3
Filter out the python 2 "L" suffix on long integers (not valid in Python 3),
and change python 3 "object at" to "instance at" when printing
class instances.
2016-10-14 14:10:40 -05:00
Vlad Grigorescu
70aaffbaac Logic fix for ssh/main.bro when the auth status is indeterminate, and fix a test. Addresses BIT-1641. 2016-10-14 09:14:22 -05:00
Vlad Grigorescu
7caf2d0356 Clean up the logic for ssh_auth_failed. Addresses BIT-1641 2016-10-14 09:14:22 -05:00
Vlad Grigorescu
3e7d143e31 Update baselines for adding a field to ssh.log as part of BIT-1641 2016-10-14 09:14:21 -05:00
Vlad Grigorescu
2920366049 Script-land changes for BIT-1641. 2016-10-14 09:14:21 -05:00
Vlad Grigorescu
20aef04dc7 Change SSH.cc to use ssh_auth_attempted instead of ssh_auth_failed. Addresses BIT-1641. 2016-10-14 09:14:21 -05:00
Vlad Grigorescu
b1c3f1cd9b Revert "Fixing duplicate SSH authentication failure events."
This reverts commit 176d9f23be.
2016-10-14 09:14:21 -05:00
Vlad Grigorescu
93becb1387 Create new SSH events ssh_auth_attempt and ssh_auth_result. Add auth_attempts to SSH::Info. Address BIT-1641. 2016-10-14 09:14:21 -05:00
Robin Sommer
bd0a374c87 Merge remote-tracking branch 'origin/topic/johanna/freebsd-clang'
BIT-1728 #merged

* origin/topic/johanna/freebsd-clang:
  Fix md5 problem with freebsd 11.0 clang 3.8
2016-10-13 16:30:18 -07:00
Robin Sommer
f17d92d3cc Updating submodule(s).
[nomail]
2016-10-13 16:29:52 -07:00
Robin Sommer
c9d449e363 Merge remote-tracking branch 'origin/topic/johanna/tls13'
BIT-1727 #merged

* origin/topic/johanna/tls13:
  Better way to deal with overloaded Assign constructors.
  A few tabbing fixes in TLS 1.3 support
  TLS 1.3 support.
2016-10-13 15:48:27 -07:00
Johanna Amann
38f6ca87ae Merge remote-tracking branch 'origin/topic/dnthayer/ticket1720'
BIT-1720 #merged

* origin/topic/dnthayer/ticket1720:
  Added missing README files for documentation
  List new log files in the log-files.rst document
2016-10-13 14:09:44 -07:00
Johanna Amann
f135a63c61 Fix md5 problem with freebsd 11.0 clang 3.8
With clang on FreeBSD 11.0-p1, some md5 functions tend to return the
wrong result. This is, e.g., visible when running the bifs/md5 testcase.
In this test, the checks using md5_hash_finish will return an empty
string.

The apparent cause is some confusion in clang when using a static char
inside a static inline function that is refered to several compilation
units.

Exact version of clang showing this issue is:
FreeBSD clang version 3.8.0 (tags/RELEASE_380/final 262564) (based on LLVM 3.8.0)
Target: x86_64-unknown-freebsd11.0
Thread model: posix
InstalledDir: /usr/bin

Issue occurs with -O2.

The first person to either find an existing clang bugreport for this, or
to create an minimal testcase and files one will get a drink from me :)
2016-10-13 13:36:40 -07:00
Johanna Amann
eb3a3bc807 Better way to deal with overloaded Assign constructors. 2016-10-13 11:45:13 -07:00
Daniel Thayer
23a5f83c94 Added missing README files for documentation
These are the one-line script package descriptions.
2016-10-10 22:55:50 -05:00
Robin Sommer
14fd08f334 Updating submodule(s).
[nomail]
2016-10-10 08:45:55 -07:00
Robin Sommer
94a49d9756 Updating submodule(s).
[nomail]
2016-10-10 08:42:13 -07:00
Robin Sommer
4477b8a1ab Merge remote-tracking branch 'origin/topic/seth/dce_rpc_fixes'
* origin/topic/seth/dce_rpc_fixes:
  Fixes for DCE_RPC analyzer
2016-10-10 08:29:14 -07:00
Robin Sommer
54191cc390 Merge remote-tracking branch 'origin/topic/dnthayer/ticket1719'
BIT-1719 #merged

* origin/topic/dnthayer/ticket1719:
  Fix httpd.py test script for Py3 compatibility
2016-10-10 08:24:04 -07:00
Robin Sommer
f7eab5ab52 Updating submodule(s).
[nomail]
2016-10-10 08:13:51 -07:00
Seth Hall
0b5f8e66af Merge branch 'master' into topic/seth/dce_rpc_fixes 2016-10-08 11:00:28 -04:00
Seth Hall
b55c4e61db Tiny fix for a DCE_RPC script issue.
Fixes BIT-1688 (or at least should)
2016-10-08 10:58:11 -04:00
Seth Hall
029d92183e Fixes for DCE_RPC analyzer
- DCE_RPC fragmentation handling returns!
  - Fixed some general parsing issues
  - Fixed an issue with the DCE_RPC signature not working for IPv6 connections.
2016-10-08 10:00:26 -04:00
Daniel Thayer
d1ec71b132 List new log files in the log-files.rst document 2016-10-08 00:32:51 -05:00
Johanna Amann
c2612a0ae1 A few tabbing fixes in TLS 1.3 support 2016-10-07 14:09:49 -07:00
Johanna Amann
fdef28ce7c TLS 1.3 support.
Well, at least -draft-16, and we don't quite parse all extensions yet
(not that there is that much left to parse).
2016-10-07 12:51:43 -07:00
Johanna Amann
14c119c7f9 Really fix plugins/hooks test this time 2016-10-06 15:00:48 -07:00
Johanna Amann
329911ccab Update a few TLS constants in preparation for TLS 1.3
We could actually already see these in traffic with people that use and
enabled them in chrome canary / firefox nightly builds. This change
includes the re-naming of a few names that were never formalli assigned
yet.
2016-10-06 14:49:53 -07:00
Robin Sommer
8479298e04 Merge branch 'master' of git.bro.org:bro 2016-10-06 14:33:36 -07:00