분류 전체보기117 [CTF] webhacking.kr 16번 Write-Up webhacking.kr 16번 문제풀이 Write Up 입니다. 별이 있습니다. F12를 눌러보면 script가 하나 보입니다. 주석에 do it!이라고 되어 있는 부분이 있는데, 이걸 하면 될 것 같습니다. 일단 한번 해 봅시다. mv() 함수 안에 있으므로, mv(124)를 해 봅니다. script를 입력하면 문제가 정답처리 됩니다. 2022. 10. 14. [CTF] webhacking.kr 15번 Write-Up webhacking.kr 15번 문제풀이 Write Up 입니다. 그냥 입구컷을 해버립니다. 계속 끄적대다가, 15번 문제가 js 문제인 것을 발견했습니다. 그래서 javascript 비활성화 시키고 들어가 보기로 했습니다. F12를 누르고 나오는 창 상단을 보면 설정 버튼(톱니바퀴 모양)이 있는데, 누르면 [그림 2]처럼 뜹니다. 아래로 내려 Disable JavaScript에 체크합니다. Level 15 페이지로 접속해 보겠습니다. 비활성화 시킨 후에 URL에 직접 입력해서 들어가야 합니다. 접속하면 아무것도 안 뜨는데, F12를 눌러보면 스크립트가 나옵니다. flag를 얻는 URL이 보입니다. URL 뒤에 ?getFlag를 입력하면 될 것 같습니다. URL 뒤에 ?getFlag를 입력하고 접속해봅니.. 2022. 10. 14. [CTF] webhacking.kr 14번 Write-Up webhacking.kr 14번 문제풀이 Write Up 입니다. 입력할 수 있는 칸이 하나 있습니다. 아무거나 넣고 check를 하면 틀렸다는 메시지가 나옵니다. F12를 눌러서 소스코드를 확인했는데, script가 걸려 있는 것을 알 수 있습니다. function ck(){ var ul=document.URL; ul=ul.indexOf(".kr"); ul=ul*30; if(ul==pw.input_pwd.value) { location.href="?"+ul*pw.input_pwd.value; } else { alert("Wrong"); } } ul이랑 [그림 1]에서 본 입력칸 입력 내용이 같으면 문제가 해결되는 것 같습니다. 일단 ul에 어떤 값이 저장되는지 console로 돌려 보았는데, 540이 .. 2022. 10. 14. [CTF] webhacking.kr 12번 Write-Up webhacking.kr 12번 문제풀이 Write Up 입니다. javascript challenge라고 합니다. F12를 눌러 script를 확인해봅니다. 하... 짜증이 조금 날 것 같습니다. 짜증은 문제 틀렸을 때 내기로 하고 script를 살펴봅니다. 아마 난독화 되어 있는 script인 것 같습니다. 이렇게 난독화되어 있는 것을 검색해 보았습니다. 일본 이모티콘 난독화 이렇게 검색을 했는데, aaencode / aadecode를 발견했습니다. https://utf-8.jp/public/aaencode.html aaencode - Encode any JavaScript program to Japanese style emoticons (^_^) aaencode demo aaencode - Enco.. 2022. 10. 14. [CTF] webhacking.kr 11번 Write-Up webhacking.kr 11번 문제풀이 Write Up 입니다. 다짜고짜 틀렸다고 합니다. 도대체 뭐가... 이해를 위해 view-source를 클릭해 보겠습니다. 소스코드를 살펴보면 이렇습니다. val에 특정 문자열이 들어가면 문제가 풀리는 것 같습니다. 그리고 val은 GET 방식으로 값이 전송되고 있습니다. 일단 if 조건을 만족할 문자열을 만들어 보겠습니다. $pat="/[1-3][a-f]{5}_.*$_SERVER[REMOTE_ADDR].*\tp\ta\ts\ts/"; 이 정규식을 만족하면 됩니다. []의 의미는 해당 문자 중에 하나 있으면 되고, {}의 의미는 바로 앞의 문자가 괄호 안의 수 만큼 있으면 된다는 의미입니다. $_SERVER[REMOTE_ADDR] 는 현재 PC IP를 적으면 됩니.. 2022. 10. 14. [CTF] webhacking.kr 10번 Write-Up webhacking.kr 10번 문제풀이 Write Up 입니다. 문제에 접속하면 육상트랙이 하나 보입니다. O 글자에 커서를 가져다 대면 yOu가 됩니다. 이 글자를 클릭하면 오른쪽으로 이동합니다. [그림 2, 3]과 [그림 4]를 비교해보면 위치가 달라진 것을 알 수 있습니다. 맨 오른쪽에는 노란색으로 Goal 표시가 있습니다. 아무 생각 없이 Goal 표시가 있는 곳 까지 직접 클릭해 보았는데 문제가 풀려버렸습니다. 무식하게 문제가 풀렸는데, 다시 돌아와서 F12를 눌러 코드를 확인해봅니다. O 글자에 대한 코드입니다. onclick에 클릭하면 실행되는 script가 작성되어 있습니다. this.style.left=parseInt(this.style.left,10)+1+'px'; if(this.st.. 2022. 10. 14. [CTF] webhacking.kr 8번 Write-Up webhacking.kr 8번 문제풀이 Write Up 입니다. 접속했더니 뜬금없이 뭐가 완료되었다고 합니다. 새로고침을 했더니 hi guest라는 글자가 있습니다. (처음 접속 시 상황에 따라 [그림 2]가 먼저 나올 수도 있습니다.) view-source를 눌러보면 [그림 3]과 같은 코드가 나옵니다. 2022. 10. 14. [CTF] webhacking.kr 7번 Write-Up webhacking.kr 7번 문제풀이 Write Up 입니다. 인증을 하면 admin 페이지로 접속할 수 있나 봅니다. 당연히 인증은 되지 않습니다. view-source를 눌러 소스코드를 살펴봅니다. 조건에 맞으면 인증가능한 auth 버튼이 생성되는 것 같습니다. 2022. 10. 11. [CTF] webhacking.kr 6번 Write-Up webhacking.kr 6번 문제풀이 Write Up 입니다. ID와 PW가 적혀 있습니다. view-source를 눌러 봤는데 코드가 좀 깁니다. 따로 적어보면 이렇습니다. php 영역이 두 개가 있는데 위쪽부터 봅니다. id와 pw를 각각 guest, 123qwe로 설정하고 base64 encoding을 20번 때립니다. 이후 조건에 맞게 str_replace()가 진행됩니다. ( 참고 : str_replace([해당 문자열], [변경할 문자열], [문자열 변수]) ) str_replace()가 끝나면 cookie로 기록됩니다. 두 번째 영역입니다. 여기는 cookie로 설정된 user와 password를 가져와서 역으로 str_replace()를 진행합니다. 끝나면 base64 decoding을 .. 2022. 10. 11. [CTF] webhacking.kr 5번 Write-Up webhacking.kr 5번 문제풀이 Write Up 입니다. 두 개의 버튼이 있습니다. Login 버튼을 누르면 로그인 페이지로 이동합니다. Join 버튼을 누르면 엑세스가 거부되었다는 메시지가 출력됩니다. Join을 해야 Login을 할 수 있기에 join 페이지에 들어갈 궁리를 해 봅니다. 로그인 페이지의 URL은 [그림 4]와 같습니다. login 부부을 join으로 바꾸어 접속이 되는지 확인해봅니다. 접속했더니 작별인사를 하고 빈 페이지만 뜹니다. F12를 눌러 확인해봤는데 script를 하나 발견할 수 있었습니다. 소스코드가 심상치 않기 때문에 다른 곳에 붙여넣어서 보겠습니다. l='a'; ll='b'; lll='c'; llll='d'; lllll='e'; llllll='f'; lllllll.. 2022. 10. 11. 이전 1 ··· 6 7 8 9 10 11 12 다음