본문으로 바로가기

가. BetaBank 설치 및 실행

1. BetaBank 이란?

- 베타뱅크란 C/S App 취약점 진단 · 모의해킹을 연습할 수 있는 가상환경이다.

 

2. BetaBank 설치 및 실행 방법

- 아래의 게시글을 참고하여 'BetaBank'를 설치 및 실행한다.

[CS App 취약점 진단 · 모의해킹] - BetaFast · Bank 설치 및 실행 방법 정리

 

BetaFast · Bank 설치 및 실행 방법 정리

가. Docker Desktop 설치 및 실행1. Docker Desktop 이란?- Windows와 macOS에서 Docker 환경을 쉽게 구축하고 관리할 수 있도록 도와주는 애플리케이션이다. 2. Docker Desktop 다운로드- 아래의 사이트에 접속하여

hagsig.tistory.com

 

나. BetaBank 회원가입 및 로그인

1. 일반 사용자 권한의 계정 생성

- 'Create Account' 버튼을 클릭하여 임의의 계정을 만든다.

 

2. 일반 사용자 권한의 계정으로 로그인

- 위에서 만든 계정으로 로그인한다.

 

다. Echo Mirage 설치 및 실행

1. Echo Mirage 이란?

- 에코미라지란 클라이언트-서버 애플리케이션 간의 트래픽을 가로채고 수정할 수 있게 해주는 프로그램이다.

 

2. Echo Mirage 다운로드 및 설치

- 아래의 사이트에 접속하여 'EchoMirage-3.1.exe'파일을 다운로드한 뒤 실행한다.

https://sourceforge.net/projects/echomirage.oldbutgold.p/

 

Echo Mirage

Download Echo Mirage for free. None

sourceforge.net

 

라. 패킷 변조

1. 패킷 캡처 실행

- 'Echo Mirage' 실행 후 'Process' → 'Inject' 메뉴를 순서대로 누르고 'BetaBank' 프로세스를 선택한다.

- 그다음 Inject "BetaBank.exe" 메뉴를 클릭하여 패킷 도청을 시작한다.

 

2. 히든 버튼 활성화

- 'Snoop'를 이용하여 'Withdraw'의 'IsEnabled' 속성 값을 True로 변경한다.

 

'Snoop' 설치 및 사용방법은 아래의 게시글을 참고하길 바란다.

[CS App 취약점 진단 · 모의해킹] - BetaFast 풀이 - 권한 우회(관리자 전용 히든 메뉴 접근)

 

BetaFast 풀이 - 권한 우회(관리자 전용 히든 메뉴 접근)

가. BetaFast 설치 및 실행1. BetaFast 이란?- C/S App 취약점 진단 · 모의해킹을 연습할 수 있는 가상환경이다. 2. BetaFast 설치 및 실행 방법- 아래의 게시글을 참고하여 'BetaFast'를 설치 및 실행한다.[CS Ap

hagsig.tistory.com


- 임의의 숫자를 입력한 후 잠금 해지된 'Withdraw' 버튼을 
클릭한다.

 

- 'Echo Mirage'에서 캡처된 패킷을 확인하니 *SQL이 전송되는 것을 확인할 수 있다.

*원본 SQL : UPDATE BetabankBalances SET Balance = Balance - 100.00 WHERE Username = 'hagsig';

 

3. Sql Injection 공격 수행 

- DB에서 사용하는 계정 정보를 불러올 수 있는 *SQL으로 수정하여 전송한다. 

※ 패킷의 길이를 변경할 수 없지만 '--'을 이용하여 나머지 SQL을 주석처리할 수 있다.

*수정 SQL : SELECT * FROM Users; --

 

- 아쉽게도 'Echo Mirage'는 변조한 패킷에 대한 응답 패킷이 캡처되지 않는다.

- 'Wireshark'로 변조한 패킷의 응답 값을 확인한다.

 

- SQL 인젝션 공격을 통해 데이터베이스에 저장되어 있는 타인의 계정정보를 알게 되었다.

LastName FirstName Username EncryptedPassword Role
Chairman The The_Chairman IRUCBQ8EVEtKVVFsYWNlcg==  
hagsig hagsig hagsig GgQXHwgEZXJyZXBsYWNlcg==  

 

- 로그아웃 후 로그인 화면에서 'The_Chairman'와 임의의 패스워드를 입력한 뒤 'Login' 버튼을 누른다.

 

- 'Echo Mirage'로 패킷을 캡처하여, 패스워드를 "IRUCBQ8EVEtKVVFsYWNlcg=="으로 변경한다.

 

- "The_Chairman"의 계정으로 정상 로그인 한 것을 확인할 수 있다.