본문 바로가기

분류 전체보기

(55)
HTTP Method OPTIONS 요청하는 리소스가 허용하는 메소드 목록을 반환합니다. 예를 들어 /login페이지가 OPTIONS, GET, POST 메소드만 허용하는 경우 OPTIONS, GET, POST가 반환됩니다. HEAD GET 메소드와 동일하지만, Response의 Body 부분은 받지 않고, Header만 받습니다. (e.g. 서버의 상태 확인 등) GET 리소스를 요청합니다. (e.g. 게시물/프로필 보기, 이미지 등) POST 특정 리소스 생성 및 데이터 추가를 위해 값을 제출할 때 사용합니다. (e.g. 게시물/프로필 생성 등) PUT 특정 리소스의 내용을 보낸 값으로 설정합니다. (e.g. 생성/업데이트 등) PATCH 특정 리소스의 내용 중 보낸 값의 key만 변경합니다. (e.g. 게시..
인코딩 URL Encoding URL 에 파라미터 데이터로 예약어로 사용되는 문자들은 인코딩이된다. ex) ?같은 문자는 예약어로써 URI에 들어갈수 없으니 %3F이런식으로 인코딩 해준다. 인코딩 방식은 입력된 문자를 Ascii테이블에서 매칭되는 Hex 값 앞에 % 문자를 붙이면 된다. HTML entity Encoding 문자열이 html 코드안에서 태그로 인식되지 않게하기 위해 인코딩을 하는데 아스키 코드 hex값 앞에 &#x를 붙이거나 주요한 문자들은 지전되어 있는 Entity name을 사용하여 인코딩을 한다. 문자 Entity name encoding Entity number encoding & & & > > Dreamhack.io를 참조 하였습니다.
suninatas web challenge 8 버프 스위프트의 intruder 기능을 이용하면 0~9999까지 반복해서 찾을 수 있다. 하지만 너무 느리고 일일이 소스를 찾아 헤매야하는 단점이 있는데 다른 사람들은 파이썬으로 코드를 짜서 하는 것을 보며 코드를 짜는 방법이 더 좋은 것 같다. 한번 공부해 보아야겠다.
suninatas web challenge 7 HTML 코드는 DOM 이라고도 불린다. HTML의 각 태그 들을 객체로 나타내어 트리처럼 볼 수 있고 자바스크립트 엔진에서 접근하기 더 쉽도록 하기 위해 이렇게 쓰인다고 본 것 같다. 이번 문제는 개발자 도구 console 을 이용해 YES버튼을 클릭하는 것이 목적이다. 처음 시도해본 코드는 이러한데 "document.getElementsByTagName("input")[4]. click()" 이 코드는 충분히 빠르지 못하여 실패한듯 하다. 다음으로는 "document.frm.submit()" 이다 여러 번 반복하여 입력하면 성공할 수 있다. submit()을 함수처럼 사용할 수 있다는 것을 배웠다.
suninatas web challenge 5 소스코드를 들여다보면 이상한 문자열을 볼 수 있다. console 창에 암호화된 코드를 붙여 넣고 eval을 console.log 혹은 alert로 변경해보면 복호화된 코드를 볼 수 있다. 혹은 javascript unpack 사이트를 통해 복호화할 수 있다. Javascript 언어 특성상 클라이언트측에서 볼 수 있기 때문에 취약하다. 그래서 개발자 측에서 암호화를 도입한 것으로 보인다. 복호화된 코드에 PASS함수가 있는데 힌트 값을 PASS에 넣고 실행 해보면 어떠한 값을 확인할 수 있다.
Webhacking.kr Challenge(old) 01 URL 파라미터를 보면 view-source=1이 설정되어있는 것을 볼 수 있다. 이 코드를 통해 쿠키가 기존에 생성된 적 없으면 생성된다. 쿠키의 유지시간이 걸려있다. 쿠키가 6 > x > 5이면 solve(1)로 보이는 함수를 실행할 수 있을 것으로 보인다. 정수만 생각했지만 소수가 있었다. 개발자 도구 - Application - Cookise 에서 쿠키를 수정할 수 있다. 페이지를 재 요청하면 해결된다.
suninatas web challenge 4 현재 자신의 운영체제와 브라우저 정보를 서버에 제공하는 Http header의 User-Agent라는 곳이 있다. 이곳을 변경해야 한다. 그래야 25 이상으로 증가할 수 있다.
suninatas web challenge 3 메인 페이지에 가면 Notice Board가 있다. 글쓰기 버튼이 없다. 인터넷에서 도움을 받았는데 Free Board에 가보면 글쓰기가 있다. url을 보면 /~/~/wirte라고 되어있다. notice board에 다시 가서 url 맨뒤에 write를 입력해주었다.