[[분류:해킹]][[분류:웹사이트]] [목차] == 개요 == [[파일:cxkU6P2.jpg]] 주소 [[http://wargame.kr/]] 여러가지 모의 해킹 문제를 제공 하는 워게임 [[사이트]]이다. 리버싱, 웹해킹, Cryptography 등의 여러 분야의 문제가 제공된다. 그 중 문제의 창의성과 논리 전개의 자연스러움 등의 측면에서 웹해킹에 관련된 문제가 질적으로 가장 우수하다. == 문제 == [[파일:0kYB8pp.jpg]] 다음은 문제의 목록과 간단한 설명이다. ||<table width=800px><width=20%> 문제 이름 ||<width=8%> 포인트 || 설명 || || already got Point || 200 || 웹해킹의 일반적인 기술적 절차에 들어가기 이전에 선행 해야하는 정보 수집 절차를 따라가면 자연 스럽게 정답에 도달할 수 있다. 두 눈만 제대로 달려 있으면 풀 수 있는 수준의 난이도. || || QR CODE PUZZLE || 300 || || || flee button Point || 450 || || || login filtering Point || 450 || || || WTF_CODE || 450 || || || EASY_Crackme || 500 || || || DB is really GOOD || 500 || || || fly to the moon Point || 500 || 자바스크립트를 손으로 난독화를 해제하거나 사이트들을 이용해 풀면 훨씬 쉽게 풀 수 있다. 자바스크립트에 대한 어느정도의 지식을 가지고 있다면 충분히 풀 수 있는 문제이다. || || md5 password Point || 500 || || || strcmp || 550 || 웹에서 발생하는 취약점에는 SSS[* Server Side Script, 서버 측 언어 이 문제에서는 [[PHP]]] 코드의 논리적인 취약점 뿐만 아니라 SSS 의 interpreter 가 가지는 취약점 내지 미숙한 처리가 원인이 될 수도 있다는 점을 시사하는 문제. 더 발전된 실력을 위해서 이러한 의미를 생각해 보도록 하자. || || type confusion || 550 || || || SimpleBoard || 600 || || || tmitter || 600 || || || adm1nkyj || 600 || || || img recovery || 650 || || || pyc decompile || 650 || [[Python]]의 바이트코드 파일인 pyc파일을 디컴파일하면 쉽게 풀수 있는 문제이다. || || crack crack crack it || 650 || || || web chatting || 650 || 웹 채팅 구현에 관한 프로그래밍 적 요소와 취약점 발생에 따른 해킹적 요소를 함께 생각해 볼 수 있는 문제. 프로그램의 동작을 보고 작동 원리를 생각해 보는 것은 리버싱을 하는데 있어서 필수적인 직관력이다. || || dmbs335 || 700 || 문제에서 요구하는 것은 source code auditing 을 통해 코드의 동작을 이해하는 능력과 취약점이 일어날 수 있는 vector 들을 꼼꼼히 따져서 취약점을 찾아내는 능력이다. 이는 real world 에서 web application source code auditing 시의 가장 일반적인 절차를 재현한 것인데 막상 문제를 푸는 사람들은 별 생각이 없는듯 하다. 취약점을 찾으면 exploit 의 난이도는 그렇게 높지 않다. || || ip log table || 700 || || || lonely guys || 700 || mysql 의 query 중 order by 절의 asc, desc 부분이 user input 에 의해 taint 되는 경우의 exploit 을 묻는다. 출제자의 의도는 그게 아닌 것 같지만 문제에서 발생하는 취약점은 error based blind sql injection 을 활용할 수 있는 대표적인 사례이다. || || Keypad Crackme || 700 || || php? c? || Point:700 || C 언어로 제작된 실행 파일의 결과 값을 사용하는 php 기반 웹 어플리케이션에서 발생할 수 있는 integer overflow 의 exploit 을 요구하는 문제이다. || || QnA || 800 || || || Crypto Crack Basic || 800 || || DLL with notepad || 900 || || || login with crypto! but... || 900 || || || CustomOS || 900 || || || mini TBR || 1000 || || || pw crack || 1100 || || || dun worry about the vase || 1300 || || || counting query || 1300 || 에러 기반 sql injection 의 exploit 방법을 묻는 문제. 점수가 1300 점으로 설정되어 있지만 에러 기반 인젝션은 이미 많이 알려진 기법이라 체감 난이도는 생각보다 높지 않다. || == 사이트 관련 총평 == 난이도는 크게 어렵지 않은 수준이나 해킹을 시작한지 얼마 되지 않은 초보자에겐 어렵게 느껴질 수 있다. 최신의 경향을 반영하는 문제들은 아니지만 몇몇 문제에서 제작자의 독특한 아이디어가 돋보인다.