Skip to content

Commit ae5dd9b

Browse files
committed
fim(ebpf): enrich file events with process data
1 parent 07e231b commit ae5dd9b

File tree

13 files changed

+541
-147
lines changed

13 files changed

+541
-147
lines changed

CHANGELOG.next.asciidoc

Lines changed: 1 addition & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -147,6 +147,7 @@ Setting environmental variable ELASTIC_NETINFO:false in Elastic Agent pod will d
147147

148148
- Add linux capabilities to processes in the system/process. {pull}37453[37453]
149149
- Add opt-in eBPF backend for file_integrity module. {pull}37223[37223]
150+
- Add process data to file events (Linux only, eBPF backend). {pull}38199[38199]
150151

151152
*Filebeat*
152153

@@ -285,51 +286,3 @@ Setting environmental variable ELASTIC_NETINFO:false in Elastic Agent pod will d
285286

286287

287288
==== Known Issues
288-
289-
290-
291-
292-
293-
294-
295-
296-
297-
298-
299-
300-
301-
302-
303-
304-
305-
306-
307-
308-
309-
310-
311-
312-
313-
314-
315-
316-
317-
318-
319-
320-
321-
322-
323-
324-
325-
326-
327-
328-
329-
330-
331-
332-
333-
334-
335-

NOTICE.txt

Lines changed: 78 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -12257,11 +12257,11 @@ SOFTWARE.
1225712257

1225812258
--------------------------------------------------------------------------------
1225912259
Dependency : github.com/elastic/ebpfevents
12260-
Version: v0.4.0
12260+
Version: v0.5.0
1226112261
Licence type (autodetected): Apache-2.0
1226212262
--------------------------------------------------------------------------------
1226312263

12264-
Contents of probable licence file $GOMODCACHE/github.com/elastic/ebpfevents@v0.4.0/LICENSE.txt:
12264+
Contents of probable licence file $GOMODCACHE/github.com/elastic/ebpfevents@v0.5.0/LICENSE.txt:
1226512265

1226612266
The https://github.com/elastic/ebpfevents repository contains source code under
1226712267
various licenses:
@@ -22891,6 +22891,45 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
2289122891
SOFTWARE.
2289222892

2289322893

22894+
--------------------------------------------------------------------------------
22895+
Dependency : github.com/tklauser/go-sysconf
22896+
Version: v0.3.10
22897+
Licence type (autodetected): BSD-3-Clause
22898+
--------------------------------------------------------------------------------
22899+
22900+
Contents of probable licence file $GOMODCACHE/github.com/tklauser/[email protected]/LICENSE:
22901+
22902+
BSD 3-Clause License
22903+
22904+
Copyright (c) 2018-2021, Tobias Klauser
22905+
All rights reserved.
22906+
22907+
Redistribution and use in source and binary forms, with or without
22908+
modification, are permitted provided that the following conditions are met:
22909+
22910+
* Redistributions of source code must retain the above copyright notice, this
22911+
list of conditions and the following disclaimer.
22912+
22913+
* Redistributions in binary form must reproduce the above copyright notice,
22914+
this list of conditions and the following disclaimer in the documentation
22915+
and/or other materials provided with the distribution.
22916+
22917+
* Neither the name of the copyright holder nor the names of its
22918+
contributors may be used to endorse or promote products derived from
22919+
this software without specific prior written permission.
22920+
22921+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
22922+
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22923+
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22924+
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
22925+
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
22926+
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
22927+
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
22928+
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
22929+
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
22930+
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
22931+
22932+
2289422933
--------------------------------------------------------------------------------
2289522934
Dependency : github.com/tsg/go-daemon
2289622935
Version: v0.0.0-20200207173439-e704b93fd89b
@@ -36539,11 +36578,11 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
3653936578

3654036579
--------------------------------------------------------------------------------
3654136580
Dependency : github.com/cilium/ebpf
36542-
Version: v0.12.3
36581+
Version: v0.13.2
3654336582
Licence type (autodetected): MIT
3654436583
--------------------------------------------------------------------------------
3654536584

