모바일전자정부서비스앱검증신청기관을위한모바일앱보안성검증안내서 V1.0 2011.8.
제개정이력 (Revision History) 순번 제개정일 변경내용발간팀비고 1 2011.8.25 [ 제정] 모바일앱보안성검증안내서 공공소프트웨어보호팀 V1.0
목 차 제1 장개요 1 제1 절목적 1 제2 절적용범위 1 제3 절문서구성 1 제2 장검증체계 2 제1 절역할및책임 2 제2 절검증절차 3 제3 장검증기준 5 별지. 서식문서 [ 서식1] 검증신청서 8 [ 서식2] 검증접수증 10 [ 서식3] 보안명세서 11 [ 서식4] 보완요청서 14 [ 서식5] 보완조치내역서 16 [ 서식6] 검증결과보고서 18
제1장개요 제1절목적및필요성 모바일전자정부서비스앱보안성검증체계 는국가 공공기관에서개발되는모바일앱 (App, Application 약자) 에대해소스코드수준의보안취약점1) 을검증하여, 국가공공기관에서제공하는 모바일전자정부서비스의안전 신뢰성을제고하는데목적이있다. 본안내서는 모바일전자정부서비스앱보안성검증체계 에따른모바일전자정부서비스 앱보안성검증기준및절차등을소개하여, 모바일전자정부서비스앱에대한보안성검증을 신청하고자하는기관및개발담당자에게도움을주기위해작성되었다. 제2절관련지침 모바일전자정부서비스앱보안성검증수행과관련된지침및가이드는다음과같다. 1. 지침 1) 정보시스템구축 운영지침( 안)( 행정안전부공고제2011253 호) 제44 조( 소프트웨어개발보안) 행정기관등의장은소프트웨어의안전성및보안성확보를 위해사업자에게행정안전부장관이정하는 < 관련조항 > 소스코드등의보안취약점을점검하고제거하게하여야한다. 소프트웨어개발보안가이드 를준수하게하고, 2. 가이드 1) 소프트웨어개발보안가이드( 행정안전부, 발간등록번호 11131100000033010) 2) 모바일전자정부서비스보안가이드라인( 행정안전부) 3) 행정기관을위한정보화사업단계별관리점검 가이드 V2.0( 행정안전부한국정보화진흥원, 2011.7) 제3절문서구성 본안내서는다음과같이구성된다. 2 장은모바일전자정부서비스앱에대한검증체계에대해설명한다. 3 장은모바일전자정부서비스앱보안취약점검증기준에대해설명한다. 1) 보안취약점은모바일앱개발과정에서개발자실수논리적오류또는의도적인악성코드삽입등으로인해발생할수있으며,, 모바일플랫폼의취약점으로인해발생할수도있음 1
제2장검증체계 본장에서는모바일전자정부서비스앱보안성검증체계를소개한다. 제1절역할및책임 모바일전자정부서비스앱보안성검증과관련된기관의역할과책임에따라정책기관, 검증기관, 신청기관, 사용자로구분된다. < 앱보안성검증체계도 > 1. 정책기관( 행정안전부) 정책기관인행정안전부의주요업무는다음과같다. 1) 2) 모바일전자정부서비스앱보안성검증관련제도정비및관련지침고시 모바일전자정부서비스앱보안성검증관련정책수립및검증기준준수권고 2. 검증기관( 한국인터넷진흥원) 검증기관인한국인터넷진흥원의주요업무는다음과같다. 1) 모바일전자정부서비스앱보안성검증및교육 2) 앱보안성검증기준및방법론, 검증안내서및개발보안가이드개발 3. 신청기관( 국가 공공기관) 신청기관의의무는다음과같다. 1) 모바일전자정부서비스앱보안성검증에필요한문서작성및제출 2) 보안취약점보완및제거, 검증된모바일전자정부서비스앱배포 서비스 4. 사용자( 국가 공공기관직원, 국민) 사용자는모바일전자정부서비스를이용하는공무원, 공공기관직원, 일반인으로, 안전하게 모바일전자정부서비스를이용하기위해다음사항의준수가권고된다. 1) 보안취약점검증등신뢰성이보증된앱만설치 사용 2) 모바일플랫폼의구조를임의로변경하지않기 3) 운영체제및백신프로그램을항상최신버전으로유지하기 2
제2절검증절차 모바일전자정부서비스앱보안성검증을위한세부절차는다음과같다. < 모바일앱보안성검증절차 > 1. 신청단계 신청기관은모바일전자정부서비스앱보안성검증신청을위해다음과같은제출물을준비한 후, 검증신청서( 별지제1 호서식) 와함께검증기관에방문하여제출한다. 검증기관은검증신청서 접수시, 신청기관에접수증( 별지제2 호서식) 를발급한다. 1) 컴파일가능한소스코드일체 제출물목록 2) 모바일기기에서실행가능한실행파일( 예,.apk,.app,.cap 등) 3) 앱의보안속성, 구현기능, 시험항목및결과등을서술한보안명세서( 별지제3 호서식) 검증신청시, 제출물제출방법은? 1. 신청기관은신청제품의소스코드, 실행파일, 보안명세서등제출물을 CD( 또는 DVD) 매체를 이용하여검증기관에제출한다. 이때, 검증신청서는신청기관의직인을찍어문서로제출한다. 소스코드를제외한제출물은온라인으로암호화하여제출가능 2. 애플 ios 기반앱의소스코드제출시, 해당앱개발공간인애플노트북에서 CD( 또는 DVD) 로 구워야한다. 그렇지않은경우, 소스코드또는파일명이변경되어再제출요구를받을수있다. 2. 검증단계 검증기관은신청제품이검증기준( 제3 장) 에명시된요구수준을만족하는지여부를제품기능및 소스코드를대상으로검증한다. 다만, 보완이필요한경우검증기관은신청기관에보완( 별지 제4 호서식) 을요청하고, 신청기관은해당보완사항을조치하여검증기관에보완조치내역( 별지 제5 호서식) 과함께보완조치된제출물을제출한다. 앱보안성검증에소요되는전체기간은? 1. 검증신청제품은접수한순서대로검증이수행되며, 검증수요가많은경우검증인력이가용할 때까지검증수행이보류된다. 2. 검증수행기간은제품의기능및보안취약점에따라검증착수후 1~2 주가소요된다. 단, 제품의 보완조치요구시, 보완조치내역확인을위해 1 주이내의기간이추가소요될수있다. 3. 검증기관의보완요청발생시, 신청기관은 2주내로보완조치하여검증기관에다시제출해야 한다. 단, 앱보안성검증수요를고려하여전체보완요청이 3 회를초과할경우, 보완된제품에 대한검증신청을다시해야한다. 3
3. 배포단계 검증기관은검증결과( 별지제6 호서식) 를정책기관과신청기관에게통보한다. 신청기관은 검증이완료된앱을앱스토어를통해배포및서비스한다. 검증된앱의배포방법은? 1. 행정기관내부업무용으로사용하는경우, 외부에공개되지않는별도채널을통해배포한다. ( 11 년) 모바일전자정부서비스를위한공통기반구축사업 에따라구축되는 모바일전자정부 지원센터 의지원을받을수있다. 2. 민원24 등과같은대민서비스용인경우, 신청기관은민간앱스토어( 예, KT 올레마켓, LGU+ 오즈스토어, SKT T 스토어등) 에등록하여배포한다. 3. 구글안드로이드또는애플 ios 기반앱개발시필요한앱식별자는신청기관및앱정보가 식별될수있어야하며, 개발업체의정보가포함되지않도록한다. 신청기관이해당앱개발자( 회사) 로등록되어야함 4
제3장검증기준 모바일전자정부서비스앱에대한보안성을검증하는기준은다음과같다. 1. 규제( 법 지침등) 준수점검 다음과같은법 지침등의요구사항에위배되지않아야한다. 1) 개인정보보호관련법 지침 2) 위치정보보호관련법 지침 3) 개인정보및위치정보이외비밀번호등중요정보보호관련법 지침 4) 모바일서비스관련보안가이드 관련법 지침등의주요요구사항은무엇인가? 1. 개인정보보호관련주요법 지침 개인정보보호법, 정보통신망이용촉진및정보보호에관한법률 시행령 개인정보수집 저장 전송등보안요구사항 개인정보수집시, 법에서언급된불가피한경우를제외하고정보주체동의를받아야함 개인정보를암호화하여안전하게저장및전송 개인정보불필요시( 보유기간경과, 처리목적달성등) 복구 재생되지않도록파기해야함 이용자의개인정보및인증정보를송 수신하는경우보안서버구축등의조치를취해야함 2. 위치정보보호관련주요법 지침 위치정보의보호및이용등에관한법률 시행령 위치정보수집 저장 전송등보안요구사항 개인정보수집시, 긴급구조기관의긴급구조등을제외하고위치정보주체동의를받아야함 개인위치정보의수집 이용, 제공목적달성시, 개인위치정보는즉시파기해야함 위치정보의누출 변조, 훼손등을방지해야함 3. 기타주요법 지침 전자정부법시행령, 정보통신망이용촉진및정보보호에관한법률 시행령, 행정기관정보 4. 시스템접근권한관리규정, 정보시스템구축 운영지침( 안) 사용자인증및계정관리보안요구사항 업무담당및시스템관리자인증은행정전자서명사용 민원인의경우, 아이디/ 비밀번호를사용하고신분증명이필요한경우공인인증서사용 비밀번호조합규칙( 영문 숫자 특수문자등조합 9 자리이상등) 및일방향암호화저장 중요정보에대한보안요구사항 주민등록번호및계좌정보등금융정보의암호화저장 모바일서비스관련보안가이드 모바일전자정부서비스보안가이드라인, 모바일전자정부서비스앱개발보안가이드, SW 개발보안가이드 모바일전자정부서비스앱개발대한보안요구사항 행정업무용앱은 ( 11 년) 모바일전자정부서비스를위한공통기반구축사업 에따라구축되는 보안인프라사용 기능( 식별및인증등), 플랫폼, 소스코드에대한보안취약점이잔존하지않아야함 5
2. 기본동작점검 앱보안취약점검증을위한기본전제조건으로다음사항을만족해야한다. 1) 앱설치및삭제가정상적으로이루어져야한다. 앱설치및삭제시오류발생여부 2) 구현된기능이정상적으로동작해야한다. 구현된기능동작시오류발생여부 3. 보안취약점점검 개발자및검증자에의해식별된보안위협을기반으로다음점검항목을만족해야한다. 1) 기능설명( 예, 보안명세서, UI 명등) 내용과실제앱기능이일치해야한다. 명세되지않은기능존재여부악성행위( 예, 불법녹음, 임의데이터전송, 임의로위치정보수집 전송등) 기능존재여부 2) 기능동작에필요한최소권한만부여되어야한다. 관리자권한으로동작되는기능존재여부 3) 외부입력정보를기반으로기능동작시, 입력정보에대한유효성을검증해야한다. 외부입력값의유효성( 예, 지정된길이초과, 악성코드포함등) 검증기능존재여부 4) 중요정보( 개인정보, 개인위치정보, 업무정보등) 는안전하게관리( 저장, 전송등) 되어야한다. 중요정보저장 전송시암호화여부 필요시, 앱( 또는웹) 서버의중요정보관리기능점검 5) 구현기능은모바일플랫폼의보안모델에위배되지않아야한다. 루팅, 탈옥등과같은플랫폼변조기능존재여부 플랫폼에서제공하는보안기능사용여부 ( 11 년) 모바일전자정부서비스를위한공통기반구축사업 에따른보안인프라로대체사용가능 6
6) 구현언어기반소스코드보안취약점( 예, CWE 2),CWE/SANSTop25 3), 소프트웨어개발보안 가이드 4) 등이발견되지않아야한다 ). 입력데이터검증및표현,API 악용, 보안특성, 시간및상태, 에러처리, 코드품질, 캡슐화등 소스코드취약점분류에따라신청제품의소스코드에관련취약점존재여부 7) 상용또는공개모듈( 소스코드미제공) 을사용하여기능구현시, 해당모듈에대한안전성은 보증되어야한다. 8) 상용또는공개모듈사용목적및기능의적절성여부 해당모듈에대한개발업체의안전성확인방법및결과의적절성여부 안전한모바일전자정부서비스제공을위해구축되는공통인프라가제공하는보안기능이 검증제품에필요한경우, 공통인프라기능을사용하거나그에준하는기능을구현해야한다. ( 11 년) 모바일전자정부서비스를위한공통기반구축사업 에따라구축되는보안인프라에서제공하는기능사용여부 9) 공개영역( 예, 논문, 웹사이트등) 등을통해잘알려진보안취약점이발견되지않아야한다. 모바일플랫폼( 예, 안드로이드, ios, 윈도우모바일 6.5/ 윈도우7 등), 개발언어( 예, 안드로이드 자바, Objective C, C# 등) 등에대한알려진( 및신규) 취약점존재여부 10) 그외위 ( 1~9 번항목), 검증대상제품에특화된보안취약점이발견되지않아야한다. 신청제품의서비스특성에따른추가적인보안취약점존재여부 2) CWE(Common Weakness Enumeration), http://cwe.mitre.org 3) CWE/SANS Top25 Most Dangerous Software Errors, http://www.sans.org 4) 행정안전부, 정보시스템 SW 개발운영자를 위한소프트웨어개발보안가이드(2011.6 월),http://www.mopas.go.kr 7
( 별지) 서식문서
[ 별지제1 호서식] ( 앞면) 접수번호제호검증신청서 1 신청기관명 신청기관 2 담당자 ( 직책) 부서명 전화 이메일 3 개발업체명 개발기관 4 개발자 ( 직책) 부서명 전화 이메일 5서비스유형 대민서비스 내부행정 현장업무 기타 ( ) 6구현유형 앱 하이브리드앱( 앱+ 웹) 기타( ) 검증신청 제 품 7개발플랫폼 구글 애플 MS 기타( ) 8운영체제 9 개발언어 10 앱식별자 상기와같이모바일전자정부서비스앱에대한보안성검증을신청하며, 없음을확인합니다. 기재사항에허위사실이 신청인 년월일 ( 서명또는인) 한국인터넷진흥원장귀하 8
[ 별지제1 호서식] ( 뒷면) 검증신청서작성요령 1. 해당하는빈칸에 와같이표기한다. 2. 각항목의작성요령은다음과같다. 1 신청기관의기관명을기재한다. 2 검증신청업무담당자성명, 직책, 부서명, 전화번호, 이메일주소등을기재한다. 3 개발기관의상호또는명칭을기재한다. 4 개발업무담당자성명, 직책, 부서명, 전화번호, 이메일주소등을기재한다. 5 다음의앱서비스유형에따라해당항목에표기한다. 대민서비스 : 全국민대상으로정보열람, 민원신청 열람, 세금납부등 서비스제공 내부행정업무 : 공무원및공공기관직원대상으로이메일, 메모보고, 전자결재등서비스제공 현장업무 : 공무원및공공기관직원대상으로기상정보, 주정차위반 단속등현장행정업무서비스제공 기타 : 위유형에해당되지않는경우로관련유형기술 6 7 8 9 10 앱구현유형에따라해당항목에표기한다. 앱개발플랫폼유형에따라해당항목에표기한다. 앱설치운영대상운영체제명칭과버전번호를기재한다. 앱개발언어를기재한다. 앱명칭과식별자예 (, kr.or.kisa.app) 를기재한다.( 단, 식별자가없는경우 앱명칭만기재한다.) 9
[ 별지제2 호서식] 검증신청접수증 검증신청접수증 접수번호 접수담당자 기관명 검증신청인 성명 연락처 제품명 위와같이접수하였음을확인합니다. 접수인 년월일 한국인터넷진흥원 접수된제출물은내부제출물관리절차에의해안전하게관리됩니다. 10
[ 별지제3 호서식] 보안명세서 < 검증대상제품명 > 년월일 < 신청기관명 > 11
1. 개요 o 일반적으로다음의사항을포함한다. 검증신청제품식별정보( 제품명, 버전, 신청기관, 배포예상앱스토어등) 서비스소개( 앱 서버구성, 주요제공서비스설명등) 기타추가적으로포함되어야할사항 2. 보안속성 o 일반적으로다음의사항을포함한다. 앱기능설치동작시필요한권한설명 앱에서다루는중요정보( 개인정보, 개인위치정보, 업무정보등) 및이에대한 안전한관리방법서술 위치정보사업또는위치기반서비스사업신고여부기술 비밀번호조합규칙( 조합문자, 길이등) 서술 모바일플랫폼에서제공하는보안메커니즘사용내역 기타추가적으로포함되어야할사항 3. 구현기능 o 일반적으로다음의사항을포함한다. 구현된모든 UI 이미지및 UI 동작에따른기능동작설명 UI 에서식별되지않는기능( 예, 서비스등) 설명 예외및오류메세지 상용또는공개모듈( 소스코드미제공) 사용시, 사용목적및기능설명 기타추가적으로포함되어야할사항 12
4. 시험항목및결과 o 일반적으로다음의사항을포함한다. 구현된모든기능항목및식별된기능항목에대한시험항목식별 시험항목별시험목적, 시험환경, 시험절차, 시험결과등 상용또는공개모듈( 소스코드미제공) 사용시, 해당모듈에대한시험결과포함 기타추가적으로포함되어야할사항 13
[ 별지제4 호서식] < 접수번호> 보완요청서 < 검증대상제품명 > 년월일 14
1. 개요 o 일반적으로다음의사항을포함한다. 검증신청개요 : 접수번호, 검증대상제품명, 신청기관명등 보완요청서개요 : 보완요청서식별정보, 보완요청목록등 2. 보완요청 o 보완요청항목에는일반적으로다음의사항을포함한다. 검증기준항목, 보완요청내용, 보완요청을이행하지않는경우검증에미치는 영향등 기타추가적으로포함되어야할사항 15
[ 별지제5 호서식] < 접수번호> 보완조치내역서 < 검증대상제품명 > 년월일 < 신청기관명 > 16
1. 개요 o 일반적으로다음의사항을포함한다. 보완조치대상제품명, 신청기관명등 보완요청일, 보완조치기간등 2. 보완조치 o 보완조치항목에는일반적으로다음의사항을포함한다. 보완요청항목, 보완요청내용에대한조치내역, 조치사항에대한자체확인 결과등 기타추가적으로포함되어야할사항 17
[ 별지제6 호서식] < 접수번호> 관리번호 모바일전자정부서비스앱 보안성검증결과보고서 < 검증대상제품명 > 년월일 18
제1장개요 o 일반적으로다음의사항을포함한다. 앱보안취약점검증관련규정 검증대상제품식별정보 신청기관명, 검증기관명, 검증자이름 기타추가적으로포함되어야할사항 제2장검증대상제품구조 o 일반적으로다음의사항을포함한다. 제품구성및주요기능설명 제3장검증결과 o 일반적으로다음의사항을포함한다. 검증대상제품의보안취약점검증결과를요약하여기술 특이사항등 기타추가적으로포함되어야할사항 [ 부록] 보완요청서 o 일반적으로다음의사항을포함한다. 보완요청목록( 보완요청항목, 처리상태등) 등 기타추가적으로포함되어야할사항 19
모바일전자정부서비스앱검증신청기관을위한모바일앱보안성검증안내서 V1.0 발행 : 2011년 8월 발행인 : 서종렬발행처 : 한국인터넷진흥원 (KISA, Korea Internet & Security Agency) 서울시송파구가락동 793 대동빌딩 Tel : (02) 4055114 << 비매품 >> 본안내서내용의무단전재및복제를금하며, 가공인용하는 경우반드시 한국인터넷 진흥원(KISA) 의 모바일앱보안성검증안내서 라고밝혀주시기바랍니다. 본안내서의내용과관련한문의는아래로해주시기바랍니다. 한국인터넷진흥원정보보호본부공공정보보호단공공소프트웨어보호팀방지호책임연구원 (024055342, jhbang@kisa.or.kr) 본안내서관련최신본은행정안전부홈페이지 (www.mopas.go.kr) 에서얻으실수있습니다.