mirror of
https://github.com/Security-Onion-Solutions/securityonion.git
synced 2025-12-06 09:12:45 +01:00
so-import-pcap improvements: Ensure PCAP filenames with spaces are handled properly; Provide link directly to the imported logs, filtered by import ID; Require sudo access to run so-import-pcap
This commit is contained in:
@@ -20,6 +20,8 @@
|
|||||||
{% set IMAGEREPO = salt['pillar.get']('static:imagerepo') %}
|
{% set IMAGEREPO = salt['pillar.get']('static:imagerepo') %}
|
||||||
{%- set MANAGERIP = salt['pillar.get']('static:managerip') -%}
|
{%- set MANAGERIP = salt['pillar.get']('static:managerip') -%}
|
||||||
|
|
||||||
|
. /usr/sbin/so-common
|
||||||
|
|
||||||
function usage {
|
function usage {
|
||||||
cat << EOF
|
cat << EOF
|
||||||
Usage: $0 <pcap-file-1> [pcap-file-2] [pcap-file-N]
|
Usage: $0 <pcap-file-1> [pcap-file-2] [pcap-file-N]
|
||||||
@@ -32,13 +34,13 @@ EOF
|
|||||||
function pcapinfo() {
|
function pcapinfo() {
|
||||||
PCAP=$1
|
PCAP=$1
|
||||||
ARGS=$2
|
ARGS=$2
|
||||||
docker run --rm -v $PCAP:/input.pcap --entrypoint capinfos {{ MANAGER }}:5000/{{ IMAGEREPO }}/so-pcaptools:{{ VERSION }} /input.pcap $ARGS
|
docker run --rm -v "$PCAP:/input.pcap" --entrypoint capinfos {{ MANAGER }}:5000/{{ IMAGEREPO }}/so-pcaptools:{{ VERSION }} /input.pcap $ARGS
|
||||||
}
|
}
|
||||||
|
|
||||||
function pcapfix() {
|
function pcapfix() {
|
||||||
PCAP=$1
|
PCAP=$1
|
||||||
PCAP_OUT=$2
|
PCAP_OUT=$2
|
||||||
docker run --rm -v $PCAP:/input.pcap -v $PCAP_OUT:$PCAP_OUT --entrypoint pcapfix {{ MANAGER }}:5000/{{ IMAGEREPO }}/so-pcaptools:{{ VERSION }} /input.pcap -o $PCAP_OUT > /dev/null 2>&1
|
docker run --rm -v "$PCAP:/input.pcap" -v $PCAP_OUT:$PCAP_OUT --entrypoint pcapfix {{ MANAGER }}:5000/{{ IMAGEREPO }}/so-pcaptools:{{ VERSION }} /input.pcap -o $PCAP_OUT > /dev/null 2>&1
|
||||||
}
|
}
|
||||||
|
|
||||||
function suricata() {
|
function suricata() {
|
||||||
@@ -57,7 +59,7 @@ function suricata() {
|
|||||||
-v /opt/so/conf/suricata/rules:/etc/suricata/rules:ro \
|
-v /opt/so/conf/suricata/rules:/etc/suricata/rules:ro \
|
||||||
-v ${LOG_PATH}:/var/log/suricata/:rw \
|
-v ${LOG_PATH}:/var/log/suricata/:rw \
|
||||||
-v ${NSM_PATH}/:/nsm/:rw \
|
-v ${NSM_PATH}/:/nsm/:rw \
|
||||||
-v $PCAP:/input.pcap:ro \
|
-v "$PCAP:/input.pcap:ro" \
|
||||||
-v /opt/so/conf/suricata/bpf:/etc/suricata/bpf:ro \
|
-v /opt/so/conf/suricata/bpf:/etc/suricata/bpf:ro \
|
||||||
{{ MANAGER }}:5000/{{ IMAGEREPO }}/so-suricata:{{ VERSION }} \
|
{{ MANAGER }}:5000/{{ IMAGEREPO }}/so-suricata:{{ VERSION }} \
|
||||||
--runmode single -k none -r /input.pcap > $LOG_PATH/console.log 2>&1
|
--runmode single -k none -r /input.pcap > $LOG_PATH/console.log 2>&1
|
||||||
@@ -76,7 +78,7 @@ function zeek() {
|
|||||||
-v $NSM_PATH/logs:/nsm/zeek/logs:rw \
|
-v $NSM_PATH/logs:/nsm/zeek/logs:rw \
|
||||||
-v $NSM_PATH/spool:/nsm/zeek/spool:rw \
|
-v $NSM_PATH/spool:/nsm/zeek/spool:rw \
|
||||||
-v $NSM_PATH/extracted:/nsm/zeek/extracted:rw \
|
-v $NSM_PATH/extracted:/nsm/zeek/extracted:rw \
|
||||||
-v $PCAP:/input.pcap:ro \
|
-v "$PCAP:/input.pcap:ro" \
|
||||||
-v /opt/so/conf/zeek/local.zeek:/opt/zeek/share/zeek/site/local.zeek:ro \
|
-v /opt/so/conf/zeek/local.zeek:/opt/zeek/share/zeek/site/local.zeek:ro \
|
||||||
-v /opt/so/conf/zeek/node.cfg:/opt/zeek/etc/node.cfg:ro \
|
-v /opt/so/conf/zeek/node.cfg:/opt/zeek/etc/node.cfg:ro \
|
||||||
-v /opt/so/conf/zeek/zeekctl.cfg:/opt/zeek/etc/zeekctl.cfg:ro \
|
-v /opt/so/conf/zeek/zeekctl.cfg:/opt/zeek/etc/zeekctl.cfg:ro \
|
||||||
@@ -210,7 +212,7 @@ cat << EOF
|
|||||||
Import complete!
|
Import complete!
|
||||||
|
|
||||||
You can use the following hyperlink to view data in the time range of your import. You can triple-click to quickly highlight the entire hyperlink and you can then copy it into your browser:
|
You can use the following hyperlink to view data in the time range of your import. You can triple-click to quickly highlight the entire hyperlink and you can then copy it into your browser:
|
||||||
https://{{ MANAGERIP }}/#/hunt?q=%2a%20%7C%20groupby%20event.module%20event.dataset&t=${START_OLDEST_SLASH}%2000%3A00%3A00%20AM%20-%20${END_NEWEST_SLASH}%2000%3A00%3A00%20AM
|
https://{{ MANAGERIP }}/#/hunt?q=import.id:${HASH}%20%7C%20groupby%20event.module%20event.dataset&t=${START_OLDEST_SLASH}%2000%3A00%3A00%20AM%20-%20${END_NEWEST_SLASH}%2000%3A00%3A00%20AM
|
||||||
|
|
||||||
or you can manually set your Time Range to be:
|
or you can manually set your Time Range to be:
|
||||||
From: $START_OLDEST To: $END_NEWEST
|
From: $START_OLDEST To: $END_NEWEST
|
||||||
|
|||||||
@@ -177,6 +177,10 @@
|
|||||||
"type":"object",
|
"type":"object",
|
||||||
"dynamic": true
|
"dynamic": true
|
||||||
},
|
},
|
||||||
|
"import":{
|
||||||
|
"type":"object",
|
||||||
|
"dynamic": true
|
||||||
|
},
|
||||||
"ingest":{
|
"ingest":{
|
||||||
"type":"object",
|
"type":"object",
|
||||||
"dynamic": true
|
"dynamic": true
|
||||||
|
|||||||
Reference in New Issue
Block a user