본문 바로가기
2. Information Security/3. War Game

웹해킹 12번 (webhacking.kr old 12)

by H232C 2019. 11. 10.

1. 공격 유형 : Javascript

3. Write Up

Challenge 12 첫화면
View Page Source (javascript 내 특수문자 여러개가 난독화되어있음)
난독화 대상 문자열 분류 (;) 문자열을 기준으로 분류함
Undefine 확인 (하위 문자열 어딘가가 맞지않는듯?)
하위 문자열 중 (゚Д゚) ['_'] 만 표기해봄 (Function () 확인)
하위 문자열 중 ((゚Д゚) ['_']) 제외 후 나머지 문자열 삽입 (복호화된 javascript 소스코드 확인)

- 소스코드 해석
1. ck 파라메터 값을 받아서 '=' 문자열을 기준으로 substr을 이용하여 분리함 (=뒤 문자열 -> ?ck="페이로드")
2. enco 변수에 charcode 1~122에 해당하는 값 삽입 (  !"#$%&'()*+,-./0123456789:;<�=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxy)
3. enco_x Function은 인자dls fromcharcode(문자열의 ascii값) 'x'를 받아서 charcodeat(x) -> 문자열값으로 돌려줌
4. if문에서 ck값이 String.fromCharCode(enco_(240)........  값과 돌일하다면 Solve!
5. 25번줄의 document.write에 if문 비교
대상문을 적어보면

해당 값을 ck 파라메터에 전달 시 Solve

 

댓글