본문 바로가기

Hacking/wargame.kr20

[wargame.kr] Question 8. md5 password 문제 md5(‘value’, true); 풀이 문제 접근 시 password 입력폼과 소스코드를 볼 수 있는 get source 두개의 항목이 확인된다 get source를 통해 소스코드를 확인해보자. php 와 mysql로 구성된 소스코드를 분석하여 다음과 같은 결과를 얻을 수 있었다. 1) mysql_real_escape_string() 함수로 인해 SQL Injection 공격은 어렵다. 2) admin_password 의 password 값과 일치하면 Flag값을 출력받는다. 3) input 값은 md5($ps, true) 함수를 통해 md5 hash값으로 처리된다. 이때 호출된 md5() 함수의 경우 md5(변수, true) 값으로 구성되어 있을 경우 16자리 binary형태로 출력되며 이때 ‘.. 2021. 6. 28.
[wargame.kr] Question 7. strcmp 문제 if you can bypass the strcmp function, you get the flag. Strcmp 기능을 우회할 수 있다면 Flag를 찾을 수 있다. 풀이 문제 접근 시 password 입력 폼 및 source를 볼 수 있는 하이퍼링크가 확인된다. 우선 문제에서 제시된 strcmp 기능의 대해서 알아보자. [참조] strcmp() 함수 strcmp( string1, string2 ) 형식, php에서 사용되는 함수로 string1과 string2 을 비교한다 해당 인자는 문자열 형식이고 대소문자를 구분한다 문자열 대신 변수를 값으로 넣을 수 도 있다. 비교 결과는 다음과 같다 1) string1 > string2 : 음수값을 반환 (0보다 작은값) 2) string1 < string.. 2021. 6. 24.
[wargame.kr] Question 6. Fly me to the moon 문제 javascript game. can you clear with bypass prevent cheating system? 자바 스크립트 게임, 부정행위 방지 시스템으로 해결할 수 있나요? 풀이 비행기 게임이 확인된다 마우스를 따라 움직이는 비행기와 무작위로 좁혀져 오는 기둥이 있고 기둥에 닿을 경우 게임오버가 된다 31337 SCORE 를 달성해야 한다는 내용이 출력된다. 개발자 도구(F12) -> Elements 탭으로 진입하여 태그의 내용을 확인한다. 의 하단 내용을 확인 시 난독화된 javascript code를 확인할 수 있다 난독화된 javascript code를 해독할 수 있는 사이트를 활용해야한다. Online JavaScript Beautifier site : https://beaut.. 2021. 6. 24.
[wargame.kr] Question 5. WTF_CODE 문제 This is another programming language. Can you read this source code? 특정 프로그래밍 언어이다 이 소스코드를 읽을 수 있는가? 풀이 문제 진입 시 source code.ws 파일이 제공되며 그 외 특별한 정보가 더 있지는 않는걸로 확인된다 해당 소스코드를 분석해보자. Source_code.ws 파일을 워드패드를 통해 실행 시 아무런 내용이 없는걸 확인할 수 있다 Ctrl + a 를 통해 공백으로 내용이 채워져 있는걸 확인할 수 있다 프로그래밍 언어, 공백, ws확장자 라는 정보를 기반으로 관련 자료를 찾아보자. White space 라는 언어를 위키백과를 통해 찾을 수 있었다 난해한 프로그래밍 언어, 공백으로 구성, ws약자 제공된 정보와 일치하.. 2021. 6. 23.
[wargame.kr] Question 4. Login filtering 문제 I have accounts. but, it's blocked. can you login bypass filtering? 계정이 차단된 경우, 우회하여 접속이 가능한가? 풀이 문제 접근 시 로그인 폼이 주어지고 하단의 get source 를 통해 해당 페이지의 source 코드를 볼 수 있는것으로 확인된다. get source 최 하단에 guest의 ID, Passwrod 정보가 주어지며, 해당 사용자로 로그인시 차단된 계정의 사용자로 확인된다. Source code 분석 시 mysql Database 환경을 확인할 수 있다 mysql_real_escape_string() 함수를 통해 id와 ps값을 받아오고 있음으로 SQL Injection으로 해결할 수 있는 문제는 아닌것으로 사료된다 ID : .. 2021. 6. 23.
[wargame.kr] Question 3. QRcode puzzle 문제 javascript puzzle challenge just enjoy! 자바스크립트 퍼즐을 즐겨보자! 풀이 문제에 돌입하자QR code가 퍼즐로 꼬여있는걸 확인할 수 있다. 시간을 들여 퍼즐을 풀수도 있지만, 개발자 도구를 통해 퍼즐을 풀어보자. 개발자 도구(F12) -> Sources 탭으로 이동하면 해당 페이지의 소스코드를 볼 수 있다. .attr() 함수는 jquery의 속성을 제어하는 함수이며 unescape()함수의 경우 escape를 통해 만들어진 URL을 decoding 하는 함수이다. 개발자 도구(F12) -> Console 탭으로 변수 정보들을 간략하게 확인해볼 수 있다 unescape('.%2f%69%6d%67%2f%71%72%2e%70%6e%67') 함수 값을 입력 시qr.png.. 2021. 6. 22.