Android/InsecureBankv2

인시큐어뱅크(InsecureBankv2) 앱 설치

박연준 2023. 7. 3. 16:53

인시큐어뱅크(InsecureBankv2) 앱 설치

파일 다운로드

아래 링크에서 인시큐어뱅크 앱 소스를 다운로드 받을 수 있다.

인시큐어뱅크 백엔드 서버, 안드로이드 애플리케이션 소스 등이 포함되어 있다.

https://github.com/dineshshetty/Android-InsecureBankv2

 

GitHub - dineshshetty/Android-InsecureBankv2: Vulnerable Android application for developers and security enthusiasts to learn ab

Vulnerable Android application for developers and security enthusiasts to learn about Android insecurities - GitHub - dineshshetty/Android-InsecureBankv2: Vulnerable Android application for develop...

github.com

 

라이브러리 설치

백엔드 서버는 AndroLabServer라는 폴더에 위치해 있는데 이를 구동하기 위해 라이브러리를 설치해야 한다.

필요 라이브러리

  • Flask
  • Flask-sqlalchemy
  • Simplejson
  • Cherrypy

이 라이브러리들은 easy_install 프로그램으로 설치할 수 있고 easy_install은 파이썬 설치 폴더의 scripts 폴더에 포함되어 있다.

 

cmd창을 열어 easy_install flask sqlalchemy simplejson cherrypy web.py 명령어를 입력하여 라이브러리 설치를 시도한다.

다음과 같은 화면이 나오면 정상적으로 라이브러리가 설치된 것이다.

 

인시큐어뱅크 서버 실행

cmd창에서 AndroLabServer 디렉터리에서 Python app.py 명령어를 입력하여 서버를 실행할 수 있다.

아래 이미지와 같이 해당 서버 port가 8888이라고 나오면 성공한 것이다.

 

Python 버전 3 오류

Python 3 버전 이상부터는 SyntaxError: Missing parentheses in call to ‘print’라는 에러가 발생한다.

따라서 최적이라고 소개된 2.7버전을 사용하는게 좋을 것이다.

굳이 Python 3 버전을 이용하고 싶다면 app.py 파일의 print문을 print(””) 형식으로 모두 바꾸어서 저장해야 한다.

Python -V 명령어로 파이썬 버전을 확인할 수 있다.

 

인시큐어뱅크 애플리케이션 설치

안드로이드 가상 장치와 백엔드 서버가 제대로 구동되었다.

서버가 실행 중인 cmd창은 그대로 두고 창을 하나 더 연다.

이제 adb install InsecureBankv2.apk 명령어로 인시큐어뱅크 앱을 설치할 수 있다.

디렉터리는 AndroLabServer의 전 폴더로 이동해서 설치하여야 한다.

Success라고 나오면 Nox 에뮬레이터에 인시큐어뱅크 앱이 잘 설치된 것을 확인할 수 있다.

 

인시큐어뱅크 실행

애플리케이션 설치가 완료되었으므로 서버와 통신해야 하는데, 통신을 위해서는 서버 IP 주소를 설정해야 한다.

서버 IP 주소는 인시큐어뱅크 앱 → 로그인 화면 → 메뉴 → Preferences 에서 설정이 가능하다.

서버 IP 주소는 cmd창에 ipconfig를 입력하여 자신의 IP주소를 알아낸 후 설정해야 한다.

 

로그인

디폴트 계정 정보는 아래와 같다.

  • dinesh / Dinesh@123$
  • jack / Jack@123$

위 정보로 성공적으로 로그인 하면, 아래와 같이 세 개의 메뉴가 화면에 출력되는 것을 볼 수 있다.

로그인에 성공하면 다음과 같이 python app.py 명령어로 열었던 cmd 창에서 유저가 로그인했다는 메세지를 수신받을 수 있다.