본문 바로가기

보안/[War Game] 해커팩토리

(7)
해커팩토리 10번 앞선 문제들은 문제 풀이를 너무 자세히 작성하여 글을 노출 시키지 않았다. 구글링을 해보니 생각 외로 해커팩토리 10번 문제 힌트가 적어서 이 글은 자세한 풀이보다는 힌트용으로 작성하였다. ​ ​ 해당문제는 위와 같다. 문제를 접속하면 다음과 같은 화면이 뜬다. ​ guest1/guest1 로 페이지를 들어 간 뒤 My Page 를 보면 ​ 위와 같은 화면을 볼 수 있다. ​ Burp Suite로 HTTP Request 를 보면 조작 할 만한 변수가 존재할 것이고 이를 파이썬으로 조작을 해도 되지만 Burp Suite의 Intruder 기능을 사용하여 관리자 아이디를 찾아보았다. 관련 사용법은 구글링이나 블로그를 참고하면 된다. ​ 참고한 글 (https://securitycode.tistory.com/..
해커팩토리 초급문제 7번 해커팩토리 초급문제 7번 ​ ​ 글을 살펴보면 다음과 같은 암호를 입력하는 창이 뜨는 것을 살펴 볼 수 있다. brup suite를 이용하여 스크립트를 확인하면 다음과 같다. 유저의 비밀번호를 암호화하는 function 은 util.js 에 있음을 확인한다. 다음과 같은 URI 경로로 들어가서 암호화하는 구문을 확인한다. ​ ​ ​ ​ 패스워드를 유추하기 위해 온라인 자바스크립트 사이트를 이용하면 다음과 같이 BestOfBestHackerFacto 라는 비밀번호가 나오는 것을 확인한다. 유니코드 3자리를 encode 하여 burpsuite 에서 탈취한 암호화된 비밀번호와 같을 때까지 반복문으로 확인한다. 마지막 ry 는 처리되었으므로 반복문을 통해 확인 할 수 없고 추측은 가능하다. 실제로 게시글 암호문..
해커팩토리 초급문제 6번 해커팩토리 초급문제 6번 문제는 위와 같다. 고급 정보를 읽으려고 하면 다음과 같이 비밀글 읽기 권한이 없다는 alert가 실행된다. burp suite를 통해 현재 페이지를 새로 고침 해본다. ​ 다음과 같이 고급 정보글에는 alert가 걸려있음을 확인 할 수 있다. 고급 정보의 게시글은 2001번이고 다른 페이지들이 board_view.php?idx= 글번호 구조로 되어있는 것을 확인한다. ​ ​ 때문에 고급정보글을 읽기 위해 다음과 같은 구조로 서버의 response 를 변조한다. ​ 게시글 버튼을 눌러보면 board_view의 2001 번 을 확인 할 수 있다.
해커팩토리 초급문제 4번 해커팩토리 초급문제 4번 다음은 초급문제 4번의 문제 내용이다. 접속해보면 board 라는 게시글을 읽을 수 있는 메뉴가 상단에 있는 것을 확인한다. 게시판을 살펴보면 몇 가지 글들이 있음을 확인한다. 위 화면 처럼 게시글 다운로드 버튼에 속성을 눌러 URL을 확인한다. 크롬에서는 속성이 보이지 않으므로 인터넷 익스플로어를 이용하였다. 또는 httrack 이나 디렉토리 인덱싱 취약점으로도 어디서 파일을 다운 받아 오는지 확인 할 수 있다. 여기서는 디렉토리 인덱싱 취약점은 발견하지 못하였다. ​ 위 URL 에서 파일을 받아오므로 파일이름을 조작하여 원하고자 하는 /temp/hacktory.txt 파일을 다운받는다 ../../../../../ 을 무수히 많이 쓰면 파일 디렉토리의 최상단 까지 올라갈 수 있..
해커팩토리 초급문제 3번 해커팩토리 초급문제 3번 문제의 내용은 다음과 같다 구매하기 위해 상세보기 버튼을 누른다 2번 문제처럼 구매하기 버튼을 눌러 할인되는 값과 결제금액을 조작해본다. 위 화면에서 2번 문제 풀이 처럼 CostDC를 Original Cost금액과 동일하게 맞춘 후 합계금액을 0으로 바꾸어 본다. 또는 모든 금액을 0으로 맞추어 본다. 위화면 처럼 상품 금액이 일치하지 않는다는 메세지를 보낸다. 서버에 상품금액을 체크하는 로직이 있을 것이라 추측하고 파라미터 값을 변조하지 않고 request를 보낸다. 문제에서 휴대폰 간편 결제 시스템만 사용가능하다고 했으므로 휴대폰 간편결제를 클릭한다. 클릭 전에 팔콘프록시를 이용하여 이곳에서 CostDC와 TotalCost 변조를 시도해본다 ​ 위 화면의 밑줄 친 값들을 0..
해커팩토리 초급문제 2번 해커팩토리 초급문제 2번 문제는 다음과 같다. ​ ​ 상세보기 버튼을 누른다. ​ 팔콘 프록시를 사용하여 구매하기 버튼을 눌렀을 때 http request를 brup suite로 보낸다. ​ ​ burp suite에서 intercept한 request 내용은 다음과 같다. OriginalCost와 CostDc, TotalCost 를 변조하여야 한다. CostDC(할인율)과 정가를 똑같이 만들어서 총 결제금액을 0으로 만든다. Original Cost를 0원으로 만들고 CostDC도 0으로 변조하여 Total 을 0으로 만드는 방법을 사용해보았으나 서버측에서 Original Cost 를 건들면 체크하는 로직이 있는지 정상 결제가 되지 않았따. ​ 문제에서 휴대폰 간편결제 기능만 동작한다고 하였으므로 휴대폰..
해커팩토리 초급문제 1번 해커팩토리 초급문제 1번 문제 풀이 ​ ​ 나의 포인트가 0원이고 가격이 1,000,000,000 포인트인 슈퍼파워 컴퓨터를 구매하고자 한다. ​ 팔콘 프록시를 사용하여 burp suite가 동작하고 있는 127.0.0.1:8080 으로 즉시구매를 눌렀을 때의 http request를 보낸다. . ​ ​ bupr suite에는 다음과 같이 userpoint 가 0임을 확인 할 수 있고 이 값을 변조하여 서버로 전송한다. ​ 다음과 같이 나의 포인트를 변조하였다. ​ 서버에서 정상결제 완료 메세지와 함께 다음 레벨로 갈 수 있는 인증키를 주었다. 워게임 메뉴 가장 하단에 인증키 입력 부분에 획득한 인증키를 입력한다.