合天实验室CTF web100 Give Me Flag

web100 Give Me Flag


下载下来记事本打开:

发现是一堆乱码,但是看到

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('');
delete _

得到代码,简单审计,容易发现,还是两种解法:
1. 根据正则表达式,破解密码,很简单,然后在文本框内输入密码,获取flag。
2. 容易直接读出flag的值。
这里破解的密码是:be0f233ac7be98aa
最后容易得到flag。

本题的关键就是破解变量”_”。

你可能感兴趣的:(CTF)