Beistlab for security라는 창이 나온다.…beistlab이 낸 문젠가..?

일단 메인 창 내에서는 별 문제가 없는 것 같다. 근데 메인 창 목록에는 about, members, research, board, fun stuff, contact밖에 없는데 코드상에서는 admin이라는 것도 보인다. 저기에 들어가보면 (map태그로 용 머리에 링크를 걸어놔서 용 머리를 누르면 admin페이지로 넘어갈 수 있다….)

로그인하라는 창이 나온다. 아무거나 치니까 나오지도 않는다이제부터는 웹알못으로 아무것도 모르므로 구글의 도움을 받았다.

아까 main코드에서 이러한 시간 주석이 있는 것을 확인할 수 있다. 이 값이 cookie랑 연관이 있다고 한다.

쿠키를 보면 time이라는 이름을 가지고 있다. 이것 때문에 그 주석과 연관이 있다고 바로 생각 할 수 있던 것 같다.그 후에 이를 이용해서 blind sql injection공격을 했다. Blind sql injection은 일반적인 SQL과는 다르게 악의적인 문자열을 삽입하지 않고 참과 거짓을 확인할 수 있는 쿼리를 삽입하여 정보를 취득하는 방법이라고 한다.  참과 거짓의 서버 반응을 보고 공격을 수행하는 형식이다.

쿠키값을 이런식으로 바꿔서 쿼리를 true로 만든 후에 코드를 다시 확인해보면

이렇게 시간이 바뀌어서 나오는 것을 확인할 수 있다!! 이번에는 false로 바꾸어서 확인해보면

이번엔 9시로 시간이 바뀌어서 나온다!!!!

True -> 09:00:01

False -> 09:00:00

라는 것을 알 수 있고 이제 이걸 이용해서 password를 알아내면 된다! 어떤 식으로 해야할지 뭔가 대충 감이 잡혔다..!

Board를 보면 게시글 하나가 올라와 있는 것을 알 수 있는데 비밀 글이라고 한다. 뭔가 이 비밀번호를 알아내야 할 것 같다는 느낌이 강하게 왔다..! 

근데 table이름을 알아야 password를 알아내는데 아무리 뒤져도 찾을 수가 없어서 다시 구글의 도움을 받으니까 예전에는 테이블명이 힌트로 주어졌었다고 한다..! 왜 힌트가 사라졌지Board table name è FreeB0aRdAdmin table name è admin 

이제 테이블 이름도 알아냈으니까 password를 확인해보자. 보통 이런 암호는 8자리나 4자리니까 8자리부터 확인을 해봤다.

board내에서 input값이 password니까 비밀번호가 들어있는 곳은 password라고 추측하고 확인을 하였다.

(select length(password) from FreeB0aRd) >= 8 è password길이를 FreeB0aRd table에서 조회

참이다 그럼 8부터 차례대로 검사해보자.

8은 아니라고 한다.

9자리로 검색하니까 참이다! 이제.. 한자리씩 비교해가면서 확인해야 되는데..

 

(select ascii(substring(password, 1, 1)) from FreeB0aRd) = 97

 

이런식으로 한자리씩 확인해보면 된다..!ascii함수는 문자열의 제일 왼쪽 문자를 ascii코드로 변환해주고 substring함수는 지정된 숫자를 기준으로 지정된 자리만큼 문자열을 자른다. Substring(문자열, 시작인덱스, 길이) 형식이다. 

 

스크립트를 짜보자.

 

이런식으로 길이도 자동화 시킬 수 있다.

FreeB0aRd password : 7598522ae

admin manual이라는 zip파일이 있었다. 파일을 열려고 하니까 암호를 입력해야 했다. 아마 admin의 암호인 것 같다..! admin암호도 똑같은 방식으로 알아내보자.

admin password : 0nly_admin

이게 파일의 암호는 아니다. 아까 봤던 admin페이지로 돌아가서 비밀번호를 입력해보자.

암호가 나온다! 패스워드를 입력하자.

html을 열어보니까

암호가 나온다~ HacKed_by_n0b0dY

'web > webhacking.kr' 카테고리의 다른 글

[webhacking.kr] level 1  (0) 2019.06.30
[webhacking.kr] join  (0) 2019.06.29

+ Recent posts