1 include::../attributes.adoc[]
6 :copycss: {css_dir}/{stylesheet}
10 falcodump - Dump log data to a file using a Falco source plugin.
19 [ *--plugin-api-version* ]
20 [ *--extcap-interfaces* ]
22 [ *--extcap-interface*=<interface> ]
24 [ *--extcap-capture-filter*=<capture filter> ]
26 [ *--fifo*=<path to file or pipe> ]
27 [ *--plugin-source*=<source path or URL> ]
28 [ *--log-level*=<log level> ]
29 [ *--log-file*=<path to file> ]
33 [ *--include-capture-processes=<TRUE or FALSE> ]
34 [ *--include-switch-calls=<TRUE or FALSE> ]
37 .CloudTrail plugin options
39 [ *--cloudtrail-s3downloadconcurrency*=<number of concurrent downloads> ]
40 [ *--cloudtrail-s3interval*=<timeframe> ]
41 [ *--cloudtrail-s3accountlist*=<comma separated account IDs> ]
42 [ *--cloudtrail-sqsdelete*=<true or false> ]
43 [ *--cloudtrail-useasync*=<true or false> ]
44 [ *--cloudtrail-uses3sns*=<true or false> ]
45 [ *--cloudtrail-aws-region*=<AWS region> ]
46 [ *--cloudtrail-aws-profile*=<AWS profile> ]
47 [ *--cloudtrail-aws-config*=<path> ]
48 [ *--cloudtrail-aws-credentials*=<path to file> ]
53 *falcodump* is an extcap tool that allows one to capture log messages from cloud providers.
55 Each plugin is listed as a separate interface.
56 For example, the AWS CloudTrail plugin is listed as “cloudtrail”.
61 Print program arguments.
62 This will also list the configuration arguments for each plugin.
65 Print the program version.
67 --plugin-api-version::
68 Print the Falco plugin API version.
71 List the available interfaces.
73 --extcap-interface=<interface>::
74 Use the specified interface.
77 List the DLTs of the specified interface.
80 List the configuration options of specified interface.
82 --extcap-capture-filter=<capture filter>::
84 Must be a valid Sysdig / Falco filter.
87 Start capturing from the source specified by --plugin-source via the specified interface and write raw packet data to the location specified by --fifo.
89 --fifo=<path to file or pipe>::
90 Save captured packet to file or send it through pipe.
92 --plugin-source=<source path or URL>::
93 Capture from the specified location.
99 Set a log file to log messages in addition to the console
101 == SYSTEM CALL OPTIONS
103 --include-capture-processes::
104 Include system calls for capture processes (falcodump, dumpcap, and Stratoshark) if TRUE.
107 --include-switch-calls::
108 Include "switch" calls if TRUE.
114 === cloudtrail (AWS CloudTrail)
116 --cloudtrail-s3downloadconcurrency::
117 Controls the number of background goroutines used to download S3 files (Default: 32)
119 --cloudtrail-s3interval::
120 Download log files over the specified interval (Default: no interval)
122 --cloudtrail-s3accountlist::
123 If source is an organization CloudTrail S3 bucket download log files for all specified account IDs (Default: no account IDs)
125 --cloudtrail-sqsdelete::
126 If true then the plugin will delete SQS messages from the queue immediately after receiving them (Default: true)
128 --cloudtrail-useasync::
129 If true then async extraction optimization is enabled (Default: true)
131 --cloudtrail-uses3sns::
132 If true then the plugin will expect SNS messages to originate from S3 instead of directly from Cloudtrail (Default: false)
134 --cloudtrail-aws-profile::
135 If non-empty overrides the AWS shared configuration profile (e.g. 'default') and environment variables such as AWS_PROFILE (Default: empty)
137 --cloudtrail-aws-region::
138 If non-empty overrides the AWS region specified in the profile (e.g. 'us-east-1') and environment variables such as AWS_REGION (Default: empty)
140 --cloudtrail-aws-config::
141 If non-empty overrides the AWS shared configuration filepath (e.g. ~/.aws/config) and env variables such as AWS_CONFIG_FILE (Default: empty)
143 --cloudtrail-aws-credentials::
144 If non-empty overrides the AWS shared credentials filepath (e.g. ~/.aws/credentials) and env variables such as AWS_SHARED_CREDENTIALS_FILE (Default: empty)
146 CloudTrail sources can be S3 buckets or SQS queue URLs. S3 bucket URLs have the form
148 's3://__bucket_name__/__prefix__/AWSLogs/__account-id__/CloudTrail/__region__/__year__/__month__/__day__'
150 For organization CloudTrail the S3 bucket URL can be
152 's3://__bucket_name__/__prefix__/AWSLogs/__org-id__/__account-id__/CloudTrail/__region__/__year__/__month__/__day__'
154 The __region__, __year__, __month__, and __day__ components can be omitted in order to fetch more or less data.
155 For example, the source 's3://mybucket/AWSLogs/012345678/CloudTrail/us-west-2/2023' will fetch all CloudWatch logs for the year 2023.
157 If the URL ends with '__account-id__/' or '__account-id__/CloudTrail/' (for example 's3://mybucket/AWSLOGS/012345678912/') the option '--cloudtrail-s3interval' can be used to define the time frame. A s3interval of '1d' for example would get all events of the last 24 hours from all available regions. A s3interval of '2w-1w' would get all events from all regions from two weeks ago up to one week ago. The s3invterval can also be defined as a RFC 3339-style timestamp like '2024-02-29T18:07:17Z' or '2024-02-29T00:00:00Z-2024-03-01T23:59:59Z'.
159 If the URL ends with 'AWSLogs/__org-id__' option '--cloudtrail-s3accountlist' can be used to specify account IDs. This can be combined with '--cloudtrail-s3interval'. A source like 's3://my-org-bucket/AWSLogs/o-123abc/' with '--cloudstrail-s3accountlist' set to '123456789012,987654321098' and '--cloudtrail-s3interval' set to '30m' would get all events of the last 30min from all regions for accounts 123456789012 and 987654321098.
161 If source URL is the organization CloudTrail bucket (like 's3://my-org-bucket/AWSLogs/o-123abc') and '--s3accountlist' is not set the plugin iterates over all accounts (limited by '--s3interval' if set). Attention: Depending on the size of the organization and the time interval, this can take a long time.
163 The cloudtrail plugin uses the AWS SDK for Go, which can obtain profile, region, and credential settings from a set of standard https://aws.github.io/aws-sdk-go-v2/docs/configuring-sdk/[environment variables and configuration files].
164 Falcodump will show a list of locally configured profiles and the current regions, and will let you supply a custom value as well.
166 More information is available in the https://github.com/falcosecurity/plugins/blob/master/plugins/cloudtrail/README.md[README] of the CloudTrail plugin.
170 To see program arguments:
174 To see program version:
180 falcodump --extcap-interfaces
182 Only one interface (falcodump) is supported.
185 interface {value=cloudtrail}{display=Falco plugin}
187 To see interface DLTs:
189 falcodump --extcap-interface=cloudtrail --extcap-dlts
192 dlt {number=147}{name=cloudtrail}{display=USER0}
194 To see interface configuration options:
196 falcodump --extcap-interface=cloudtrail --extcap-config
199 arg {number=0}{call=--plugin-source}{display=Plugin source}{type=string}{tooltip=The plugin data source. This us usually a URL.}{placeholder=Enter a source URL…}{required=true}{group=Capture}
200 arg {number=1}{call=cloudtrail-s3downloadconcurrency}{display=s3DownloadConcurrency}{type=integer}{default=1}{tooltip=Controls the number of background goroutines used to download S3 files (Default: 1)}{group=Capture}
201 arg {number=2}{call=cloudtrail-sqsdelete}{display=sqsDelete}{type=boolean}{default=true}{tooltip=If true then the plugin will delete sqs messages from the queue immediately after receiving them (Default: true)}{group=Capture}
202 arg {number=3}{call=cloudtrail-useasync}{display=useAsync}{type=boolean}{default=true}{tooltip=If true then async extraction optimization is enabled (Default: true)}{group=Capture}
204 To capture AWS CloudTrail events from an S3 bucket:
206 falcodump --extcap-interface=cloudtrail --fifo=/tmp/cloudtrail.pcap --plugin-source=s3://aws-cloudtrail-logs.../CloudTrail/us-east-2/... --capture
210 falcodump --capture --extcap-interface cloudtrail --fifo ~/cloudtrail.pcap --plugin-source s3://my-cloudtrail-bucket/AWSLogs/o-abc12345/123456789012/ --cloudtrail-s3downloadconcurrency 32 --cloudtrail-s3interval 5d-2d --cloudtrail-aws-region eu-west-1
212 NOTE: kbd:[CTRL+C] should be used to stop the capture in order to ensure clean termination.
216 xref:wireshark.html[wireshark](1), xref:tshark.html[tshark](1), xref:dumpcap.html[dumpcap](1), xref:extcap.html[extcap](4)
217 //, xref:stratoshark.html[stratoshark](1)
221 *falcodump* is part of the *Stratoshark* distribution.
222 The latest version of *Stratoshark* can be found at https://www.wireshark.org.
224 HTML versions of the Wireshark project man pages are available at
225 https://www.wireshark.org/docs/man-pages.
231 Gerald Combs <gerald[AT]wireshark.org>