36546-
Contents of probable licence file $GOMODCACHE/github.com/cilium/ebpf@v0.12.3/LICENSE:
36585+
Contents of probable licence file $GOMODCACHE/github.com/cilium/ebpf@v0.13.2/LICENSE:
3654736586

3654836587
MIT License
3654936588

@@ -38575,11 +38614,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
3857538614

3857638615
--------------------------------------------------------------------------------
3857738616
Dependency : github.com/frankban/quicktest
38578-
Version: v1.14.5
38617+
Version: v1.14.3
3857938618
Licence type (autodetected): MIT
3858038619
--------------------------------------------------------------------------------
3858138620

38582-
Contents of probable licence file $GOMODCACHE/github.com/frankban/[email protected].5/LICENSE:
38621+
Contents of probable licence file $GOMODCACHE/github.com/frankban/[email protected].3/LICENSE:
3858338622

3858438623
MIT License
3858538624

@@ -39182,6 +39221,37 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
3918239221
SOFTWARE.
3918339222

3918439223

39224+
--------------------------------------------------------------------------------
39225+
Dependency : github.com/go-quicktest/qt
39226+
Version: v1.101.0
39227+
Licence type (autodetected): MIT
39228+
--------------------------------------------------------------------------------
39229+
39230+
Contents of probable licence file $GOMODCACHE/github.com/go-quicktest/[email protected]/LICENSE:
39231+
39232+
MIT License
39233+
39234+
Copyright (c) 2017 Canonical Ltd.
39235+
39236+
Permission is hereby granted, free of charge, to any person obtaining a copy
39237+
of this software and associated documentation files (the "Software"), to deal
39238+
in the Software without restriction, including without limitation the rights
39239+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
39240+
copies of the Software, and to permit persons to whom the Software is
39241+
furnished to do so, subject to the following conditions:
39242+
39243+
The above copyright notice and this permission notice shall be included in all
39244+
copies or substantial portions of the Software.
39245+
39246+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
39247+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
39248+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
39249+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
39250+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
39251+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
39252+
SOFTWARE.
39253+
39254+
3918539255
--------------------------------------------------------------------------------
3918639256
Dependency : github.com/go-sourcemap/sourcemap
3918739257
Version: v2.1.2+incompatible
@@ -49541,27 +49611,6 @@ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
4954149611
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
4954249612

4954349613

49544-
--------------------------------------------------------------------------------
49545-
Dependency : github.com/pkg/diff
49546-
Version: v0.0.0-20210226163009-20ebb0f2a09e
49547-
Licence type (autodetected): BSD-3-Clause
49548-
--------------------------------------------------------------------------------
49549-
49550-
Contents of probable licence file $GOMODCACHE/github.com/pkg/[email protected]/LICENSE:
49551-
49552-
Copyright 2018 Joshua Bleecher Snyder
49553-
49554-
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
49555-
49556-
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
49557-
49558-
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
49559-
49560-
3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
49561-
49562-
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
49563-
49564-
4956549614
--------------------------------------------------------------------------------
4956649615
Dependency : github.com/pmezard/go-difflib
4956749616
Version: v1.0.0
@@ -49845,11 +49894,11 @@ Contents of probable licence file $GOMODCACHE/github.com/prometheus/client_golan
4984549894

4984649895
--------------------------------------------------------------------------------
4984749896
Dependency : github.com/rogpeppe/go-internal
49848-
Version: v1.9.0
49897+
Version: v1.11.0
4984949898
Licence type (autodetected): BSD-3-Clause
4985049899
--------------------------------------------------------------------------------
4985149900

49852-
Contents of probable licence file $GOMODCACHE/github.com/rogpeppe/go-internal@v1.9.0/LICENSE:
49901+
Contents of probable licence file $GOMODCACHE/github.com/rogpeppe/go-internal@v1.11.0/LICENSE:
4985349902

4985449903
Copyright (c) 2018 The Go Authors. All rights reserved.
4985549904

@@ -50751,45 +50800,6 @@ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
5075150800
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
5075250801

