power-girl0-0

[Web] 1번 본문

War game/suninatas

[Web] 1번

power-girl0-0 2021. 3. 18. 23:36
728x90

주소 : http://suninatas.com/

 

써니나타스

웹해킹, 포렌식, 리버싱, 암호학, 해킹 워게임 제공.

www.suninatas.com


 [ 풀이 ] 

1번 문제는 아래와 같이 코드가 출력되어 있다.

소스코드를 살펴보니, replace( )와 mid( )함수가 사용된 것을 확인할 수 있다.

replace( )함수는 문자열 치환함수로, replace('치환할 대상','기존 문자','바꿀 문자')형식으로 사용한다.

즉, a를 입력시 add로 치환되고 i를 입력시 in으로 바뀌는 것을 알 수 있다.

 

mid( )함수는 문자열에서 원하는 위치를 기준으로 원하는 문자수만큼 추출해주는 함수이다.

mid(문자열, 기준위치, 추출할 문자수)형식으로 사용하는 함수로, 위 코드에서는 2번째부터 2개와 4번째부터 6개를 추출해준다.

 

즉, 조건을 정리하자면 아래와 같다.

1. a 입력시, add로 바뀐다.
2. i 입력시, in으로 바뀐다.
3. 값은 2번째에서 2개의 문자와 4번째에서부터 6개 문자열만 추출한다.

이번 문제는 해당 함수 2개의 방식을 바탕으로 답을 추출해낼 수 있다.

소스코드 아래부분을 보면 result가 admin일 경우 pw가 출력되는 것으로 예상된다.

 

그럼 admin이 출력되도록 해보자!!

먼저, a입력시 aad로 바뀌고 2번째부터 2개 뽑을 수 있으니 입력값으로는 "ad"의 값을 넣을 수 있다.

 

이번에는 min의 값을 넣어보자.

4번째부터 6개 뽑을 수 있는 조건을 이용해서 다음 글자인 m을 입력해주고, 그 뒤로는 i만 입력하면 된다.

i가 in으로 바뀜으로써, 입력값으로는 admin이 완성될 수 있다.

 

따라서 입력창에 ami이라고만 입력해주면, flag값을 얻을 수 있다.


 

답 : ami

 

 

 

728x90

'War game > suninatas' 카테고리의 다른 글

[ Web ] 6번  (0) 2021.03.18
[ Web ] 5번  (0) 2021.03.18
[ Web ] 4번  (0) 2021.03.18
[ Web ] 3번  (0) 2021.03.18
[ Web ] 2번  (0) 2021.03.18
Comments