HTML - disabled buttons
버튼이 눌리지 않는다.
f12로 페이지 소스를 본 다음,
<input disabled="" type="submit" value="Member access" name="authbutton">
이걸
<input type="submit" value="Member access" name="authbutton">
이렇게 하면 버튼이 활성화된다.
Javascript - Authentication
Javascript - Source
Javascript - Authentication 2
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | function connexion(){ var username = prompt("Username :", ""); var password = prompt("Password :", ""); var TheLists = ["GOD:HIDDEN"]; for (i = 0; i < TheLists.length; i++) { if (TheLists[i].indexOf(username) == 0) { var TheSplit = TheLists[i].split(":"); var TheUsername = TheSplit[0]; var ThePassword = TheSplit[1]; if (username == TheUsername && password == ThePassword) { alert("Vous pouvez utiliser ce mot de passe pour valider ce challenge (en majuscules) / You can use this password to validate this challenge (uppercase)"); } } else { alert("Nope, you're a naughty hacker.") } } } | cs |
Javascript - Obfuscation 1
1 2 3 4 5 6 7 8 9 10 11 12 13 | /* <![CDATA[ */ pass = '%63%70%61%73%62%69%65%6e%64%75%72%70%61%73%73%77%6f%72%64'; h = window.prompt('Entrez le mot de passe / Enter password'); if(h == unescape(pass)) { alert('Password accepté, vous pouvez valider le challenge avec ce mot de passe.\nYou an validate the challenge using this pass.'); } else { alert('Mauvais mot de passe / wrong password'); } /* ]]> */ | cs |
Javascript - Obfuscation 2
1 | var pass = unescape("unescape%28%22String.fromCharCode%2528104%252C68%252C117%252C102%252C106%252C100%252C107%252C105%252C49%252C53%252C54%2529%22%29"); | cs |
크롬의 콘솔을 이용해 구해주면 된다. use chrome console
Javascript - Native code
크롬 콘솔을 이용하자. 끝에 ()를 지워주고 .toString()을 사용하면 복호화된 코드를 얻을 수 있다.
Javascript - Obfuscation 3
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | function dechiffre(pass_enc) { var pass = "70,65,85,88,32,80,65,83,83,87,79,82,68,32,72,65,72,65"; var tab = pass_enc.split(','); var tab2 = pass.split(','); var i, j, k, l = 0, m, n, o, p = ""; i = 0; j = tab.length; k = j + (l) + (n = 0); n = tab2.length; for (i = (o = 0); i < (k = j = n); i++) { o = tab[i - l]; p += String.fromCharCode((o = tab2[i])); if (i == 5) break; } for (i = (o = 0); i < (k = j = n); i++) { o = tab[i - l]; if (i > 5 && i < k - 1) p += String.fromCharCode((o = tab2[i])); } p += String.fromCharCode(tab2[17]); pass = p; return pass; } String["fromCharCode"](dechiffre("\x35\x35\x2c\x35\x36\x2c\x35\x34\x2c\x37\x39\x2c\x31\x31\x35\x2c\x36\x39\x2c\x31\x31\x34\x2c\x31\x31\x36\x2c\x31\x30\x37\x2c\x34\x39\x2c\x35\x30")); h = window.prompt('Entrez le mot de passe / Enter password'); alert(dechiffre(h)); | cs |
뭘 입력해도 가짜 패스워드만 나온다...
25행에 있는 헥스값을 아스키로 바꿔서 인증했더니 됐다. 뭐지
XSS - Stored 1
Flash - Authentication
http://challenge01.root-me.org/web-client/ch20/RootMe.swf
다운받는다.
플래시 디컴파일러 툴을 이용해 소스를 보면 된다.
모르겠다.
'WAR GAME > Root-Me.org' 카테고리의 다른 글
root-me.org [WEB - SERVER] 풀이 (0) | 2019.01.22 |
---|---|
root-me.org [APP - SYSTEM] ELF x86 - Race condition 풀이 (0) | 2019.01.22 |
root-me.org [STEGANOGRAPHY] Gunnm Squared 풀이 (0) | 2019.01.21 |
root-me.org [APP - SYSTEM] ELF x86 - Format string bug basic 3 풀이 (0) | 2019.01.21 |
root-me.org [APP - SYSTEM] ELF x86 - Format string bug basic 2 풀이 (0) | 2019.01.21 |