zeek/testing/btest/spicy/parse-error.zeek
Johanna Amann 42ba2fcca0 Settle on analyzer.log for the dpd.log replacement
This commit renames analyzer-failed.log to analyzer.log, and updates the
respective news entry.
2025-06-03 17:33:36 +01:00

38 lines
1.2 KiB
Text

# @TEST-REQUIRES: have-spicy
#
# @TEST-EXEC: spicyz -d -o test.hlto test.evt test.spicy
# @TEST-EXEC: HILTI_DEBUG=zeek zeek -r ${TRACES}/ssh/single-conn.trace misc/dump-events test.hlto %INPUT
# Zeek versions differ in their quoting of the newline character in analyzer.log (two slashes vs one).
# @TEST-EXEC: cat analyzer.log | sed 's#\\\\#\\#g' >analyzer.log.tmp && mv analyzer.log.tmp analyzer.log
# @TEST-EXEC: TEST_DIFF_CANONIFIER=diff-canonifier-spicy btest-diff analyzer.log
#
# @TEST-DOC: Trigger parse error after confirmation, should be recorded in analyzer.log
event zeek_init() {
Analyzer::register_for_port(Analyzer::ANALYZER_SPICY_SSH, 22/tcp);
}
# @TEST-START-FILE test.spicy
module SSH;
import zeek;
public type Banner = unit {
magic : /SSH-/ { zeek::confirm_protocol(); }
version : /[^-]*/;
dash : /-/;
software: /KAPUTT/;
};
# @TEST-END-FILE
# @TEST-START-FILE test.evt
protocol analyzer spicy::SSH over TCP:
parse originator with SSH::Banner
# With Zeek < 5.0, DPD tracking doesn't work correctly for replaced
# analyzers because the ProtocolViolation() doesn't take a tag.
#
# replaces SSH
;
# @TEST-END-FILE