5075350802

50754-
--------------------------------------------------------------------------------
50755-
Dependency : github.com/tklauser/go-sysconf
50756-
Version: v0.3.10
50757-
Licence type (autodetected): BSD-3-Clause
50758-
--------------------------------------------------------------------------------
50759-
50760-
Contents of probable licence file $GOMODCACHE/github.com/tklauser/[email protected]/LICENSE:
50761-
50762-
BSD 3-Clause License
50763-
50764-
Copyright (c) 2018-2021, Tobias Klauser
50765-
All rights reserved.
50766-
50767-
Redistribution and use in source and binary forms, with or without
50768-
modification, are permitted provided that the following conditions are met:
50769-
50770-
* Redistributions of source code must retain the above copyright notice, this
50771-
list of conditions and the following disclaimer.
50772-
50773-
* Redistributions in binary form must reproduce the above copyright notice,
50774-
this list of conditions and the following disclaimer in the documentation
50775-
and/or other materials provided with the distribution.
50776-
50777-
* Neither the name of the copyright holder nor the names of its
50778-
contributors may be used to endorse or promote products derived from
50779-
this software without specific prior written permission.
50780-
50781-
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
50782-
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
50783-
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
50784-
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
50785-
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
50786-
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
50787-
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
50788-
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
50789-
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
50790-
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
50791-
50792-
5079350803
--------------------------------------------------------------------------------
5079450804
Dependency : github.com/tklauser/numcpus
5079550805
Version: v0.4.0

auditbeat/_meta/fields.common.yml

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,41 @@
5050
example: s0
5151
description: The object's SELinux level.
5252

53+
- name: process
54+
type: group
55+
description: >
56+
These fields contains process and user information.
57+
Available only on Linux when using the eBPF backend.
58+
59+
fields:
60+
- name: entity_id
61+
type: keyword
62+
description: Globally unique identifier for a process.
63+
64+
- name: executable
65+
type: keyword
66+
description: Process command.
67+
68+
- name: pid
69+
type: integer
70+
description: PID.
71+
72+
- name: user.id
73+
type: integer
74+
description: User ID (euid).
75+
76+
- name: user.name
77+
type: keyword
78+
description: User name.
79+
80+
- name: group.id
81+
type: integer
82+
description: Group ID (egid).
83+
84+
- name: group.name
85+
type: keyword
86+
description: Group name.
87+
5388
- name: user
5489
type: group
5590
description: User information.

auditbeat/docs/fields.asciidoc

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2658,6 +2658,76 @@ example: s0
26582658
26592659
--
26602660
2661+
[float]
2662+
=== process
2663+
2664+
These fields contains process and user information. Available only on Linux when using the eBPF backend.
2665+
2666+
2667+
2668+
*`file.process.entity_id`*::
2669+
+
2670+
--
2671+
Globally unique identifier for a process.
2672+
2673+
type: keyword
2674+
2675+
--
2676+
2677+
*`file.process.executable`*::
2678+
+
2679+
--
2680+
Process command.
2681+
2682+
type: keyword
2683+
2684+
--
2685+
2686+
*`file.process.pid`*::
2687+
+
2688+
--
2689+
PID.
2690+
2691+
type: integer
2692+
2693+
--
2694+
2695+
*`file.process.user.id`*::
2696+
+
2697+
--
2698+
User ID (euid).
2699+
2700+
type: integer
2701+
2702+
--
2703+
2704+
*`file.process.user.name`*::
2705+
+
2706+
--
2707+
User name.
2708+
2709+
type: keyword
2710+
2711+
--
2712+
2713+
*`file.process.group.id`*::
2714+
+
2715+
--
2716+
Group ID (egid).
2717+
2718+
type: integer
2719+
2720+
--
2721+
2722+
*`file.process.group.name`*::
2723+
+
2724+
--
2725+
Group name.
2726+
2727+
type: keyword
2728+
2729+
--
2730+
26612731
[float]
26622732
=== user
26632733

auditbeat/include/fields.go

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)