써니나타스 1번
Level 1
<%
str = Request("str")
If not str = "" Then
result = Replace(str,"a","aad")
result = Replace(result,"i","in")
result1 = Mid(result,2,2)
result2 = Mid(result,4,6)
result = result1 & result2
Response.write result
If result = "admin" Then
pw = "????????"
End if
End if
%>
문제내용은 이렇다.
str을 받아서 str의 a를 aad로 다시 i를 in으로 바꾼후 2번째부터 2글자 4번째부터 6글자까지
추출해 result를 만들고있다.
result가 admin이면 pw를 보여주는것으로 보인다.
역으로 올라가보면 어떠한 문자가 변환과정을 거쳤을때 2~6번째 글자까지가 admin이 나와야된다.
admin을 만들기위해선 result의 2~3가 ad 로 나와야 하고 4~9까지가 min으로 나와야한다.
a=>aad
i=>in
이렇게 바뀌므로 첫글자가 a여야 aad의 2~3번째 문자가 ad로 전환이 된다.
그리고 4~9가 min이 되기 위해선 a다음에 mi를 붙여 주어야한다.
답은 ami이다.
검산을 해보면
첫번재 replace에서 aadmi로 바뀌고
두번째 replace에서 aadmin으로 바뀐다.
2~3번째와 4~9번째까지 추출해보면
admin이 나오는것을 알수있다.