2주차_Webhacking 과제4( webhacking.kr / old-12 )

2023. 9. 21. 00:49SWLUG/web hacking

 2주차 마지막 문제이다.

오 이렇게 생겼어..? 일단 개발자 도구를 열어봐야겠다.

 

날 약올리는 듯한 생김새 .. 무슨 의미일까?

근데 일단 이건 http 같으니까 넘긴다.

소스로 들어가서 봤는데 contentscript.js가 있다. 촤라락 쓰여잇는데 chrome 어쩌고 윗줄에 쓰인 걸 보고 크롬으로도 들어가 봤다 . 

그런데 이상한 점을 발견했다.

크롬으로 들어가니 소스에 contentscript.js 가 없다. (crosswebex__rw_chrome_ext - crosswebex가 존재하면 chrome 에서는 읽고 쓸 수 있다는 건가 ? )

 

crosswebex가 뭔지 몰랐는데 확장 보안프로그램이었군.. 하고 확인할 수 있었고, 이 이상하게 생긴 그림이 아마 문제를 푸는 코드인것같다.

 

도움을 받아야겠다..

구글에게 물어보니 디코더, 인코더가 따로 존재하나보다.

AAencode 난독화가 적용된 코드라고 한다.

aadecode - Decode encoded-as-aaencode JavaScript program. ['_'] (cat-in-136.github.io)

 

aadecode - Decode encoded-as-aaencode JavaScript program. ['_']

aadecode - Decode encoded-as-aaencode JavaScript program. (゚Д゚) ['_'] Enter ...

cat-in-136.github.io

그대로 복붙했는데 왜 error가 뜨는거니..? 대체? 

➡️ 마지막 표정을 지워줘야지 난독화가 풀린다고 한다. ( 이유가 뭐니? 괄호가 끝나서)

근데 난 계속 에러 아님 헬로 자바스크립트만 뜬다..

일단 문제를 풀기위해 가져왔다.

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";
}

 

➡️ 내가 이걸 모르겠는 이유는 자바스크립트를 안배웠기 때문일까..?

if 문으로 되어있고 , 문자열을 더하라는건 알겠는데 그리고 ~~~~~~도 더하라는건 알겟는데.. 그리고 ck가 어떤 값을 만족할 경우에 마지막에 php해서 하라는 것 같은데 안에 들어갈게 뭔지 모르겠다.

이것도 도움을 받아보자.

 

  • ck : uri에서 = 뒤의 값 (파라미터에 전달한 값)
  • enco : 242자의 문자열
  • if문 문제를 풀기위한 조건

 

flag :?=youaregod~~~~~~~!

 

내 추측 : 한칸단 2단위고, 240=y, 220=o, 232=u, 192=a, 226=r, 200=e, 204=g, 220=o, 198=d 이다.

 

다른 문제들에 비해 확실히 이 문제가 낯선게 많아서 그런지 까다롭게 느껴졌다.😂

 

 

[ 참고 자료 ]

[Webhacking.kr] old-12번 문제 풀이 (tistory.com)

 

[Webhacking.kr] old-12번 문제 풀이

대놓고 javascript challenge라고 한다. javascript 문제가 틀림없으니 개발자 도구를 열어보자 와 욕나올 뻔했다 ㅎㅎ 열심히 난독화 해둔 이 javascript는 대체 무슨 내용일까... 우선 보기가 너무 힘드니,

tomatohj.tistory.com

Webhacking.kr 12번 풀이 :: 호빵둥이 IT Blog (tistory.com)

 

Webhacking.kr 12번 풀이 :: 호빵둥이 IT Blog

안녕하세요! 오늘은 워게임, Webhacking.kr Chellenge 12번 문제를 풀어보도록 하겠습니다. 이번 문제는 자바스크립트의 난독화를 사용한 문제입니다. #문제 보기 https://webhacking.kr/challenge/code-3/ Challenge 1

h-bread.tistory.com