일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 자바스크립트
- 사칙연산
- xss game 풀이
- Pwndbg
- 객체
- IF문
- window
- 김성엽 대표님
- jQuery
- property
- 파이썬
- 조건문
- 백준 알고리즘
- github
- sql injection
- burp suite
- object
- document
- 포인터
- 함수
- 백준 파이썬
- 배열
- blind sql injection
- xss game
- element 조회
- python
- htmlspecialchars
- 메소드
- suninatas 풀이
- lord of sql injection
- Today
- Total
목록분류 전체보기 (389)
power-girl0-0
주소 : https://webhacking.kr/old.php Webhacking.kr webhacking.kr [ 풀이 ] 보자마자 물음표 연사?!!??? 새로고침을 해보니, 아래와 같이 출력된다. 소스코드를 살펴보자. 아래는 소스코드의 일부이다. ↓ getenv( http_user_agent ) 설명 더보기 getenv()는 함수의 인자로 오는 변수에 따라, 해당되는 환경 변수 값을 알려주는 함수 이다. REMOTE_ADDR : 웹 사이트에 접속한 컴퓨터 IP주소 HTTP_USER_AGENT : 웹 사이트를 접속한 컴퓨터의 웹 브라우저 정보 소스코드를 분석하면 아래와 같다. 웹 사이트에 접속한 브라우저 정보를 $agent에 저장하고, ip주소는 $ip에 저장한다. 만약 $agent에 from이 존재한..
주소 : https://webhacking.kr/old.php Webhacking.kr webhacking.kr [ 풀이 ] admin페이지가 출력되지만, auth버튼을 눌렀을 시, 아래와 같이 권한이 없다고 출력된다. view-source를 클릭하여, 소스코드를 확인해보자. 위 코드를 보고, 아래와 같은 조건문을 발견할 수 있다. val라는 변수값을 GET방식으로 받아와서, go라는 변수에 저장한다. 2 - + from _ = \s(공백) * / 등을 필터링하고 있다. rand변수에 랜덤값을 받아와서, 쿼리문을 랜덤으로 실행하고 있다. elseif를 조건문에 적힌 것과 같이, data[0]이 2이면 Hello admin이 출력되면서 문제가 클리어된다. 즉, data[0]에 2값을 넣으면 된다. 따라서 ..
주소 : https://webhacking.kr/old.php Webhacking.kr webhacking.kr [ 풀이 ] guest라는 id와 pw가 출력되어 있으며, 소스코드를 볼 수 있게 링크가 적혀있다. 소스코드를 살펴보자.~ㅁ~ 앞부분 코드를 먼저 살펴보자. 위 코드를 살펴보면, guest와 123qwe를 base64로 20번 인코딩하고 문자열을 치환하여 쿠키값을 저장하였음을 알수 있다. 쿠키를 살펴보니, password와 user라는 쿠키가 있는 것을 확인할 수 있다. 그렇다면 아래 코드를 살펴보자. 아래 php코드만 살펴보면, 위에서 인코딩했던 쿠키값을 가져와서 디코딩해주는 소스코드이다. 이를 해줌으로써, 맨 처음 문제 화면에 id와 pw를 출력해주었던 것이다. 또한, 가장 중요한 단서로 ..
주소 : https://webhacking.kr/old.php Webhacking.kr webhacking.kr [ 풀이 ] 이번 문제에서는 login과 join버튼이 있다. 먼저 가입을 하기 위해, join을 클릭시 아래와 같이 권한이 없다고 출력된다. login버튼을 클릭시, 아래와 같이 출력된다. 위 페이지에서 login.php의 url을 갖고 있는 것을 보아, 혹시 하는 마음에 login.php대신 join.php를 입력하여 접근해 보았다. 그 결과 bye라는 알림창을 출력하고, 아무것도 출력되지 않는다. 소스코드를 살펴보니, 난독화된 스크립트를 확인할 수 있었다. 해당 코드를 아래 웹사이트를 통해 난독화를 해제하였다. https://beautifier.io/ Online JavaScript be..
주소 : https://webhacking.kr/old.php Webhacking.kr webhacking.kr [ 풀이 ] 깜깜한 화면 드응장~~! password값을 입력할 때마다, 위의 난수값(?)이 계속 변경된다. view-source를 클릭하여, 소스코드를 살펴보자. 소스코드를 살펴보면, chall4의 세션값과 입력받아오는 key변수의 값이 같으면 풀리는 것으로 되어있다. 하지만, 여기서 chall4 센션값 안에는 hash변수가 들어가 있는 것을 확인할 수 있다. 위 코드를 집중적으로 살펴보면, $hash에는 1000000부터 99999999까지의 랜덤값+salt_for_you가 들어있으며, 이를 sha1을 활용하여, 500번 암호화하고 있는 것을 볼 수 있다. 위 코드를 보면, 문제가 출력되어..
주소 : https://webhacking.kr/old.php Webhacking.kr webhacking.kr [ 풀이 ] 위와 같은, 퍼즐이 문제로 주어진 것을 확인할 수 있다. 어릴적 자주하던 게임이라서, 쉽게 풀 수 있었다. 퍼즐을 풀고 solved버튼을 클릭하니, 아래와 같은 페이지로 넘어간다. 입력창에 이름을 입력하면, 아래와 같이 로그가 남는다. 이를 여러번하면 새롭게 로그가 남겨지는 것을 확인할 수 있다. 입력창에 참을 만들어보아도, 문자열로 저장되는지 name에 그대로 출력된다. 소스코드를 살펴보자! 살펴보니, hidden이라는 타입을 가진 answer이 눈에 띈다.!! (수상해 수상해~~) display로 바꿔보았다. 안녕,,,?!! ㅋㅋㅋㅋㅋㅋㅋㅋ 위 결과물을 보면, 입력창에 값을 넣..
주소 : https://webhacking.kr/old.php Webhacking.kr webhacking.kr [ 풀이 ] 해당 페이지에서 입력창, 하이퍼링크 등이 없으니, 소스코드를 살펴보았다. 주석처리로, admin.php페이지가 존재한다는 것을 알려주고 있다. url에 admin.php로 이동해보았다. admin.php가 존재하는 것을 확인할 수 있으며, 비밀번호 입력창이 출력되었다. admin.php 소스코드를 확인한 결과, 추출할 만한 것이 없는 것으로 예측되어 쿠키값을 확인해보았다. time이라는 쿠키가 존재하고 있다!! 그러고 보니, 위 소스코드에서 확인했을 때, 현재시간이 주석으로 처리되어있던 것이 생각난다!! ( ㅇㅁㅇ;; ) 그럼 time이라는 쿠키값에 1을 입력하고, 해당 페이지를 ..
주소 : https://webhacking.kr/old.php Webhacking.kr webhacking.kr [ 풀이 ] 해당 문제는 level : 1이라는 문구가 출력되어 있고, view-source라는 하이퍼링크가 있는 것을 확인할 수 있다. view-source는 페이지 코드를 보여주는 것으로 아래와 같다. 코드를 보니, 위와 같이, cookie의 name이 user_lv이고 값이 3이상이면 풀리는 문제인 것을 예측할 수 있다. 하지만, 위 조건문을 보면 4와 같거나 크면 다시 1값으로 변경시킨다. 일단 현재의 쿠키값이 존재하는지 확인을 위해, 개발자도구를 이용하여 쿠키값을 확인하였다. user_lv의 값이 1인 것을 확인할 수 있다. 문제를 풀기 위해, 조건을 정리해보면 user_lv > 3과..