SSD Advisory – HiSilicon multiple vulnerabilities
Credit to Author: Maor Schwartz| Date: Tue, 21 Feb 2017 07:44:16 +0000
Vulnerabilities Summary
The following advisory describes 2 vulnerabilities found in HiSilicon application-specific integrated circuit (ASIC) chip set firmware.
HiSilicon provides ASICs and solutions for communication network and digital media. These ASICs are widely used in over 100 countries and regions around the world. In the digital media field, HiSilicon has already released the SoC and solution for network surveillance, videophone, DVB and IPTV.
The vulnerabilities found in HiSilicon ASIC firmware are:
- Buffer overflow in built-in webserver
- Directory path traversal built-in webserver
The list of vendors working with HiSilicon is unknown. We manage to identify 55 different vendors, all of them are still vulnerable.
Here is example of 10 vendors using the HiSilicon application-specific integrated circuit (ASIC) chip set in their products (the full list can be found in the end of this report):
- http://www.vacron.com/products_CCTV_dvr.html
- http://www.gess-inc.com/gess/dvrs/
- http://www.jufenginfo.com/en/product-list.php?cid=10&pid=166&parid=175
- http://egpis.co.kr/egpis/product.php?category=AHD&category2=AHD_D
- http://optimus-cctv.ru/catalog/ahd-videoregistratory
- http://www.clearcftv.com.br/linha.php?l=5&ln=ahd
- http://click-cam.com/html2/products.php?t=2
- http://www.ccd.dn.ua/ahd-videoregistratory.html
- http://www.dhssicurezza.com/tvcc-ahd/dvr-ahd-720p/
- http://www.gigasecurity.com.br/subcategoria-gravadores-de-video-dvr
Credit
An independent security researcher Istvan Toth has reported this vulnerability to Beyond Security’s SecuriTeam Secure Disclosure program
Vendor response
We tried to communicate with the vendor through emails and twitter, over the course of several months, we were unable to get any response.
Vulnerabilities Details
Buffer overflow in built-in web server
The built-in web server is provided by the binary file Sofia, this binary is vulnerable to a buffer overflow and can be exploited to run shellcode (as root) on the device.
The web server does check the HTTP GET request size. To exploit the vulnerability, all you need to do is craft an HTTP GET request with an URL that contains “a”*299 + “xxxx” in it.
Where “xxxx” controls PC register (program flow). The hardware does not enable the NX bit, which makes it possible to execute the shellcode found in the “a”*299 section. However, a stack address leak is needed in order to defeat ASLR.
Directory traversal built-in web server
The built-in web server suffers from a directory path traversal vulnerability which can be exploited to leak arbitrary files.
The vulnerability is also found in the web server binary Sofia
which is running with root privileges, therefore, exploiting this directory traversal can be used to read from device file system – which makes it easy to bypass the ASLR.
The web server do not filter HTTP GET request. To exploit the vulnerability, all you need to do is to craft HTTP GET request with “../../etc/passwd HTTP” to read file “/etc/passwd“. Furthermore, dir listing is enabled as well.
Proof of Concept
By exploiting the directory traversal built-in web server we can bypass ASLR needed to exploit the buffer overflow. The file system located at /proc contains a lot of information about running processes, e.g. contains memory mappings. Therefore requesting “GET ../../proc/[pid]/maps HTTP” will read the memory mapping of process whose pid is [pid]. By observing the memory mapping patterns it is enough to defeat ASLR (offset from mem map base is the same, even in different versions).
List of vulnerable vendors and products:
The following is a long list of vulnerable vendor/devices, it is by no means exhaustive or complete.
- http://www.luxvision.com.br/category/dvr-ahd/
- http://www.yesccd.com/?products/DigitalVideoRecorder.html
- http://www.tvzsecurity.com.br/produtos/31/Stand-Alone
- http://showtec.com.br/dv-stand-alone/
- http://www.ecotroniccftv.com.br/index.php
- http://starligh.com/cctv/grabadoras.html
- http://www.activepixel.us/ap-0404-ahd.html
- http://j2000.ru/cat/DVR/
- http://partizan.global/product/ahd-video-surveillance/ahd-dvrs.html
- http://kenik.pl/index.php/tag/rejestrator/
- http://www.redebsd.com.br/categoria-25-gravacao-digital
- http://www.idvr.com.br/produtos-index/categorias/2374896/dvr___ahd_lancamento.html
- http://www.visagems.com.br/prd.asp?idP=1119575
- http://www.braskell.com.br/dvr.html
- http://www.segvideo.com/segvideo/nvr-hvr.html
- http://www.neocam.com.br/cameras-cftv/stand-alone
- http://www.venetian.com.br/categoria/dvr-hvr-04-canais/
- http://www.cctvkits.co.uk/oyn-x-orpheus-hdtvi-4-channel-dvr-1080p.html
- http://ecopower-brasil.com/produto/DVR-HSBS-HSBS%252d3604.html
- http://www.vixline.com.br/vitrine-de-produtos/dvrs/
- http://aliveelectronics.com.br/category/gravadores-de-video/
- http://www.issl.com.hk/CCTV_DVRCYVIEW1.htm
- http://idview.com/IDVIEW/Products/DVR/dvr-Analog.html
- http://www.vonnic.ca/products376e.html?cat=13
- http://polyvision.ru/polyvision/catalog_gibridnye.html
- http://altcam.ru/video/hd-videonabludenie/
- http://cyfron.ru/catalog/dvr/
- http://www.jassun.ru/home/products/f_FormFactor[like]=%D0%92%D0%B8%D0%B4%D0%B5%D0%BE%D1%80%D0%B5%D0%B3%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%82%D0%BE%D1%80&f_price[from]=2450&f_price[to]=49000&page=1&limit=0
- http://www.t54.ru/catalog/videoregistratory/ahd_analogovye_registratory/
- http://www.hiview.co.th/index.php?mo=3&art=42195125
- http://www.kkmoon.com/usb-fan-271/p-s413-uk.html
- http://qvisglobal.com/ahd-tvi-960h-hybrid
- https://www.beylerbeyiguvenlik.com.tr/kayitcihazlari-beylerbeyi.html
- http://www.novicam.ru/index.php?route=product/product&product_id=429
- http://www.espuk.com/uploads/catalogue/HDview%20catalogue%202015.pdf
- http://www.ebay.com/itm/SNOWDON-8-CHANNEL-PROFESSIONAL-CCTV-NETWORK-DVR-MACHINE-SYSTEM-H-264-1TB-500GB-/172250300884
- http://giraffe.by/catalog/tsifrovye-videoregistratory
- http://www.winpossee.com/en/list/?17_1.html
- http://tesamed.com.pl/rejestrator-cyfrowy-vtv-n-1016-vtvision-dvr-16-kanalowy-p-532.html
- http://hiq-electronics.ru/videoregistratory
- http://www.eltrox.pl/catalogsearch/result/?q=easycam+rejestrator&order=v_117002&dir=desc
- http://www.x5tech.com.tr/?cmd=UrunListe&GrupNo=265&t=0
- http://bigit.ro/dvr-16-canale-hybrid-full-d1-asrock-as-616tel.html
- http://secur.ua/videonablyudenie/ustroystva-zapisi/dvr/?brand_vreg=1557
- http://www.divitec.ru/videoregistratoryi-divitec-idvr/