2. 국내 모바일 앱 보안점검 체크리스트
그룹 | 점검항목 | 세부내용 |
---|---|---|
1 | 백신 프로그램 적용 | 앱 실행 시 백신프로그램 구동 여부 백신 프로그램 최신 버전 업데이트 여부 |
2 | 입력정보 보호대책 적용 여부 | 주요정보 입력 시 가상 보안키패드 등 입력 정보 보호대책 적용 여부 |
3 | 금용정보 종단간 암호화 적용 여부 | 스마트폰 앱과 금용회사 전자금융 서버 간 종단 간 암호화(End-to-End) 적용 여부 |
4 | 폰 임의개조 탐지 및 차단 | 앱 실행 시 폰 임의개조 탐지 및 차단 여부 |
5 | 앱 무결성 검증 기술 적용 | 앱 구동 시 설치파일, 바이너리 파일, 리소스 파일 등 중요 파일 무결성 정보생성 및 검증 여부 |
6 | 코드 모듈 보호 | 실행 코드 보호대책 적용 여부 |
7 | 앱 취약점 점검 | 위변조 방지모듈에 대한 취약점 점검 여부(자체 또는 전문기관 위탁) |
8 | 앱 위변조 로그 기록 | 앱 위변조 로그기록 및 관리 여부 |
9 | 멀티로그인 차단 | 동시에 2대의 스마트폰(PC 스마트폰)에서 동일 ID로 접속 허용 여부 |
10 | 스마트폰에 중요 정보 저장 금지 | 스마트폰에 중요 금융정보 저장 여부 |
11 | 스마트폰 금융 거래기록 정보보관 | 금융사고 발생 시 추적성 강화를 위해 스마트폰금융 거래 정보 보관 여부 |
12 | 정보보관시 고객 사전동의 | |
13 | 시큐어 코딩기술 적용 여부 | |
14 | 소스코드내 중요정보 노출여부 |
1. 폰 임의개조 탐지 및 차단
- 점검항목 : 앱 실행시 폰 임의 개조 탐지/차단 여부
- 평가기준 : 앱 구동시 루팅 사실을 확인 하는 경우 양호
- 점검절차 : 임의개조 폰(루팅된 폰)에서 앱 실행시 탐지 및 서비스 접속 차단 여부 확인
2. 앱 무결성 검증 기술 적용
- 점검항목 : 위.변조 앱에서 접속시 탐지 및 차단 여부
- 평가기준 : 프로그램 변경후 실행시 비정상 종료 되는경우 양호
- 점검절차 : 리패키징된 앱으로 서비스 이용 가능 여부 확인(apktool 등을 이용함)
3. 적용된 암호기술
- 점검항목 : 적용된 암호기술(알고리즘/키공유)의 적정성 여부
- 평가기준 : 개발자 인터뷰시, 검증된 암호화 알고리즘이 사용된 경우(AES, RSA 등) 이면 양호
- 점검절차 :
- 개발자 인터뷰
- 안정성이 검증된 키 공유 방식 적용
- 자체개발된 키 공유 방식이 적용된 경우 적정성 여부
- 공개키(대칭키) 키교환 및 표준 암호알고리즘
- 한국인터넷진흥원 ‘암호 알고리즘 및 키 길이 이용 안내서’
- 국가 정보원IT 인증 사무국 ‘암호모듈 검증’
4. 실행코드 보호 대책 적용 여부
- 점검항목 : 실행 코드 보호 대책 적용 여부
- 평가기준 :
- 양호 : 소스코드가 난독화가 잘 이루어져 있어 분석이 난해한 경우
- 미흡 : 난독화가 적용되어 있으나 일ㄹ부 내용이 미적용인경우
- 취약 : 소스코드 난독화가 적용되지 않아 소스코드 분석이 쉬운 경우
- 점검절차 :
- 난독화, 암호화 등 코드보호기술 적용여부
- 주요 코드에 대한 자동업데이트 기능 적용(동적코드 기술)
- 앱코드 자동업데이트 기능이 있어 위변조앱 접속시 자동 업데이트
- 네이티브 라이브러리 구현등의 기술 적용 여부
- 자바가 아닌 해독이 어려운 네이티브(c/c++) 라이브러리 적용여부
- 적용된 난독화 도구명
5. 주요정보 입력시 입력정보 보호 대책 적용 여부
- 점검항목 : 주요정보 입력시 입력정보 보호 대책 적용 여부
- 평가기준 : 비밀번호, 공인인증서 비밀번호 등 입력시 가상키패드 등이 활성화 되고 키패드 위치 변화가 발생해야함
- 점걸절차 :
- 입력정보 보호를 위해서 별도의 입력 인터페이스 적용여부 확인
- 자판 배열의 랜덤성 적용 여부 확인
- 입력정보 보호대책 적용 대상 모든 확인
6. 스마트폰 앱과 금융회사 전자금융 서버간의 종단간 암호화 적용여부
- 점검항목 : 스마트폰 앱과 금융회사 전자금융 서버간의 종단간 암호화 적용여부
- 평가기준 : 송신되는 정보(계좌번호, 비밀번호, 금액등) 암호화가 되어 있는경우 양호
- 점걸절차 :
- wireshark, burpsuite등
- 종단간 암호화 유지
- 주요 정보들의 * 처리 확인
- 암호대상 전부 확인 필요
- 대응방안
- ssl/tls 사용
- 검증된 방법으로 암호화, 가상키패드 적용
7. 거래전문 무결성 검증 기법 적용 여부
- 점검항목 : 거래전문 무결성 검증 기법 적용 여부
- 평가기준 : 거래전문 데이터에 표준 보안프로토콜(SSL,HMAC* 등) 사용시 양호
- 점걸절차 :
- wireshark, burpsuite등
- 거래정보 전문 무결설 검증을 위한 생성정보와 이를 통한 서버측 검증과정 진행
- 모든 전문에 무셜정 검증 시 양호
- 대응방안
- ssl/tls 사용
- 가상키패드 적용 , 검증루틴 구현
8. 스마트폰 정보 보관시 고개 사전 동의 여부
- 점검항목 : 스마트폰 정보 보관시 고개 사전 동의 여부
- 평가기준 : 회원 가입시 약관 동의 절차가 존재하여 동의후 서비스 사용
- 점걸절차 :
- 스마트폰 금융거래 정보 보관 여부
- 추적성 강화를 위한 보관하는 정보
- 이용자 ID, 거래 일시, 출금계좌등 모든 정보 표시
9. 스마트폰에 주요 금융 정보 저장 여부
- 점검항목 : 스마트폰에 주요 금융 정보 저장 여부
- 평가기준 : 단말기 리소스에 중요정보가 발견되지 않은 경우
- 점걸절차 :
- 루팅된 단말기 활용하여 해당 앱 데이터 디렉토리 검사
10. 백신프로그램 적용여부
11. 앱 취약점 점검여부
- 점검항목 : 앱 취약점 점검여부
- 평가기준 : 서비스 오픈, 개편 시 정기적인 취약점 점검 실시(1년 미만)
- 점걸절차 :
- 서비스 개시 또는 업데이트시
- 전문기관 위탁 실시
- 주기적 관린 여부 확인
12. 소스코드 개발시 시큐어 코딩 기술 적용 여부
- 점검항목 : 소스코드 개발시 시큐어 코딩 기술 적용 여부
- 평가기준 : 시큐어 코딩 표준 문서 존재 및 보안 라이브러리 적용시 양호
- 참고 자료 소프트웨어 개발보안 관련 가이드
- 점걸절차 :
- 앱 개발단계에서 보안취약점을 배제하기 위한 시큐어 코딩을 준수하여 개발 했는지 여부
13. 멀티로그인 차단 적용 여부
- 점검항목 : 멀티로그인 차단 적용 여부
- 평가기준 : 동일계정이 불가능할 경우 양호
- 점걸절차 :
- 다른 스마트폰으로 로그인시 허용/제한 여부
- 자금 이동 관련 업무에 대하여 멀티 로그인 제한
- 사고위험이 낮은 업무에 대해서는 허용 가능
14. 소스코드내 중요 정보 노출 여부
- 점검항목 : 소스코드내 중요 정보 노출 여부
- 평가기준 : 소스 또는 바이너리에서 중요정보가 발견되지 않은 경우
- 점걸절차 :
- dex2jar
- 소스코드를 분석하여 관리자 계정 등 중요 정보가 있는지 확인