CWN(CHANGE WITH NEWS) - 모바일 앱의 보안 코딩을 위한 4가지 팁

  • 구름많음임실3.9℃
  • 흐림인제10.7℃
  • 구름많음서귀포13.1℃
  • 구름조금성산10.0℃
  • 흐림정선군4.5℃
  • 구름많음장수2.9℃
  • 구름많음광주9.2℃
  • 구름많음완도9.9℃
  • 구름많음보성군6.8℃
  • 흐림상주7.0℃
  • 흐림파주11.1℃
  • 구름많음목포11.2℃
  • 구름많음울릉도12.4℃
  • 구름많음고창군10.3℃
  • 흐림강화12.3℃
  • 흐림추풍령4.8℃
  • 흐림거창5.2℃
  • 구름많음보령12.8℃
  • 구름많음영광군8.8℃
  • 구름많음울산8.2℃
  • 구름많음고산15.4℃
  • 구름많음해남5.9℃
  • 흐림광양시10.0℃
  • 구름조금거제10.2℃
  • 구름많음장흥6.1℃
  • 흐림포항11.4℃
  • 구름많음남해9.4℃
  • 구름많음대전9.0℃
  • 흐림철원11.2℃
  • 구름많음순천4.5℃
  • 구름많음창원9.5℃
  • 흐림영덕11.0℃
  • 흐림세종9.3℃
  • 구름많음군산9.7℃
  • 흐림합천6.5℃
  • 구름많음고창10.2℃
  • 구름많음밀양5.2℃
  • 흐림태백7.5℃
  • 흐림영월6.1℃
  • 흐림대관령6.4℃
  • 구름많음제주13.7℃
  • 흐림청주10.6℃
  • 흐림속초12.1℃
  • 흐림청송군3.5℃
  • 구름많음남원5.2℃
  • 흐림북강릉12.7℃
  • 흐림서울12.3℃
  • 흐림북춘천7.8℃
  • 구름많음여수11.0℃
  • 구름많음정읍10.1℃
  • 흐림동해12.5℃
  • 흐림수원10.7℃
  • 구름많음부산11.7℃
  • 구름많음의령군3.9℃
  • 흐림경주시6.1℃
  • 흐림이천8.7℃
  • 흐림서산12.0℃
  • 흐림흑산도14.0℃
  • 구름많음북창원9.8℃
  • 흐림함양군5.5℃
  • 흐림충주7.5℃
  • 구름많음진도군8.3℃
  • 흐림천안7.3℃
  • 구름많음부여9.3℃
  • 흐림양산시8.9℃
  • 구름많음순창군4.7℃
  • 흐림강릉13.3℃
  • 흐림산청5.3℃
  • 흐림원주8.6℃
  • 흐림안동6.5℃
  • 흐림진주6.3℃
  • 흐림구미6.6℃
  • 흐림봉화2.4℃
  • 흐림제천5.4℃
  • 흐림동두천11.2℃
  • 흐림홍천6.6℃
  • 흐림영주6.1℃
  • 흐림서청주6.6℃
  • 구름많음대구7.3℃
  • 구름많음영천4.6℃
  • 구름조금전주8.4℃
  • 구름많음북부산7.0℃
  • 흐림인천11.8℃
  • 구름많음고흥7.1℃
  • 구름많음의성4.5℃
  • 구름많음부안9.2℃
  • 흐림문경7.6℃
  • 구름많음백령도12.8℃
  • 흐림울진10.3℃
  • 구름많음금산6.4℃
  • 흐림양평8.3℃
  • 흐림춘천7.5℃
  • 구름많음김해시9.5℃
  • 흐림보은5.0℃
  • 흐림홍성10.2℃
  • 구름조금통영10.8℃
  • 구름많음강진군6.9℃
  • 2025.11.24 (월)

모바일 앱의 보안 코딩을 위한 4가지 팁

안하영 / 기사승인 : 2022-08-16 13:57:29
  • -
  • +
  • 인쇄
모바일 앱 기술 개발 속도가 갈수록 빨라지며 모바일 앱을 안전하게 보호할 수 있는 보안도 중요해지고 있다. [사진출처:위키미디어]
모바일 앱 기술 개발 속도가 갈수록 빨라지며 모바일 앱을 안전하게 보호할 수 있는 보안도 중요해지고 있다. [사진출처:위키미디어]

모바일 앱 기술 개발 속도가 갈수록 빨라지며 모바일 앱을 안전하게 보호할 수 있는 보안도 중요해지고 있다. 이에 개발자는 사용자와 비즈니스를 보호하기 위한 실용적인 보안 코딩에 관한 책임감도 커지고 있는 추세다. 이러한 가운데 보안 및 기술 커뮤니티 전문매체 데브옵스(DevOps)가 모바일 앱의 보안 코딩을 위한 4가지 팁을 소개했다.

