가. 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"의 계정으로 정상 로그인 한 것을 확인할 수 있다.
'CS App 취약점 진단 · 모의해킹' 카테고리의 다른 글
BetaBank 풀이 - 메모리 내 중요정보 평문노출 취약점 (0) | 2024.11.14 |
---|---|
BetaBank 풀이 - 어셈블리 변조 취약점(무결성 검증) (0) | 2024.11.12 |
BetaFast 풀이 - 중요정보 평문저장 취약점(로컬 저장소) (0) | 2024.11.10 |
BetaFast 풀이 - 권한 우회 취약점(관리자 전용 히든 메뉴 접근) (0) | 2024.11.07 |
BetaFast · Bank 설치 및 실행 방법 정리 (0) | 2024.11.06 |