雄邁網路攝影機遠程開啟telnet研究

來源:互聯網
上載者:User

標籤:image   環境變數   class   list   網路攝影機   busybox   end   close   本地   

年前買了個雄邁網路攝影機,對家裡進行安防監控,該網路攝影機其實就是個安裝了linux系統的嵌入式裝置,到手後,對於其未預設開啟telnet服務感到很是不爽,所以打算hack之最簡單的辦法其實是ttl連上去後開啟,其次就是下載韌體後直接更改韌體,在啟動指令碼裡增加啟動telnetd的語句後刷進去,但是因為是新買的,不想失去保修,而且也想趁機多研究學習下,所以只考慮有沒有遠程開啟的辦法 從韌體開始下手,先去官網下載該網路攝影機的最新韌體下載完後本地解壓,查看了下busybox的定義列表,確實有telnetd,並且/bin下面也建立了telnetd的別名,也就是說是支援telnet服務的,只是沒開啟而已在韌體檔案中搜尋了下telnet的配置,也沒找到相關配置,此路不太可行 從官方客服下手,在花言巧語之下,找官方要到了telnet開啟工具opentelnet,輸入目標裝置ip後就能遠程開啟裝置的telnet服務但是該工具有幾個限制1.只可以臨時開啟telnet,網路攝影機重啟後就得重新開啟2.該工具使用必須輸入一個一次性的超級密碼,而這個密碼得找客服才能算出來3.該工具會檢測輸入ip地址,只能對內網裝置使用超級密碼這個比較簡單,簡單研究下後就破解掉了,內網使用也簡單,本地做個連接埠映射也繞過了只是暫時對telnet的臨時開啟沒辦法,每次重啟再去開telnet也麻煩啊所以開始研究永久開啟telnet的辦法永久開啟有兩種途徑1.就和臨時開啟telnet一樣,系統本身支援永久開啟的命令2.系統沒有支援永久開啟的命令,但是可以將telnetd加到啟動指令碼裡去,達到系統啟動時自動啟動telnet服務的目的 先對工具抓包,發現是和網路攝影機的9530連接埠進行通訊,發送了OpenTelnet:OpenOnce的命令給網路攝影機然後telnet登陸上網路攝影機,使用命令netstat -ap查看是誰在用9530這個連接埠 
# netstat -apActive Internet connections (servers and established)Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    tcp        0      0 0.0.0.0:34567           0.0.0.0:*               LISTEN      1190/Sofiatcp        0      0 0.0.0.0:554             0.0.0.0:*               LISTEN      1190/Sofiatcp        0      0 0.0.0.0:www             0.0.0.0:*               LISTEN      1190/Sofiatcp        0      0 0.0.0.0:telnet          0.0.0.0:*               LISTEN      1169/telnetdtcp        0      0 0.0.0.0:23000           0.0.0.0:*               LISTEN      1190/Sofiatcp        0      0 0.0.0.0:9530            0.0.0.0:*               LISTEN      1165/dvrHelper

dvrHelper

這是個啥玩意呢?

因為網路攝影機的busybox裡命令殘缺不全,在裡面找東西和分析都麻煩的很,所以還是在本地韌體裡分析吧。

在韌體檔案夾裡搜尋到dvrHelper,發現是dvrbox的連結,然後尋找dvrbox中的文本

除了找到OpenTelnet:OpenOnce之外,還找到了OpenTelnet:Forever

顧名思義,難不成這個語句就是永久開啟telnet的語句?

將之前的opentelnet工具改改,把發送的命令由OpenOnce改成OpenTelnet:Forever

執行後重啟網路攝影機,telnet服務還是沒啟動,shit,看來是弄錯了什麼東西,或者系統根本不支援telnet的永久開啟?此路已經不通,掉轉方向繼續進行研究  開始尋找系統的可寫目錄,僅找到以下三個/mnt/mtd/utils/var/tmp其中/utils是記憶體系統,重啟後會清空,所以不是此目錄/var/tmp也是臨時檔案夾,重啟會刪除,所以也不是此目錄本來試圖修改/etc/init.d檔案夾下的rcS檔案,做到開機啟動telnetd但是該檔案是唯讀,研究許久都沒發現修改該檔案或者其子過程的辦法/mnt/mtd呢? 研究半天/mnt/mtd,也是毫無頭緒,改倒是可以改,但是沒法添加到啟動項中去不過也可能是使用檔案作為設定檔,啟動檢測到檔案存在時則執行telnetd,否則不執行,這點只能從韌體中找答案仍然是研究dvrbox檔案
#strings dvrbox |grep telnettelnetctrlLIBDVR : Get telnetctrl Fialed, telnetctrl=1macGuarder: Open telnetd Forever killall telnetdmacGuarder: Close telnetd Forever

難道telnetctrl就是該配置參數名?

使用telnetctrl在韌體檔案夾下全域搜尋發現僅在armbenv中再次提到了該參數那armbenv是個什麼呢?執行armbenv命令,提示使用-r參數列印環境資訊繼續執行armbenv -r根據結果以及個人的猜測,我認為armbenv是設定系統啟動環境變數用的另外其有一個-s參數,可以設定param,要不試試?執行以下命令 armbenv -s telnetctrl 1提示成功再執行armbenv -r發現telnetctrl已經存在重啟直接telnet成功! 備忘1.armbenv工具應該是讀寫uboot配置的工具,所以在檔案系統裡當然找不到對應的配置記錄了2.telnet的帳號密碼擷取其實很簡單,把韌體解壓後,查看romfs-x.cramfs\etc\passwd檔案,裡面有加密後的密碼串,把密碼串在搜尋引擎裡面搜下,就找到了對應的密碼雄邁這款網路攝影機的帳號密碼是 root xmhdipc

雄邁網路攝影機遠程開啟telnet研究

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.