본문 바로가기

문제풀이

(6)
DreamHack Session-basic 간단한 세션에 관한 문제다. 문제를 보면 홈페이지 하나가 나온다. 추가로 동봉된 python 코드를 봐야 풀 수 있는 문제다. 로그인 할 수 있는 정보는 guest, user , admin이 있다는걸 확인할 수있다. /경로로 이동하면 로그인한 유저에따라 다른 정보를 출력한다. /login 경로로 이동하면 로그인을 할 수 있는 화면이 나온다. 사실 위 코드들에서 얻을 수 있는 정보는 크지않다. 가장 중요한 부분은 /admin 경로다. 이 경로로 접속하면 하나의 정보를 준다. admin의 세션 정보를 얻을 수 있다. 이 정보를 복사해서 메모장에 적어놓는다. 로그인 페이지로 넘어오면 지금까지 봐왔던 정보들 중 로그인할 수 있는 유저들에 대한 정보를 입력한다. 이 경우에는 user로 로그인해본다. 해당 화면이 ..
버프스위트를 이용한 문제풀이 - 5 (미스터 브루트) 미스터 브루트 문제를 누르면 해당 페이지가 나온다. login버튼을 누르고 아무 숫자나 입력한다. 버프스위트 히스토리에서 해당 페이지를 찾은 후 인크루더로 보낸다. 우측에 클리어를 눌러주고 opNum에 값을 add로 추가해준다. 경우의 수자 0000~9999까지지만 이미 해봤기때문에 시간상 1020~1050만 실험해본다. 실행해보면 혼자만 값이 다른것이 보인다. 이 숫자가 정답이다. 이 숫자를 입력하면 정답이 나온다. 이를 처음으로 돌아가 입력해주면 문제해결.
버프스위트를 이용한 문제풀이 - 4 (미스테이크) 해당 링크를 들어가서 F12를 눌러 소스를 확인한다. 아무것도 없다. ID : admin PW: 아무거나 누르고 로그인 버튼을 눌러본다. 정답 코드가 나오면서 문제 해결.
버프스위트를 이용한 문제풀이 - 3 (로그인 우회) 로그인 우회는 처음보면 조금 어려울 수 있다. 초기화면에 들어오면 login을 할 수 있다. 그 전에 우선 F12를 눌러 개발자 도구를 실행시킨다. 소스에 들어가면 top를 클릭하고 js에서 login.js를 확인한다. 버프 스위트에서 인터셉트를 누르고 login정보를 입력해준다. 33줄정도의 짧은 코드가 나오는데 이떄 19번째줄 if문을 확인해준다. if문을 항상 참으로 바꿔준다. 방법은 상관없으므로 각자의 기준에 맞춰 참으로 바꿔준다. 그리고 저장해준다. 인터셉트를 이용해서 login정보 해당 화면이 나오면서 완료된다.
버프스위트를 이용한 문제풀이 - 2 (OTP 우회) 이번에는 OTP 우회를 해보겠다. 해당 링크를 클릭하여 넘어간다. fire를 클릭한 후 url을 유심히보았다. URL을 보면 step1.php가 되어있다. 다음 페이지로 넘어가보면 step2.php가 되어있다. 다음 페이지가 step3.php일 가능성이 높으므로 url을 바꿔준다. Fire버튼을 클릭하면 코드가 나온다. 이를 처음 화면으로 돌아가서 적어넣으면 완료된다.
버프스위트를 이용한 문제풀이 - 1 (Get admin) 첫번째 문제 Get admin부터 풀어보도록 한다. 이후로도 기본정보는 같다. 링크를 클릭하면 해당 화면이 나온다. 주어진 정보를 적어넣는다. 위 목록들을 하나씩 분석해 보았다. 위 중 하나를 분석해보면 이러한 요청을 볼 수 있는데 이중 Cookie에 loginUser가 눈에 뛴다. 이를 기억한 후 인터셉트를 켠다. 인터셉트한 내용을 자세히 보면 loginUser가 보인다. 이를 admin으로 고쳐본다. index.php으로 넘어가면 같은 부분을 admin으로 고친다. 그러면 완료화면이 나온다. 이를 처음 화면으로 돌아가 적어놓으면 완료.