분류 전체보기
-
들어가면, Level 1이라는 글과 소스코드를 볼 수 있는 링크가 페이지에 출력되어 있다. 페이지에 아무 반응이 없어서 코드를 살펴보았다. 맨 처음에 정의된 코드인데, user_lv이라는 쿠키를 1로 지정한다는 코드였다.
Old - 1 Write Up들어가면, Level 1이라는 글과 소스코드를 볼 수 있는 링크가 페이지에 출력되어 있다. 페이지에 아무 반응이 없어서 코드를 살펴보았다. 맨 처음에 정의된 코드인데, user_lv이라는 쿠키를 1로 지정한다는 코드였다.
2021.05.17 -
이번엔 채팅앱 같은 페이지가 나왔다. aaaa를 입력하니, command not found라는 문구가 출력이 되었다. command라는 단어를 보는 순간 난 ls 명령어를 입력하여 서버로 보냈다. 파일 이름이 출력되었다. 다른 명령어들을 입력해보았지만, 모두 command not found라는 문구가 출력이 되었다. 그러다가 flag을 입력해보니, 다른 문구가 출력이 되었다. admin만 사용이 가능하다는 문구였다. 더이상 찾을 것이 없을 거 같아서 개발자 도구를 통해 코드를 살펴보았다. $(function () { var username = "guest"; var socket = io(); $('form').submit(function(e){ e.preventDefault(); socket.emit('..
Old - 58 Write Up이번엔 채팅앱 같은 페이지가 나왔다. aaaa를 입력하니, command not found라는 문구가 출력이 되었다. command라는 단어를 보는 순간 난 ls 명령어를 입력하여 서버로 보냈다. 파일 이름이 출력되었다. 다른 명령어들을 입력해보았지만, 모두 command not found라는 문구가 출력이 되었다. 그러다가 flag을 입력해보니, 다른 문구가 출력이 되었다. admin만 사용이 가능하다는 문구였다. 더이상 찾을 것이 없을 거 같아서 개발자 도구를 통해 코드를 살펴보았다. $(function () { var username = "guest"; var socket = io(); $('form').submit(function(e){ e.preventDefault(); socket.emit('..
2021.05.16 -
Mail subject라고 라벨이 있는 것으로 보아서, 메일을 보낸다는 것을 추측했다. Input에 기본값으로 지정된 값을 그대로 서버로 보내니, 메일을 보냈다는 문구가 출력되었다. 문제를 보고 난 BeeBox의 SMTP 문제를 생각할 수 있었다. Input에 Cc을 넣어서 메일을 공격자가 원하는 메일로 참조하는 공격이였다. 위 방법대로 공격해보도록 하겠다. Post 메소드로 값을 넘겨주기 때문에 body 안에 Cc를 삽입하여 보냈다. 그 결과 Flag를 획득할 수 있었다.
Old - 47 Write UpMail subject라고 라벨이 있는 것으로 보아서, 메일을 보낸다는 것을 추측했다. Input에 기본값으로 지정된 값을 그대로 서버로 보내니, 메일을 보냈다는 문구가 출력되었다. 문제를 보고 난 BeeBox의 SMTP 문제를 생각할 수 있었다. Input에 Cc을 넣어서 메일을 공격자가 원하는 메일로 참조하는 공격이였다. 위 방법대로 공격해보도록 하겠다. Post 메소드로 값을 넘겨주기 때문에 body 안에 Cc를 삽입하여 보냈다. 그 결과 Flag를 획득할 수 있었다.
2021.05.16 -
랭킹 게시판이 문제로 나왔다. 이게 무슨 기능을 하는지 몰라서 일단 개발자 도구로 코드를 살펴봤다. .... 랭크에 나온 사용자를 클릭하면, ?hit=hyes4167와 같이 사용자 이름을 파라미터 값으로 서버에 넘겨주고 있다. 어떤 기능인지 확인하기 위해 클릭을 했더니, 페이지가 다시 랭킹 게시판으로 넘어오고, hyes4167의 Hit 값이 증가가 되었다. 이것을 통해 난 Hit 점수를 100까지 올려야한다는 것을 느낌적으로 알아챌 수 있었다. 그래서 Hit 값을 올리기 위해 한번 클릭하니, 투표를 이미 했다는 Alert창이 띄어졌다. 그래서 투표를 했는지 안했는지를 구분하기 위해 쿠키에 값을 넣었을 것 같아서 쿠키를 확인하였다. 예상대로, 쿠키에 투표 값이 있었다. 나는 쿠키를 삭제하여, 페이지에 다시..
Old - 32 Write Up랭킹 게시판이 문제로 나왔다. 이게 무슨 기능을 하는지 몰라서 일단 개발자 도구로 코드를 살펴봤다. .... 랭크에 나온 사용자를 클릭하면, ?hit=hyes4167와 같이 사용자 이름을 파라미터 값으로 서버에 넘겨주고 있다. 어떤 기능인지 확인하기 위해 클릭을 했더니, 페이지가 다시 랭킹 게시판으로 넘어오고, hyes4167의 Hit 값이 증가가 되었다. 이것을 통해 난 Hit 점수를 100까지 올려야한다는 것을 느낌적으로 알아챌 수 있었다. 그래서 Hit 값을 올리기 위해 한번 클릭하니, 투표를 이미 했다는 Alert창이 띄어졌다. 그래서 투표를 했는지 안했는지를 구분하기 위해 쿠키에 값을 넣었을 것 같아서 쿠키를 확인하였다. 예상대로, 쿠키에 투표 값이 있었다. 나는 쿠키를 삭제하여, 페이지에 다시..
2021.05.16 -
SQL Injection 문제인 듯하다. 소스코드를 주는 거 보니, 입력값에 대한 처리가 있는 기능이 있을 거라 추측된다. 코드를 확인해보니, 18번 문제와 비슷한 코드가 있었다.
Old - 27 Write UpSQL Injection 문제인 듯하다. 소스코드를 주는 거 보니, 입력값에 대한 처리가 있는 기능이 있을 거라 추측된다. 코드를 확인해보니, 18번 문제와 비슷한 코드가 있었다.
2021.05.16 -
문제 페이지에 들어가니, 이상한 input이 있었다. 코드에 스크립트나 주석에 힌트가 있는지, 쿠키가 있는지 확인을 해봤다. 하지만 별다른 것은 없었고, 일단 제출 버튼을 클릭하여 서버에 값을 보내봤다. 어드민이 아니라는 글이 출력되고, 몇 초뒤에 처음봤던 페이지로 이동하였다. 값이 admin이 아닌 값을 보내면 어떻게 작동하는지 확인해봤다. 서버에 a를 보냈더니, a로 로그인이 되었다. 그 이후에는 아무 반응이 없어서 코드와 쿠키를 확인해보았는데, userid라는 쿠키가 생성이 되었다. 값을 보니, 맨 뒤에 = (%3D)이 있는 것으로 보아 base64로 인코딩되어있다고 판단하였다. Base64 디코딩된 값인데, 뭔가 더 인코딩이 되어있는 것으로 보인다. 해당 값의 길이가 32글자로, MD5로 해쉬가 ..
Old - 19 Write Up문제 페이지에 들어가니, 이상한 input이 있었다. 코드에 스크립트나 주석에 힌트가 있는지, 쿠키가 있는지 확인을 해봤다. 하지만 별다른 것은 없었고, 일단 제출 버튼을 클릭하여 서버에 값을 보내봤다. 어드민이 아니라는 글이 출력되고, 몇 초뒤에 처음봤던 페이지로 이동하였다. 값이 admin이 아닌 값을 보내면 어떻게 작동하는지 확인해봤다. 서버에 a를 보냈더니, a로 로그인이 되었다. 그 이후에는 아무 반응이 없어서 코드와 쿠키를 확인해보았는데, userid라는 쿠키가 생성이 되었다. 값을 보니, 맨 뒤에 = (%3D)이 있는 것으로 보아 base64로 인코딩되어있다고 판단하였다. Base64 디코딩된 값인데, 뭔가 더 인코딩이 되어있는 것으로 보인다. 해당 값의 길이가 32글자로, MD5로 해쉬가 ..
2021.05.16