MySQL

wargame.kr

[wargame.kr] tmitter

문제풀이 & 분석힌트를 확인하면 admin 계정으로 로그인하는 것이 목표라는 것을 알려주고 있고 tmitter_user 테이블 정보를 알려준다. 페이지에 접속하면 sign in, sign up 2가지로 나눠져있다. 먼저, 계정을 만들기 위해 sign up으로 접속하여 아무 계정이나 만들었다. 그 후 로그인해서 접속하면 위와 같이 트위터 페이지가 뜨는 것을 확인할 수 있다. 이 페이지에서 여러가지 시도를 해보았지만 딱히 진전은 없어서 힌트로 돌아왔다. tmitter_user 테이블에 있는 id,ps 가 32자리로 구성되어있다는 사실을 알 수 있다. 만약, id의 길이가 32자리가 넘어도 계정이 생성될 수 있나?라는 의구심이 들었고 만들어봤다. 먼저, sign up 페이지에 가서 id의 길이제한을 32자리에..

wargame.kr

[wargame.kr] login filtering

문제분석 & 풀이힌트를 요약해보면 로그인 필터링을 우회해서 계정을 로그인하라는 내용인 것 같다. 문제에 접속하니 간단한 로그인 창이 구현되어있고 소스가 주어져있다. 개발자도구를 이용해 소스를 확인해보니 주석으로 두 개의 계정이 주어져있으며 막힌 계정이라고 한다. 실제로 로그인을 해보니 막힌 계정이라고 뜨는 것을 확인할 수 있다. 이제 소스를 확인해보자. 소스를 요약하면 다음과 같다.1. POST 데이터를 id 와 pw를 각각 id, ps 으로 값을 전송받는다.2. $key 변수에 flag값을 저장한다. (23번줄)3. 쿼리를 실행하고 실행결과 레코드가 존재하면서 id가 "guest" , "blueh4g"가 아니면 $key를 화면에 노출하고 클리어. (28~36번줄) 결론적으로 DB에 저장된 계정으로 로그..

keyme
'MySQL' 태그의 글 목록