前言
遇到一個站,后端是 Node.js 寫的,對于這種類型的站點,一般比較難 getshell,但也實現(xiàn)了最終的目標,拿到后臺權(quán)限
信息搜集
先進行常規(guī)的信息搜集,子域名掃描、端口掃描、目錄掃描等
這個站后端腳本語言是 Node.js
目錄探測發(fā)現(xiàn) 404 界面也極像 Node.js 的 404 頁面,后面重點關(guān)注 js 文件
【一一幫助網(wǎng)絡(luò)安全提升點我一一】
①網(wǎng)絡(luò)安全學習路線
②20份滲透測試電子書
③安全攻防357頁筆記
④50份安全攻防面試指南
⑤安全紅隊滲透工具包
⑥網(wǎng)絡(luò)安全必備書籍
⑦100個漏洞實戰(zhàn)案例
⑧安全大廠內(nèi)部視頻資源
⑨歷年CTF奪旗賽題解析
突破接口
在進行目錄掃描的時候,發(fā)現(xiàn)了一個有用的目錄:
前面說了,重點關(guān)注 js 文件,查看頁面源代碼,發(fā)現(xiàn)一個有趣的 js 文件,為什么說這個文件有趣呢?因為這個 js 的文件名和產(chǎn)品名一致
進去之后發(fā)現(xiàn)了新世界
這個網(wǎng)站的前端界面都是通過在 js 文件里 document.write 函數(shù)構(gòu)造
頁面動態(tài)渲染的數(shù)據(jù)是通過 js 函數(shù)中 ajax 請求獲取
$.ajax({
url: host + "/agent/getPlayerInfo",
type: "post",
dataType: 'json',
headers: {"content-type" : "application/json"},
data: JSON.stringify({"uid" : uid})
}).done(function(data){
console.log(data);
核心的所有功能接口都是未授權(quán)訪問的,根據(jù)不同的 js 文件里的 ajax 請求,使用 postman 直接構(gòu)造數(shù)據(jù)包,即可實現(xiàn)后臺相對應的功能
登陸后臺
通過上述接口,可以通過用戶的 uid 獲取用戶的用戶名,將所有的用戶名作為字典,放入 burp 爆破弱口令
分析后臺登陸包,密碼被加密了
在 js 中找到加密方式,截取的是 16 位的 md5
根據(jù) js 代碼里的 if 邏輯可以很清楚的看到:返回包 code 值為 101100 是密碼錯誤,200 就是登陸成功,
成功爆破出多個用戶存在弱口令
密碼錯誤:
密碼正確:
進入管理員后臺
利用爆破的用戶登陸后臺,發(fā)現(xiàn)不是管理員權(quán)限
但是繼續(xù)閱讀 js 代碼,發(fā)現(xiàn)存在如下的代碼:登陸成功后 data.code == 200,再根據(jù)返回包的 agentClass 值,可以控制顯示的是管理員界面還是客服界面還是一級、二級用戶界面。由于是前端判斷且通過 document.write 函數(shù)渲染界面,因此可以前端繞過,直接修改返回包中的 agentClass 值為管理員的值,就可以進入到管理員界面,且后端所有接口也都如上面一樣不存在鑒權(quán),因此管理員的后臺所有功能都可以使用 agentClass=1 時:
agentClass=2-4 時:
那么只要修改返回包的 agentClass=1 即可
成功進入管理員后臺
結(jié)語
到此結(jié)束此次的學習。文章來源:http://www.zghlxwxcb.cn/news/detail-677149.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-677149.html
到了這里,關(guān)于【網(wǎng)絡(luò)安全】記一次網(wǎng)站站點滲透的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!