Share
## https://sploitus.com/exploit?id=PACKETSTORM:162844
KL-001-2021-003: CommScope Ruckus IoT Controller Hard-coded System Passwords  
  
Title: CommScope Ruckus IoT Controller Hard-coded System Passwords  
Advisory ID: KL-001-2021-003  
Publication Date: 2021.05.26  
Publication URL: https://korelogic.com/Resources/Advisories/KL-001-2021-003.txt  
  
  
1. Vulnerability Details  
  
Affected Vendor: CommScope  
Affected Product: Ruckus IoT Controller  
Affected Version: 1.7.1.0 and earlier  
Platform: Linux  
CWE Classification: CWE-259: Use of Hard-coded Password  
CVE ID: CVE-2021-33218  
  
  
2. Vulnerability Description  
  
Hard coded, system-level credentials exist on the Ruckus IoT  
Controller OVA image, and are exposed to attackers who mount  
the filesystem.  
  
  
3. Technical Description  
  
Ruckus vRIoT server software is available from the software  
library at: https://support.ruckuswireless.com/software/  
  
Once the OVA is imported into VirtualBox, a VMDK file is  
created. The VMDK file can be mounted and the directory  
structure and its contents can be perused. The virtual appliance  
contains three system accounts with password hashes. The three  
accounts are 'root', 'admin', and 'vriotha'. The 'admin'  
account is documented in vendor documentation, but not the  
other two accounts.  
  
The password for 'admin' is documented and can be changed  
by the user. The password for the 'vriotha' account is  
'nplus1user'. The password for the 'vriotha' account  
is hardcoded into support scripts. The root hash is still  
undergoing password cracking attempts. The 'admin' and 'vriotha'  
accounts are restricted in terms of their shell, they do  
not drop to typical Unix shell access. The virtual appliance  
does not appear to offer a mechanism for changing the default  
password from the vendor for the 'root' or 'vriotha' accounts.  
  
  
4. Mitigation and Remediation Recommendation  
  
The vendor has released an updated firmware (1.8.0.0) which  
remediates the described vulnerability. Firmware and release  
notes are available at:  
  
https://www.commscope.com/globalassets/digizuite/917216-faq-security-advisory-id-20210525-v1-0.pdf  
  
  
5. Credit  
  
This vulnerability was discovered by Jim Becher (@jimbecher)  
of KoreLogic, Inc.  
  
  
6. Disclosure Timeline  
  
2021.03.30 - KoreLogic submits vulnerability details to  
CommScope.  
2021.03.30 - CommScope acknowledges receipt and the intention  
to investigate.  
2021.04.06 - CommScope notifies KoreLogic that this issue,  
along with several others reported by KoreLogic,  
will require more than the standard 45 business  
day remediation timeline.  
2021.04.06 - KoreLogic agrees to extend disclosure embargo if  
necessary.  
2021.04.30 - CommScope informs KoreLogic that remediation for  
this vulnerability will be available inside of the  
standard 45 business day timeline. Requests  
KoreLogic acquire CVE number for this  
vulnerability.  
2021.05.14 - 30 business days have elapsed since the  
vulnerability was reported to CommScope.  
2021.05.17 - CommScope notifies KoreLogic that the patched  
version of the firmware will be available the week  
of 2021.05.24.  
2021.05.19 - KoreLogic requests CVE from MITRE.  
2021.05.19 - MITRE issues CVE-2021-33218.  
2021.05.25 - CommScope releases firmware 1.8.0.0 and associated  
advisory.  
2021.05.26 - KoreLogic public disclosure.  
  
  
7. Proof of Concept  
  
With the VMDK file mounted at the current working directory:  
$ sudo cat etc/shadow  
root:$1$root$.6wlmowMW0KVjst8z6Yqa.:17393:0:99999:7:::  
...  
  
admin:$6$AwyhYDBW$KS5q63LZBuQxPM2RG1N/.TvbaKC5gnoq8ERgMSBGms1EL9IZPrM4SscOvsF/FsoD1fgFjYrJF1as0BSYM0SVa0:17667:0:99999:7:::  
  
vriotha:$6$c4jEcmjj$uDjuSxfkzd0QHt/MAGnPJ798izuVhq11MSmkS3iXtDg.iqSumzou4.HauYOrSIYl5JdQlrbZAL7PAkPfrxcxH0:18626:0:99999:7:::  
  
$ egrep '^root|^admin|^vriotha' etc/passwd  
root:x:0:0:root:/root:/bin/bash  
admin:x:1001:1001::/home/admin:/VRIOT/ops/scripts/ras  
vriotha:x:1003:1003::/home/vriotha:/usr/bin/rssh  
  
/VRIOT/ops/scripts/haN1/n1_ha.py:  
scpstr = "vriotha@"+slave_ip+":/tmp/authkey >/dev/null 2>&1"  
#call(['sshpass','-p','"nplus1user"','scp','-o','StrictHostKeyChecking=no','/etc/corosync/authkey',scpstr])  
os.system("  
".join(['sshpass','-p','"nplus1user"','scp','-o','StrictHostKeyChecking=no','/etc/corosync/authkey',scpstr]))  
...  
### Call slave API to create user #####  
# HOTST_URL = "https://"+replace_ip+"/service/v1/createUser"  
# json_request = {  
# "username":"vriotha",  
# "password":"nplus1user"  
...  
os.system("  
".join(['sshpass','-p','"nplus1user"','scp','-o','StrictHostKeyChecking=no','/etc/corosync/authkey',scpstr]))  
  
/VRIOT/ops/scripts/entrypoint.py:  
userpwd = 'useradd vriotha ; echo vriotha:nplus1user | chpasswd >/dev/null 2>&1'  
os.system(userpwd)  
call(['usermod','-aG','sudo','vriotha'],stdout=devNullFile)  
call(['chsh','-s','/usr/bin/rssh','vriotha'],stdout=devNullFile)  
  
/VRIOT/ops/scripts/haN1/ha_slave.py:  
scpstr = "vriotha@"+master_ip+":/VRIOT/ha/"  
os.system("  
".join(['sshpass','-p','"nplus1user"','scp','-o','StrictHostKeyChecking=no','-r',scpstr,'/VRIOT/'+master_ip+'/']))  
  
  
  
The contents of this advisory are copyright(c) 2021  
KoreLogic, Inc. and are licensed under a Creative Commons  
Attribution Share-Alike 4.0 (United States) License:  
http://creativecommons.org/licenses/by-sa/4.0/  
  
KoreLogic, Inc. is a founder-owned and operated company with a  
proven track record of providing security services to entities  
ranging from Fortune 500 to small and mid-sized companies. We  
are a highly skilled team of senior security consultants doing  
by-hand security assessments for the most important networks in  
the U.S. and around the world. We are also developers of various  
tools and resources aimed at helping the security community.  
https://www.korelogic.com/about-korelogic.html  
  
Our public vulnerability disclosure policy is available at:  
https://korelogic.com/KoreLogic-Public-Vulnerability-Disclosure-Policy.v2.3.txt