Season 1
-
Js challenge라고 하니, 개발자 코드로 살펴봤다. ゚ω゚ノ= /`m´)ノ ~┻━┻ //*´∇`*/ ['_']; o=(゚ー゚) =_=3; c=(゚Θ゚) =(゚ー゚)-(゚ー゚); (゚Д゚) =(゚Θ゚)= (o^_^o)/ (o^_^o);(゚Д゚)={゚Θ゚: '_' ,゚ω゚ノ : ((゚ω゚ノ==3) +'_') [゚Θ゚] ,゚ー゚ノ :(゚ω゚ノ+ '_')[o^_^o -(゚Θ゚)] ,゚Д゚ノ:((゚ー゚==3) +'_')[゚ー゚] }; (゚Д゚) [゚Θ゚] =((゚ω゚ノ==3) +'_') [c^_^o];(゚Д゚) ['c'] = ((゚Д゚)+'_') [ (゚ー゚)+(゚ー゚)-(゚Θ゚) ];(゚Д゚) ['o'] = ((゚Д゚)+'_') [゚Θ゚];(゚o゚)=(゚Д゚) ['c']+(゚Д゚) ['o']+(゚ω゚ノ ..
Old - 12 Write UpJs challenge라고 하니, 개발자 코드로 살펴봤다. ゚ω゚ノ= /`m´)ノ ~┻━┻ //*´∇`*/ ['_']; o=(゚ー゚) =_=3; c=(゚Θ゚) =(゚ー゚)-(゚ー゚); (゚Д゚) =(゚Θ゚)= (o^_^o)/ (o^_^o);(゚Д゚)={゚Θ゚: '_' ,゚ω゚ノ : ((゚ω゚ノ==3) +'_') [゚Θ゚] ,゚ー゚ノ :(゚ω゚ノ+ '_')[o^_^o -(゚Θ゚)] ,゚Д゚ノ:((゚ー゚==3) +'_')[゚ー゚] }; (゚Д゚) [゚Θ゚] =((゚ω゚ノ==3) +'_') [c^_^o];(゚Д゚) ['c'] = ((゚Д゚)+'_') [ (゚ー゚)+(゚ー゚)-(゚Θ゚) ];(゚Д゚) ['o'] = ((゚Д゚)+'_') [゚Θ゚];(゚o゚)=(゚Д゚) ['c']+(゚Д゚) ['o']+(゚ω゚ノ ..
2021.05.19 -
페이지를 보니, 엄청 긴 막대기 안에 O이 있고 Goal 라인이 있었다. 코드를 살펴보니, O은 a태그였고 Onclick 이벤트가 설정되어있었다. O Onclick 이벤트가 한 줄로 되어있어서 따로 빼서 보기 좋게 분류했다. this.style.left=parseInt(this.style.left,10)+1+'px' if(this.style.left=='1600px'){ this.href='?go='+this.style.left } 클릭할 때마다 1px 씩 이동한다. 만약 O의 위치가 1600px이면, a 태그의 href 속성이 ?go=1600px으로 된다. 나는 일단 ?go=1600px을 서버에 요청해봤다. 결과는 no hack이 출력되었다. 분명 코드에선 ?go=1600px으로 이동하는데, 왜 안되는..
Old - 10 Write Up페이지를 보니, 엄청 긴 막대기 안에 O이 있고 Goal 라인이 있었다. 코드를 살펴보니, O은 a태그였고 Onclick 이벤트가 설정되어있었다. O Onclick 이벤트가 한 줄로 되어있어서 따로 빼서 보기 좋게 분류했다. this.style.left=parseInt(this.style.left,10)+1+'px' if(this.style.left=='1600px'){ this.href='?go='+this.style.left } 클릭할 때마다 1px 씩 이동한다. 만약 O의 위치가 1600px이면, a 태그의 href 속성이 ?go=1600px으로 된다. 나는 일단 ?go=1600px을 서버에 요청해봤다. 결과는 no hack이 출력되었다. 분명 코드에선 ?go=1600px으로 이동하는데, 왜 안되는..
2021.05.19 -
아무 것도 없이 소스코드만 던져줘서 코드를 확인하였다.
Old - 61 Write Up아무 것도 없이 소스코드만 던져줘서 코드를 확인하였다.
2021.05.17 -
가입과 로그인 기능이 있는 form이 나왔다. View-source가 나왔으니, 코드 상에 힌트가 있을거라 생각하여 코드를 확인하였다.
Old - 59 Write Up가입과 로그인 기능이 있는 form이 나왔다. View-source가 나왔으니, 코드 상에 힌트가 있을거라 생각하여 코드를 확인하였다.
2021.05.17 -
다운로드을 클릭하니, test.txt는 다운로드가 가능하였고, flag.docx은 다운로드가 불가능하였다. test123 qwer123 asdf234 test.txt 내용을 살펴보니, 의미를 알 수 없는 글자들이 있었다. 일단 힌트나 암호일 수도 있으니 참고만 하고, 개발자 도구로 다운로드 경로를 살펴보았다. test.txt의 다운로드 경로를 보니, 끝에가 =로 되어있었다. 이것을 보고 base64로 인코딩이 되어있다는 것을 판단하여 디코딩을 시도하였다. Base64 디코딩을 해보니, test.txt로 나왔다. 이를 통해 난 flag.docx를 base64로 인코딩하여 down 파라미터에 넣어서 서버로 요청하였다. 요청을 하니, flag.docx가 다운로드가 되었다. 다운로드한 파일을 열어보니, flag..
Old - 42 Write Up다운로드을 클릭하니, test.txt는 다운로드가 가능하였고, flag.docx은 다운로드가 불가능하였다. test123 qwer123 asdf234 test.txt 내용을 살펴보니, 의미를 알 수 없는 글자들이 있었다. 일단 힌트나 암호일 수도 있으니 참고만 하고, 개발자 도구로 다운로드 경로를 살펴보았다. test.txt의 다운로드 경로를 보니, 끝에가 =로 되어있었다. 이것을 보고 base64로 인코딩이 되어있다는 것을 판단하여 디코딩을 시도하였다. Base64 디코딩을 해보니, test.txt로 나왔다. 이를 통해 난 flag.docx를 base64로 인코딩하여 down 파라미터에 넣어서 서버로 요청하였다. 요청을 하니, flag.docx가 다운로드가 되었다. 다운로드한 파일을 열어보니, flag..
2021.05.17 -
페이지에 출력된 글을 보면, 현재 디렉토리에서 vi 편집기를 사용하여 index.php 파일을 편집하는 동안 정전으로 인해 소스 코드가 사라졌습니다. 회복을 도와주세요.라는데 vi가 생성한 백업 파일을 찾는 문제로 생각된다. 인터넷에 “vi 백업 파일”이라고 검색하니, swp 파일이라는 존재를 알 수 있었다. Always Practice :: vim 백업파일 이를 토대로 swp가 어떤 이름으로 저장되는지 검색하여 index.php의 복구 파일을 서버에 요청하였다. /bonus-8/index.php.swp로 서버에 요청을 보내면, index.php.swp파일을 다운로드 받게 된다. vi로 열어서 코드를 살펴보니, 맨 밑에서 Flag을 얻을 수 있었다.
Old - 36 Write Up페이지에 출력된 글을 보면, 현재 디렉토리에서 vi 편집기를 사용하여 index.php 파일을 편집하는 동안 정전으로 인해 소스 코드가 사라졌습니다. 회복을 도와주세요.라는데 vi가 생성한 백업 파일을 찾는 문제로 생각된다. 인터넷에 “vi 백업 파일”이라고 검색하니, swp 파일이라는 존재를 알 수 있었다. Always Practice :: vim 백업파일 이를 토대로 swp가 어떤 이름으로 저장되는지 검색하여 index.php의 복구 파일을 서버에 요청하였다. /bonus-8/index.php.swp로 서버에 요청을 보내면, index.php.swp파일을 다운로드 받게 된다. vi로 열어서 코드를 살펴보니, 맨 밑에서 Flag을 얻을 수 있었다.
2021.05.17