자바스크립트에 관련된 문제인가보다 (・ิω・ิ)
소스코드 보기 !
세미콜론을 기준으로 이모티콘들을 정리해보았다.
마지막 세미콜론은 엄청 많은 이모티콘들끝에 쓰여져있었다. (함수 예측)
script 끝 부분에 쓰인 괄호의 짝을 찾아, 괄호안의 이모티콘들만 console창에 입력! (VS code를 이용하면 괄호 짝을 쉽게 찾을 수 있다)
+) 다른 방법으로 풀기
console창에 함수명을 입력하면, 함수의 내용을 볼 수 있다.
함수 f를 만들고, 함수명(f)만 입력해보았다.
또한, 코드상에서 함수를 만들었다면 함수를 호출할 것이다. (대부분 마지막부분에 호출)
이 문제도 마찬가지로 코드 끝부분에서 함수를 호출했을것이라고 예측하고, 마지막에 쓰인 ('_');를 제외한 앞부분을 console창에 입력!
(function anonymous(
) {
var enco='';
var enco2=126;
var enco3=33;
var ck=document.URL.substr(document.URL.indexOf('='));
for(i=1;i<122;i++){
enco=enco+String.fromCharCode(i,0);
}
function enco_(x){
return enco.charCodeAt(x);
}
if(ck=="="+String.fromCharCode(enco_(240))+String.fromCharCode(enco_(220))+String.fromCharCode(enco_(232))+String.fromCharCode(enco_(192))+String.fromCharCode(enco_(226))+String.fromCharCode(enco_(200))+String.fromCharCode(enco_(204))+String.fromCharCode(enco_(222-2))+String.fromCharCode(enco_(198))+"~~~~~~"+String.fromCharCode(enco2)+String.fromCharCode(enco3)){
location.href="./"+ck.replace("=","")+".php";
}
})
-> console창에 출력된 자바스크립트 코드
charCodeAt : 문자열 중 하나를 선택하여 아스키코드 번호로 변환해주는 함수.
fromCharCode : 아스키코드번호를 받아 문자열을 구성해주는 함수.
(if문을 입력하면 undefined가 출력된다..,)
코드를 실행하면 문제 해결 ~~!~!!
+) 이런 이모티콘 난독화 사이트
인코딩 : http://utf-8.jp/public/aaencode.html
디코딩 : https://cat-in-136.github.io/2010/12/aadecode-decode-encoded-as-aaencode.html
'WEB > webhacking.kr (old)' 카테고리의 다른 글
webhacking.kr 16번 (0) | 2020.01.27 |
---|---|
webhacking.kr 14번 (0) | 2020.01.27 |
webhacking.kr 11번 (0) | 2020.01.26 |
webhacking.kr 10번 (0) | 2020.01.21 |
webhacking.kr 6번 (0) | 2020.01.20 |