A ship in harbor is safe, but that is not what ships are built for.

전체 글 156

Webhacking.kr 24번 문제(old)

24번 문제의 메인화면이다. 소스코드를 확인해보자. 중요한 부분만 간단히 확인해보겠다. extract( ) : 배열 속의 키값을 변수화 시키는 함수 htmlspecialchars( ) : 문자열에서 특정한 특수문자를 html 엔터티로 변환하는 함수 $REMOTE_ADDR : 클라이언트의 IP를 가져오는 PHP의 환경변수 $HTTP_USER_AGENT : 클라이언틔의 접속환경 정보를 가져오는 PHP의 환경변수 ***여기서는 $_SERVER 보다 $COOKIE가 나중에 처리되었기 때문에 위의 두 환경변수들을 쿠기로 조작할 수 있다!!! 결과를 확인해보기 위해 REMOTE_ADDR이라는 COOKIE를 만들어 그 값에 127.0.0.1을 넣어보았다. 결과는 위와 같다. 1이 나온 이유는 str_replace로 ..

STUDY/WEB_Hacking 2019.12.17

Webhacking.kr 17번 문제(old)

문제에 처음 들어가보면 다음과 같은 화면이 보인다. 어디서 많이 본 화면같다... 소스코드를 확인해보자. 저번에 풀었던 14번 문제와 똑같은 문제이다. 저 값을 입력해주면 될 것 같다. 먼저 자바스크립트로 저 값이 얼마인지 계산했다. 위와 같은 값이 alert으로 출력되는 것을 확인할 수 있다. 저 값을 입력해보면 문제가 풀렸음을 확인할 수 있다. 이번 문제는 저번 14번 문제와 거의 유사하기 때문에 더 자세한 설명은 생략한다.

STUDY/WEB_Hacking 2019.11.30

Webhacking.kr 14번 문제(old)

처음 문제를 클릭하면 다음과 같은 화면이 뜬다. 일단 소스코드를 확인해보기로 했다. document.URL : 문서의 URL을 반환하는 속성 indexOf( ) : 문자열에서 원하는 문자열을 검색하는 내장함수로 위치값을 index로 반환 정리하면, check 버튼을 클릭했을 때, 변수 ul에 현재 URL에서 ".kr"의 위치에 30이 곱해진 값이 저장되고, 이 ul 값과 pw.input_pwd.value(입력창에 넣은 값)이 일치하면 문제가 풀리는 것 같다. 현재 URL은 https://webhacking.kr/challenge/js-1/ 이다. .kr의 위치는 앞에서 0부터 시작해 18 위치에 있고, ul*30은 18*30이므로 540을 입력하면 if 조건문을 만족해 해당 문장이 실행된다. 540을 입..

STUDY/WEB_Hacking 2019.11.29

Webhacking.kr 6번 문제(old)

문제에 처음 들어가면 가장 먼저 보이는 화면은 다음과 같다. 소스코드를 확인하는 버튼이 있어서 클릭해보니 위와 같은 코드임을 확인할 수 있다. 하나씩 살펴보자. 정리하면 처음 user 쿠키값이 없을 때 val_id 값에 guest, val_pw 값에 123qwe를 저장하고 20번 인코딩해 1~9의 숫자를 특수문자로 대체해 각각 user쿠키와 password쿠키에 저장한다. 실제로 쿠키값을 살펴보면 위와 같이 복잡한 값이 있는 것을 확인할 수 있다. 마찬가지로 정리하면 위의 코드는 user와 password 쿠키값을 가져와서 str_replace 함수로 특수문자들을 숫자로 치환하고, 20번 디코딩했을 때 해당 값들이 admin과 nimda이면 solve된다는 뜻이다. 그렇다면 해당 코드를 거꾸로 올라가 a..

STUDY/WEB_Hacking 2019.11.27

Webhacking.kr 15번 문제(old)

https://webhacking.kr/ Webhacking.kr Index Welcome Stranger! Notice(en) [2019-08-18] In the process of receiving service, some loss of data has been observed. For example, in very few accounts there may be a truncation of the last one letter of an userid. If userid contains multibyte characte webhacking.kr 오랜만에 웹해킹을 다시 공부하고자 사이트에 들어가보니 새롭게 리뉴얼(?) 되어있었다. 다시 처음부터 하고 싶기에 로그인부터 다시 하기로 했는데 해당 화면에 보이는..

STUDY/WEB_Hacking 2019.11.13