Deadly bug with X-Plane 10 - or malicious actions by it?
Posted: Sun Dec 27, 2015 10:52 am
Recently, whenever I quit X-Plane 10, my system will freeze to death, only a reboot solves it. My first suspicion was Firejail because of how it causes a bug to appear on Pulseaudio (that renders pulse almost unusable), but I don't think that is the problem.
I zeroed my HD, started from scratch, downloaded 300 GB of data, and it still happens. Here are the lines on journalctl:
You can see "RULE 21" is not allowing packats to be sent. Here are my firewall rules: http://pastebin.com/RwWCDDDL
My config:
Arch Linux
Radeon driver
linux-grsec (4.3.3.201512222129-1) paxd checksec pax-utils paxtest
softmode=0
Disabled MPROTECT for X-Plane
Steps to reproduce:
1) Use X-Plane 10.42 (I think the demo version could still cause this);
2) Download the following scenery and plugins: http://pastebin.com/NJaNECDJ
3) Run X-Plane
4) Upon exiting, your entire system will freeze
So, the question is: Is this a bug in grsecurity? Or a malicious action by X-Plane? It didn't use to happen in older versions of grsecurity
I zeroed my HD, started from scratch, downloaded 300 GB of data, and it still happens. Here are the lines on journalctl:
- Code: Select all
Dec 27 04:44:27 amarildo kernel: [<ffffffff8c08d992>] __schedule_bug+0x52/0x60
Dec 27 04:44:27 amarildo kernel: [<ffffffff8c5e5ad4>] __schedule+0xa04/0xcf0
Dec 27 04:44:27 amarildo kernel: [<ffffffff8c1237eb>] ? printk+0x6b/0x90
Dec 27 04:44:27 amarildo kernel: [<ffffffff8c5e5df5>] schedule+0x35/0x80
Dec 27 04:44:27 amarildo kernel: [<ffffffff8c06816a>] do_exit+0x97a/0xb60
Dec 27 04:44:27 amarildo kernel: [<ffffffff8c0683d7>] do_group_exit+0x37/0xa0
Dec 27 04:44:27 amarildo kernel: [<ffffffff8c0078ca>] oops_end+0x9a/0xe0
Dec 27 04:44:27 amarildo kernel: [<ffffffff8c007ba6>] die+0x46/0x70
Dec 27 04:44:27 amarildo kernel: [<ffffffff8c004afa>] do_general_protection+0xca/0x150
Dec 27 04:44:27 amarildo kernel: [<ffffffff8c5ebc28>] general_protection+0x28/0x30
Dec 27 04:44:27 amarildo kernel: [<ffffffff8c0b1238>] ? mutex_optimistic_spin+0x48/0x1c0
Dec 27 04:44:27 amarildo kernel: [<ffffffff8c5eadb4>] ? retint_kernel+0x22/0x2c
Dec 27 04:44:27 amarildo kernel: [<ffffffff8c5e6eb4>] __mutex_lock_slowpath+0x44/0x150
Dec 27 04:44:27 amarildo kernel: [<ffffffff8c5e6d22>] mutex_lock+0x22/0x40
Dec 27 04:44:27 amarildo kernel: [<ffffffffc01b87fe>] radeon_mn_unregister+0x3e/0xa0 [radeon]
Dec 27 04:44:27 amarildo kernel: [<ffffffffc00fef4d>] radeon_gem_object_free+0x4d/0x80 [radeon]
Dec 27 04:44:27 amarildo kernel: [<ffffffffc00056b9>] drm_gem_object_free+0x39/0x60 [drm]
Dec 27 04:44:27 amarildo kernel: [<ffffffffc00057e4>] drm_gem_object_handle_unreference_unlocked+0x104/0x120 [drm]
Dec 27 04:44:27 amarildo kernel: [<ffffffffc000608b>] drm_gem_object_release_handle+0x5b/0x80 [drm]
Dec 27 04:44:27 amarildo kernel: [<ffffffff8c2d6d1c>] idr_for_each+0xcc/0x130
Dec 27 04:44:27 amarildo kernel: [<ffffffffc0006030>] ? drm_gem_dumb_destroy+0x30/0x30 [drm]
Dec 27 04:44:27 amarildo kernel: [<ffffffff8c186e16>] ? kmem_cache_free+0x1e6/0x210
Dec 27 04:44:27 amarildo kernel: [<ffffffffc00066d1>] drm_gem_release+0x21/0x40 [drm]
Dec 27 04:44:27 amarildo kernel: [<ffffffffc0005456>] drm_release+0x3f6/0x4e0 [drm]
Dec 27 04:44:27 amarildo kernel: [<ffffffff8c1aa6a4>] __fput+0xa4/0x210
Dec 27 04:44:27 amarildo kernel: [<ffffffff8c1aa850>] ____fput+0x10/0x20
Dec 27 04:44:27 amarildo kernel: [<ffffffff8c086790>] task_work_run+0x80/0xa0
Dec 27 04:44:27 amarildo kernel: [<ffffffff8c067b09>] do_exit+0x319/0xb60
Dec 27 04:44:27 amarildo kernel: [<ffffffff8c0683d7>] do_group_exit+0x37/0xa0
Dec 27 04:44:27 amarildo kernel: [<ffffffff8c075440>] get_signal+0x230/0x580
Dec 27 04:44:27 amarildo kernel: [<ffffffff8c003978>] do_signal+0x48/0x7f0
Dec 27 04:44:27 amarildo kernel: [<ffffffff8c0014b3>] prepare_exit_to_usermode+0x93/0xe0
Dec 27 04:44:27 amarildo kernel: [<ffffffff8c0015dd>] syscall_return_slowpath+0xdd/0x1b0
Dec 27 04:44:27 amarildo kernel: [<ffffffff8c0e1e7e>] ? SyS_futex+0x1ae/0x290
Dec 27 04:44:27 amarildo kernel: [<ffffffff8c5ea3f1>] int_ret_from_sys_call+0x25/0xa4
Dec 27 04:44:27 amarildo kernel: INVALID state -- DENY IN= OUT=enp0s7 SRC=187.181.245.21 DST=200.174.148.18 LEN=52 TOS=0x00 PREC=0x00 TTL=64
Dec 27 04:44:27 amarildo kernel: INVALID state -- DENY IN= OUT=enp0s7 SRC=187.181.245.21 DST=162.254.193.19 LEN=52 TOS=0x00 PREC=0x00 TTL=64
Dec 27 04:44:27 amarildo kernel: INVALID state -- DENY IN= OUT=enp0s7 SRC=187.181.245.21 DST=200.174.148.18 LEN=52 TOS=0x00 PREC=0x00 TTL=64
Dec 27 04:44:26 amarildo polkitd[482]: Unregistered Authentication Agent for unix-session:c2 (system bus name :1.31, object path /org/mate/Po
Dec 27 04:44:26 amarildo sddm-helper[578]: [PAM] Ended.
Dec 27 04:44:26 amarildo sddm[461]: Auth: sddm-helper exited with 9
Dec 27 04:44:26 amarildo sddm[461]: Socket server stopping...
Dec 27 04:44:26 amarildo sddm[461]: Socket server stopped.
Dec 27 04:44:26 amarildo sddm[461]: Display server stopping...
Dec 27 04:44:27 amarildo kernel: INVALID state -- DENY IN= OUT=enp0s7 SRC=187.181.245.21 DST=162.254.193.19 LEN=52 TOS=0x00 PREC=0x00 TTL=64
Dec 27 04:44:28 amarildo kernel: INVALID state -- DENY IN= OUT=enp0s7 SRC=187.181.245.21 DST=200.174.148.18 LEN=52 TOS=0x00 PREC=0x00 TTL=64
Dec 27 04:44:29 amarildo kernel: INVALID state -- DENY IN= OUT=enp0s7 SRC=187.181.245.21 DST=162.254.193.19 LEN=52 TOS=0x00 PREC=0x00 TTL=64
Dec 27 04:44:30 amarildo kernel: INVALID state -- DENY IN= OUT=enp0s7 SRC=187.181.245.21 DST=200.174.148.18 LEN=52 TOS=0x00 PREC=0x00 TTL=64
Dec 27 04:44:31 amarildo sddm[461]: Removing display ":0" ...
Dec 27 04:44:31 amarildo sddm[461]: Adding new display on vt 1 ...
Dec 27 04:44:31 amarildo sddm[461]: Display server starting...
Dec 27 04:44:31 amarildo sddm[461]: Running: /usr/bin/X -nolisten tcp -auth /var/run/sddm/{a1136b5f-9739-4192-a86b-b3dc6345c126} -background
Dec 27 04:44:32 amarildo dhclient[493]: DHCPREQUEST on enp0s7 to 189.7.136.32 port 67
Dec 27 04:44:32 amarildo dhclient[493]: send_packet: Operation not permitted
Dec 27 04:44:32 amarildo dhclient[493]: dhclient.c:2237: Failed to send 300 byte long packet over fallback interface.
Dec 27 04:44:32 amarildo kernel: RULE 21 -- DENY IN= OUT=enp0s7 SRC=187.181.245.21 DST=189.7.136.32 LEN=328 TOS=0x00 PREC=0x00 TTL=64 ID=9974
Dec 27 04:44:33 amarildo kernel: INVALID state -- DENY IN= OUT=enp0s7 SRC=187.181.245.21 DST=200.174.148.18 LEN=52 TOS=0x00 PREC=0x00 TTL=64
Dec 27 04:44:33 amarildo kernel: INVALID state -- DENY IN= OUT=enp0s7 SRC=187.181.245.21 DST=162.254.193.19 LEN=52 TOS=0x00 PREC=0x00 TTL=64
Dec 27 04:44:41 amarildo kernel: INVALID state -- DENY IN= OUT=enp0s7 SRC=187.181.245.21 DST=200.174.148.18 LEN=52 TOS=0x00 PREC=0x00 TTL=64
Dec 27 04:44:41 amarildo kernel: INVALID state -- DENY IN= OUT=enp0s7 SRC=187.181.245.21 DST=162.254.193.19 LEN=52 TOS=0x00 PREC=0x00 TTL=64
Dec 27 04:44:42 amarildo dhclient[493]: DHCPREQUEST on enp0s7 to 189.7.136.32 port 67
Dec 27 04:44:42 amarildo dhclient[493]: send_packet: Operation not permitted
Dec 27 04:44:42 amarildo dhclient[493]: dhclient.c:2237: Failed to send 300 byte long packet over fallback interface.
Dec 27 04:44:42 amarildo kernel: RULE 21 -- DENY IN= OUT=enp0s7 SRC=187.181.245.21 DST=189.7.136.32 LEN=328 TOS=0x00 PREC=0x00 TTL=64 ID=1227
Dec 27 04:44:50 amarildo systemd-logind[460]: Power key pressed.
Dec 27 04:44:50 amarildo systemd-logind[460]: Powering Off...
Dec 27 04:44:50 amarildo systemd-logind[460]: System is powering down.
-- Reboot --
You can see "RULE 21" is not allowing packats to be sent. Here are my firewall rules: http://pastebin.com/RwWCDDDL
My config:
Arch Linux
Radeon driver
linux-grsec (4.3.3.201512222129-1) paxd checksec pax-utils paxtest
softmode=0
Disabled MPROTECT for X-Plane
Steps to reproduce:
1) Use X-Plane 10.42 (I think the demo version could still cause this);
2) Download the following scenery and plugins: http://pastebin.com/NJaNECDJ
3) Run X-Plane
4) Upon exiting, your entire system will freeze
So, the question is: Is this a bug in grsecurity? Or a malicious action by X-Plane? It didn't use to happen in older versions of grsecurity