Bug 2300198

Summary: SELinux is preventing electron from using the 'execheap' accesses on a process.
Product: [Fedora] Fedora Reporter: Abhisek Mukherjee <abhisek.mukherjee>
Component: selinux-policyAssignee: Zdenek Pytela <zpytela>
Status: CLOSED DUPLICATE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 40CC: abhisek.mukherjee, dwalsh, lvrabec, mmalik, omosnacek, pkoncity, vmojzis, y9t7sypezp, zpytela
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Unspecified   
Whiteboard: abrt_hash:90090229abf3982e469f05aa8beb21fadf2959f41f45fad3b2524aea3d0b814f;VARIANT_ID=xfce;
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2024-10-02 11:18:54 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
File: os_info
none
File: description none

Description Abhisek Mukherjee 2024-07-27 14:49:38 UTC
Description of problem:
SELinux is preventing electron from using the 'execheap' accesses on a process.

*****  Plugin allow_execheap (53.1 confidence) suggests   ********************

If you do not think electron should need to map heap memory that is both writable and executable.
Then you need to report a bug. This is a potentially dangerous access.
Do
contact your security administrator and report this issue.

*****  Plugin catchall_boolean (42.6 confidence) suggests   ******************

If you want to allow selinuxuser to execheap
Then you must tell SELinux about this by enabling the 'selinuxuser_execheap' boolean.

Do
setsebool -P selinuxuser_execheap 1

*****  Plugin catchall (5.76 confidence) suggests   **************************

If you believe that electron should be allowed execheap access on processes labeled unconfined_t by default.
Then you should report this as a bug.
You can generate a local policy module to allow this access.
Do
allow this access for now by executing:
# ausearch -c 'electron' --raw | audit2allow -M my-electron
# semodule -X 300 -i my-electron.pp

Additional Information:
Source Context                unconfined_u:unconfined_r:unconfined_t:s0-
                              s0:c0.c1023
Target Context                unconfined_u:unconfined_r:unconfined_t:s0-
                              s0:c0.c1023
Target Objects                Unknown [ process ]
Source                        electron
Source Path                   electron
Port                          <Unknown>
Host                          (removed)
Source RPM Packages           
Target RPM Packages           
SELinux Policy RPM            selinux-policy-targeted-40.24-1.fc40.noarch
Local Policy RPM              selinux-policy-targeted-40.24-1.fc40.noarch
Selinux Enabled               True
Policy Type                   targeted
Enforcing Mode                Enforcing
Host Name                     (removed)
Platform                      Linux (removed) 6.10.1-200.fc40.x86_64 #1 SMP
                              PREEMPT_DYNAMIC Fri Jul 26 18:52:14 UTC 2024
                              x86_64
Alert Count                   94
First Seen                    2024-07-27 15:21:11 IST
Last Seen                     2024-07-27 20:13:42 IST
Local ID                      80a16220-b8be-4a87-802a-af3442a93267

Raw Audit Messages
type=AVC msg=audit(1722091422.142:200): avc:  denied  { execheap } for  pid=3294 comm="electron" scontext=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 tcontext=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 tclass=process permissive=0


Hash: electron,unconfined_t,unconfined_t,process,execheap

Version-Release number of selected component:
selinux-policy-targeted-40.24-1.fc40.noarch

Additional info:
reporter:       libreport-2.17.15
type:           libreport
hashmarkername: setroubleshoot
package:        selinux-policy-targeted-40.24-1.fc40.noarch
reason:         SELinux is preventing electron from using the 'execheap' accesses on a process.
kernel:         6.10.1-200.fc40.x86_64
component:      selinux-policy
component:      selinux-policy

Comment 1 Abhisek Mukherjee 2024-07-27 14:49:41 UTC
Created attachment 2040625 [details]
File: os_info

Comment 2 Abhisek Mukherjee 2024-07-27 14:49:43 UTC
Created attachment 2040626 [details]
File: description

Comment 3 Steve 2024-07-27 16:29:41 UTC
I am not an selinux maintainer, but a Bugzilla search for "execheap" found Bug 2254434, which is currently filed against "kernel".

It might be helpful to post a brief description of what you were doing when the AVC occurred. And I am not familiar with "electron", which does not appear to be a Fedora app.

Comment 4 Zdenek Pytela 2024-10-02 11:18:54 UTC
CLosing as dup, if your use case is different, please reopen and follow instructions in #comment3.

*** This bug has been marked as a duplicate of bug 2254434 ***