HTTPS를 통해 SSL 사용
모바일 앱 개발자는 본능적으로 네트워크 통신을 위해 HTTP(Hypertext Transfer Protocol)를 사용할 수 있다. 그러나 HTTP는 위협 행위자가 가로챌 수 있도록 개인 사용자 정보를 공개한다. 개발자는 업계 표준 SSL을 통해 서버와 주고받는 데이터를 암호화하는 HTTPS를 대신 사용해 이러한 일반적인 실수를 수정할 수 있다.

안드로이드 개발자는 사용 가능한 NetworkSecurityConfig 파일을 사용해 앱 내에서 이루어진 모든 네트워크 연결에 미리 결정된 구성을 설정하거나 HTTPS를 수동으로 통합할 수 있다. iOS 개발자는 iOS 앱에서 보안 통신을 적용하고 모바일 앱과 서버 간의 안전하지 않은 연결이 완료되는 것을 방지하는 기본 기능으로 앱 전송 보안(ATS)을 사용할 수 있다.

인증서 내용 확인
인증서를 연결할 때 추가 유효성 검사를 적용해 HTTPS 연결에 보안을 추가한다. 인증서에는 서명한 인증기관(CA)과 애플리케이션에서 알려지거나 허용한 호스트 이름 목록이 포함된다. 서버와의 연결을 수행할 때 이러한 구성 요소의 유효성을 검사하는 앱은 자격 증명 및 민감한 데이터를 훔칠 수 있는 MITM(Man-in-the-Middle) 공격의 위험을 크게 줄인다.

인증서가 유효한 인증기관에서 발급되었는지 확인하기 위해 안드로이드 개발자는 모바일 운영 체제를 실행하는 장치에 포함된 사전 구성된 인증기관 목록을 참조할 수 있다. 안드로이드 개발자는 HostnameVerifier와 같은 기본 클래스를 구현해 앱 내에서 적절한 호스트 이름을 확인할 수 있다. iOS 개발자는 기본 제공 유효성 검사를 제공하는 앱 전송 보안을 활용하거나 NSURLSession 클래스의 메서드를 사용해 대신 수동으로 코딩할 수 있다.

모바일 앱의 하드코딩 리소스 피하기
공격자는 종종 모바일 앱의 소스 코드 내에서 하드코딩된 정보를 사용해 사용자를 이용한다. 예를 들어 공격자는 앱 파일에 저장된 자격 증명을 사용해 사용자 계정에 액세스할 수 있다. 공격자는 하드코딩된 API 키 또는 URL을 찾아 개인 데이터를 수집하거나 앱을 완전히 장악할 수도 있다. 모바일 앱 개발자는 키, 비밀번호 및 URL을 소스 코드에 하드코딩하지 않음으로써 이러한 영역이 손상되는 것을 방지할 수 있다. 백엔드에서 전송을 암호화하고 데이터를 해독하면 보안 계층도 추가된다.

최신 암호화 사용해 사용자 보호
SHA-2, RC4 및 DES와 같은 오래된 암호화 알고리즘을 통해 공격자는 겉보기에 안전한 모바일 앱을 쉽게 중단할 수 있다. 이전 알고리즘을 사용하면 모바일 앱이 업계 규정을 준수하지 않게 돼 조직이 벌금이나 법적 위험에 처할 수 있다. 개발자는 사용 가능한 최신 암호화 알고리즘을 사용하고 특정 앱 시나리오에 적합한 알고리즘을 선택해 안드로이드와 iOS 모바일 앱에서 이 문제를 피할 수 있다.

바이너리를 저장소에 게시하기 전에 서명할 때 길이가 최소 2048비트(4096비트 권장)인 키를 사용하고 안드로이드에서는 암호화 구현을 위한 임의 값을 생성할 때 iOS에서 SecureRandom 또는 SecRandomCopyBytes를 사용한다. 안드로이드 개발자는 Keystore 클래스를 활용할 수 있고 iOS 개발자는 Keychain 서비스를 활용해 매우 민감한 데이터를 저장할 수 있다.

[저작권자ⓒ CWN(CHANGE WITH NEWS). 무단전재-재배포 금지]

최신기사

뉴스댓글 >

- 띄어 쓰기를 포함하여 250자 이내로 써주세요.
- 건전한 토론문화를 위해, 타인에게 불쾌감을 주는 욕설/비방/허위/명예훼손/도배 등의 댓글은 표시가 제한됩니다.

댓글 0

Today

Hot Issue