Title:
ACSA-2013-020 - DLink Telnet access via hardcoded Alphanetworks and image_sign
Author:
Andrei Costin of "FIRMWARE.RE" project
andrei@firmware.re
andrei@andreicostin.com
Vulnerability discovered using "FIRMWARE.RE" platform/service
Security advisory numbering:
ACSA-2013-020
CVE (to be assigned)
Report timeline:
28 October 2013 - Discovery
28 October 2013 - Trying to establish 'product security' contact @ DLink
29 October 2013 - CVE request to MITRE
Vendor(s):
DLink
Product(s):
DIR412
DIR645A1
DIR865L
dap1522
dap2555
dap3525
dir300b
dir412
dir605L
dir645
dir815
dir865L
Firmware(s):
"DIR412A1_FW114WWb02.bin"
"DIR645A1_FW102B08_BETA.zip"
"DIR645A1_FW103RUB08.bin"
"DIR865L_A1_firmware_100b24.zip"
"dap1522_revB_FW_200.zip"
"dap1522_revB_FW_201.zip"
"dap1522_revB_FW_203b.bin"
"dap2555_FW_100.zip"
"dap2555_FW_111.zip"
"dap2555_FW_120.zip"
"dap3525_FW_101.zip"
"dap3525_FW_111.zip"
"dir300b_v2.06_b9fe.bin"
"dir412_FW_109b06CA_beta.zip"
"dir605L_FW_113.zip"
"dir645_FW_101.zip"
"dir645_FW_102.zip"
"dir645_FW_103.zip"
"dir815_FW_101.zip"
"dir815_FW_102.bin"
"dir865L_fw_102.bin"
Details:
The affected products and firmwares enable telnetd on the device with hardcoded credentials in one of the below fashions:
telnetd -l "/usr/bin/login" -u Alphanetworks:$image_sign -i br0 &
telnetd -l "/usr/sbin/login" -u Alphanetworks:$image_sign -i $lf &
telnetd -l /usr/sbin/login -u Alphanetworks:$image_sign -i br0 &
Most commonly, the telnetd daemon above is started from at init stage:
/etc/init0.d/S80telnetd.sh
The username is constant as can be seen 'Alphanetworks'
The password varies according to device and firmware revision and is stored as $image_sign variable.
$image_sign variable is obtained as follows:
image_sign=`cat /etc/config/image_sign`
For the affected devices, the following passwords were retrieved and can be directly used by the attackers:
wapnd03cm_dkbs_dap2555
wapnd04cm_dkbs_dap3525
wapnd15_dlob_dap1522b
wrgac01_dlob.hans_dir865
wrgn23_dlwbr_dir300b
wrgn28_dlob_dir412
wrgn39_dlob.hans_dir645
wrgn39_dlob.hans_dir645_V1
wrgnd08_dlob_dir815
Each hardcoded password can be easily mapped to corresponding device and firmware as follows:
wapnd03cm_dkbs_dap2555
"dap2555_FW_111.zip"
"dap2555_FW_100.zip"
"dap2555_FW_120.zip"
wapnd04cm_dkbs_dap3525
"dap3525_FW_111.zip"
"dap2555_FW_120.zip"
wapnd15_dlob_dap1522b
"dap1522_revB_FW_203b.bin"
"dap1522_revB_FW_201.zip"
"dap1522_revB_FW_200.zip"
wrgac01_dlob.hans_dir865
"DIR865L_A1_firmware_100b24.zip"
"dir865L_fw_102.bin"
wrgn23_dlwbr_dir300b
"dir300b_v2.06_b9fe.bin"
wrgn28_dlob_dir412
"dir412_FW_109b06CA_beta.zip"
"DIR412A1_FW114WWb02.bin"
wrgn39_dlob.hans_dir645
"DIR645A1_FW102B08_BETA.zip"
"dir645_FW_102.zip"
"dir645_FW_101.zip"
"DIR645A1_FW103RUB08.bin"
"dir645_FW_103.zip"
wrgn39_dlob.hans_dir645_V1
"DIR645A1_FW103RUB08.bin"
"dir645_FW_103.zip"
wrgnd08_dlob_dir815
"dir815_FW_101.zip"
"dir815_FW_102.bin"
This vulnerability seems to be discovered by other teams in other products of DLink according to "Related reports" section.
To best of our knowledge, we couldn't track down CVEs for "Related reports" section.
Related reports:
http://www.s3cur1ty.de/node/707
https://github.com/rapid7/metasploit-framework/pull/1648
https://github.com/m-1-k-3/metasploit-framework/blob/76e8d1415140cd83663d763d122c50a51aa0c93b/data/wordlists/dlink_telnet_backdoor_userpass.txt
About the author/project:
Firmware.RE is part of the Firmware Genome Project.
Firmware.RE is a free online service that:
- unpacks, scans and analyzes almost any firmware package and facilitates the quick detection of vulnerabilities, backdoors and all kinds of embedded malware.
- facilitates firmware mounting, modification, loading and emulation.
- facilitates firmware vulnerability and backdoor discovery.
- helps secure your embedded and internet-of-things devices.