TryHackMe | CyberHeroes WriteUp
Merhaba, bu yazımda TryHackMe platformunda yer alan “CyberHeroes” isimli meydan okumanın çözümünü göstereceğim. Meydan okumanın açıklamasında kendimi ispatlayabilmem için giriş yapmanın bir yolunu bulmam gerektiği yazıyor.
Hızlı bir göz gezdirmenin ardından login.html sayfasının kaynak kodunda aşağıdaki javascript kodunu buldum.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
function authenticate() {
a = document.getElementById('uname');
b = document.getElementById('pass');
const RevereString = str => [...str].reverse().join('');
if (a.value == "h3ck3rBoi" & b.value == RevereString("54321@terceSrepuS")) {
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById("flag").innerHTML = this.responseText;
document.getElementById("todel").innerHTML = "";
document.getElementById("rm").remove();
}
};
xhttp.open("GET", "RandomLo0o0o0o0o0o0o0o0o0o0gpath12345_Flag_" + a.value + "_" + b.value + ".txt", true);
xhttp.send();
} else {
alert("Incorrect Password, try again.. you got this hacker!");
}
}
Burada kullanıcı adı ve parolanın doğrulandığını görüyoruz. Doğrulama sonunda ise bayrağı bir dosyadan alıp bize veriyor. Kullanıcı adını doğrudan kopyalayıp forma ekliyorum. Parolayı ise ters çevirip form’a ekliyorum ve giriş yaptıktan sonra bayrağı bize veriyor.
1
2
Kullanıcı adı: h3ck3rBoi
Parola: SuperSecret@12345
Bu meydan okumayı bir kaç ay önce abonelere özel kısma eklemişlerdi. Nedendir bilinmez tekrar herkese açık hale getirmişler. Herhalde aboneler için fazla sıkıcı olduğunu düşündüler.