Bug 1481178 (CVE-2017-12762)

Summary: CVE-2017-12762 kernel: Buffer overflow due to unbounded strcpy in ISDN I4L driver
Product: [Other] Security Response Reporter: Adam Mariš <amaris>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED WONTFIX QA Contact:
Severity: low Docs Contact:
Priority: low    
Version: unspecifiedCC: agordeev, aquini, bhu, blc, dhoward, dominik.mierzejewski, esammons, fhrbata, gansalmon, hkrzesin, hwkernel-mgr, iboverma, ichavero, itamar, jforbes, jkacur, jonathan, jross, jwboyer, kernel-maint, kernel-mgr, labbott, lgoncalv, lwang, madhu.chinakonda, matt, mchehab, mcressma, mguzik, mlangsdo, nmurray, pholasek, plougher, rt-maint, rvrbovsk, slawomir, vdronov, williams
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
A buffer overflow was found in the Linux kernel's isdn_net_newslave() function in the /drivers/isdn/i4l/isdn_net.c file. An overflow happens when the user-controlled buffer is copied into a local buffer of constant size using strcpy() without a length check.
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-08-18 13:35:29 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:
Bug Depends On: 1481179, 1482952    
Bug Blocks: 1481181    

Description Adam Mariš 2017-08-14 10:05:11 UTC
A buffer overflow was found in the Linux kernel in isdn_net_newslave() function in /drivers/isdn/i4l/isdn_net.c file. An overflow happens when user-controlled buffer is copied into a local buffer of constant size using strcpy() without a length check.

References:

http://seclists.org/oss-sec/2017/q3/274

https://patchwork.kernel.org/patch/9880041/

Upstream patch:

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=9f5af546e6acc30f075828cb58c7f09665033967

Comment 1 Adam Mariš 2017-08-14 10:05:30 UTC
Created kernel tracking bugs for this issue:

Affects: fedora-all [bug 1481179]

Comment 2 Justin M. Forbes 2017-08-14 12:36:24 UTC
This issue was fixed in kernel 4.12.5, currently available to all supported Fedora releases.

Comment 6 Vladis Dronov 2017-08-18 13:35:29 UTC
Statement:

This issue affects the versions of the Linux kernel as shipped with Red Hat Enterprise Linux 5, 6, 7 and Red Hat Enterprise MRG 2. This has been rated as having Low security impact and is not currently planned to be addressed in future updates. For additional information, refer to the Red Hat Enterprise Linux Life Cycle: https://access.redhat.com/support/policy/updates/errata/.

Comment 7 Vladis Dronov 2017-09-19 08:39:25 UTC
The ISDN kernel module is automatically loaded when the system boots and the ISDN service is present and enabled. The kernel modules can be prevented from being loaded by using system-wide modprobe rules. Run the following commands to blacklist the ISDN module, thus preventing them from loading:

# echo "install isdn /bin/true">> /etc/modprobe.d/disable-isdn.conf

On RHEL 6 execute the following commands as root to check if any isdn-related services are present:

# chkconfig --list | grep isdn

and disable them is yes:

#  chkconfig isdn off
(or use a name of another isdn-related service)

Comment 11 Stephen Herr 2018-01-30 21:49:20 UTC
Mitigation:

The ISDN kernel module is automatically loaded when the system boots and the ISDN service is present and enabled. The kernel modules can be prevented from being loaded by using system-wide modprobe rules. Run the following commands to blacklist the ISDN module, thus preventing them from loading:

```# echo "install isdn /bin/true">> /etc/modprobe.d/disable-isdn.conf```

On RHEL 6 execute the following commands as root to check if any isdn-related services are present:

```# chkconfig --list | grep isdn```

and disable them if they are:

```#  chkconfig isdn off```
(or use a name of another isdn-related service)