글 작성자: 모두의 근삼이

문제들이 상당히 흥미롭게 구성된 워게임 사이트가 하나 있어서 문제를 풀고 리뷰해 보려고 합니다.

사이트 이름은 Suninatas이며, 2012년 4월 부터 서비스를 시작하여, 지금까지 쭉 관리되어 온 것으로 보입니다.

문제는 총 32개로 이루어져 있으며 그 중, 10문제가 웹 관련된 문제입니다

Suninatas는 분류상으로 WEB, BINARY, FORENSIC, SYSTEM등의 4가지 주제로 문제들이 구성되어 있으며, 각 문제들이 기초에 충실하면서도 참신한 방법으로 구성되어 있으며, 난이도가 대체적으로 높지 않은 편이어서 초보자에게 추천하는 워게임이라고 할 수 있겠습니다.



Suninatas에서는 각 level을 클리어 하면, ‘AUTH KEY’ 라는 것을 제공합니다. 획득한 AUTH KEY는 해당 페이지에 입력하여, 문제를 풀었음을 증명 하는 데에 사용됩니다. 정상적으로 등록되면, CHALLENGE페이지에서 해당 문제가 색칠되어 클리어 한 것으로 표시가 됩니다.




WEB Level 1

문제 1번입니다. 

입력값 처리에 대한 ASP코드가 모두 공개되어 있습니다.

ASP의 Replace() 함수와, Mid() 함수의 사용법만 알면, 풀 수 있는 간단한 문제입니다.



Replace() 함수 사용법

문법

Replace( 문자열 , 치환될 문자열 , 치환할 문자열 )

사용 예시

result = Replace( “abc” , “c” , “ab” )

print ( result )

 

출력 결과 : abab


Mid() 함수 사용법

문법

Mid( 문자열 , 시작 위치 , 자리수 )

사용 예시

result = Mid( “abcdefg123456” , 6 , 3 )

print ( result )

 

출력 결과 : fg1


문제의 코드에서는 Replace() 함수 두개를 이용하여, 입력받은 값에서 문자'a'와, 문자'i'에 대해서 치환을 하여 전달한 뒤, Mid() 함수를 이용하여, 2~9번째 글자를 추출해 내는 코드가 작성되어 있고, 

계산 결과가 'admin'일 경우에, PW를 반환하는 것으로 해석할 수 있습니다.


결과적으로 ami를 입력값으로 입력하면, 

ami -> aadmin -> admin

으로 처리되어 넘어가는 형식 입니다.

정답을 입력하면, 프레임 하단에 Authkey가 나오고, 이를 AUTH KEY 페이지에 입력하면 1단계를 클리어 합니다.

반응형