攻防世界之NaNNaNNaNNaN-Batman
題目
WP:
很顯然是一個包含js的檔案,將檔名字尾改外.html瀏覽器開啟
沒有反應,檢視原始碼如下
基本上是亂碼,最後有個eval()函式,執行了_變數,我們將eval()改成alert()將_變數彈出
eval() 函式:可計算某個字串,並執行其中的的 JavaScript 程式碼。
alert() 函式:用於顯示帶有一條指定訊息和一個確定按鈕的警告框。
再次用瀏覽器開啟檔案,出現以下彈窗
將上述程式碼調整後得到如下
function $() {
var e = document.getElementById("c").value;
if (e.length == 16)
if (e.match(/^be0f23/) != null)
if (e.match(/233ac/) != null)
if (e.match(/e98aa$/) != null)
if (e.match(/c7be9/) != null) {
var t = ["fl", "s_a", "i", "e}"];
var n = ["a", "_h0l", "n"];
var r = ["g{", "e", "_0"];
var i = ["it'", "_", "n"];
var s = [t, n, r, i];
for (var o = 0; o < 13; ++o) {
document.write(s[o % 4][0]);
s[o % 4].splice(0, 1)
}
}
}
document.write('<input id="c"><button οnclick=$()>Ok</button>');
delete _
分析程式碼可知,輸入c標籤內的內容必須為16長度,且滿足四個正規表示式
計算四個正規表示式,我們可以發現符合條件的字串be0f233ac7be98aa
將alert改回eval,並用瀏覽器解析後在輸入框中提交該字串
得到flag啦~
相關文章
- 攻防世界web高手進階之blgdelWeb
- hackme 【攻防世界】Reverse
- 攻防世界-web2Web
- 攻防世界php2PHP
- 攻防世界web題ics-06Web
- 攻防世界 Replace Reverse二星題
- 攻防世界web高手進階18(mfw)Web
- xctf攻防世界—Web新手練習區 writeupWeb
- 攻防世界 Reverse高手進階區 2分題 Mysterious
- 攻防世界 web高手進階區 10分題 urlWeb
- 攻防世界 gametime 使用IDA pro+OD動調GAM
- 攻防世界 Misc高手進階區 5分題 picture2
- 攻防世界 Misc高手進階區 5分題 側通道初探
- 攻防世界 Misc高手進階區 2分題 心儀的公司
- XCTF攻防世界--(新手賽區)第3題快來圍觀學習!
- XCTF攻防世界--(新手賽區)第4題快來圍觀學習!
- XCTF攻防世界--(新手賽區)第2題快來圍觀學習!
- WAF攻防之SQL隱碼攻擊篇SQL
- 淺談RASP技術攻防之基礎篇
- Python網路攻防之第二層攻擊Python
- 攻防論道之啟動篇|做好這三大基礎工作,攻防演練方能事半功倍
- [WAF攻防]從WAF攻防角度重看sql注入SQL
- Web前端攻防Web前端
- 淺談RASP技術攻防之實戰[環境配置篇]
- AD域安全攻防實踐(附攻防矩陣圖)矩陣
- Web之前端攻防Web前端
- ShderGraph學習之球形世界效果
- 欲知己之所防,先知彼之所攻——論Hook 技術的攻防對抗Hook
- 什麼是攻防演練?攻防演練包含哪些專案?
- 淺談RASP技術攻防之實戰[程式碼實現篇]
- 滲透攻防演練之網站存在漏洞該如何解決網站
- Android逆向之旅---Android應用的安全的攻防之戰Android
- 網路攻防路2
- Qt程式設計之悲慘世界QT程式設計
- 攻防論道之總結篇 | 往者不可諫,來者猶可追
- 星閃:咫尺之間,聯接智慧世界
- 有趣的程式碼攻防戰
- (攻防sj)web unserialize3Web