문제: http://suninatas.com/challenge/web01/web01.asp
써니나타스 1번 문제이다.
문제에 접속하면 화면으ㅔ 코드를 보여주고 있다.
처음엔 PHP인줄 알았으나 알고보니 ASP라는 코드였다.
ASP는 한 번도 접해본적이 없어 함수를 검색해가면서 풀었다.
Replace(str, first, second)는 str에 주어지는 스트링에서 frist를 second로 대치시키는 함수이다.
따라서 Replace(str, "a", "aad")는 str에서 "a" → "aad"로 바꾸게 된다.
마찬가지로 Replace(result, "i", "in")은 "i" → "in"로 바꾼다.
Mid(str, pos, length)는 str에서 pos 인덱스에서부터 length의 길이만큼 가져오는 함수이다.
이때 인덱스는 1부터 계산하므로 Mid(result, 2, 2)는 2번째에 있는 문자부터 시작해서 총 2개를 가져오게 되고,
Mid(result, 4, 6)은 4번째에 있는 문자부터 시작해서 6개의 문자를 가져오게 될 것이다.
&는 문자열 결합 연산자이므로 result1과 result2를 합친 것을 result에 저장하게 된다.
아래 if문에서는 최종적으로 result가 "admin"이 되어야 하므로 input에 "ami"라고 입력해주면
"ami" → "aadmin" → "admin"으로 변경될 것이다.
'Study > Web Hacking' 카테고리의 다른 글
[suninatas] Game 03 (1) | 2022.05.10 |
---|---|
[suninatas] Game 02 (1) | 2022.05.10 |
[HackCTF] Guess me (1) | 2022.05.02 |
[HackCTF] 보물 (1) | 2022.05.02 |
[HackCTF] Button (1) | 2022.04.05 |