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

  • 맑음제주19.3℃
  • 맑음고흥13.3℃
  • 맑음거창12.9℃
  • 흐림청송군14.8℃
  • 맑음남원13.4℃
  • 박무수원14.9℃
  • 맑음의령군15.4℃
  • 맑음합천15.6℃
  • 맑음영광군13.8℃
  • 흐림원주14.9℃
  • 맑음순천12.0℃
  • 흐림서청주15.2℃
  • 맑음북부산17.1℃
  • 박무백령도19.6℃
  • 맑음봉화11.6℃
  • 맑음창원18.2℃
  • 맑음부산20.9℃
  • 맑음진도군14.7℃
  • 맑음영주12.2℃
  • 맑음서귀포20.5℃
  • 박무대전15.0℃
  • 맑음임실13.8℃
  • 맑음김해시17.8℃
  • 흐림금산14.9℃
  • 맑음양산시17.7℃
  • 흐림인제16.1℃
  • 맑음파주14.1℃
  • 맑음속초18.7℃
  • 맑음밀양17.1℃
  • 흐림정선군14.6℃
  • 맑음서산13.9℃
  • 맑음장수12.6℃
  • 흐림제천14.4℃
  • 맑음흑산도18.8℃
  • 박무청주15.6℃
  • 박무홍성13.8℃
  • 맑음부안14.9℃
  • 맑음구미15.3℃
  • 흐림의성15.5℃
  • 맑음산청13.9℃
  • 흐림홍천15.8℃
  • 흐림부여14.9℃
  • 흐림이천16.2℃
  • 맑음추풍령13.2℃
  • 맑음철원15.0℃
  • 맑음여수18.1℃
  • 맑음북강릉16.7℃
  • 맑음울릉도17.9℃
  • 흐림영월15.5℃
  • 맑음포항18.3℃
  • 맑음고창13.7℃
  • 맑음상주13.8℃
  • 맑음울진14.6℃
  • 맑음영덕15.8℃
  • 맑음춘천16.8℃
  • 맑음광주16.4℃
  • 흐림충주16.6℃
  • 맑음강진군14.4℃
  • 맑음전주15.6℃
  • 맑음태백9.4℃
  • 맑음보성군15.8℃
  • 맑음통영18.0℃
  • 맑음정읍14.7℃
  • 맑음목포18.2℃
  • 맑음대관령9.8℃
  • 흐림천안13.7℃
  • 맑음문경14.3℃
  • 흐림세종14.7℃
  • 박무서울16.8℃
  • 맑음강릉18.0℃
  • 흐림보은13.2℃
  • 맑음영천16.1℃
  • 맑음고창군15.3℃
  • 맑음완도17.8℃
  • 박무북춘천16.9℃
  • 박무인천17.8℃
  • 맑음북창원18.2℃
  • 맑음보령15.6℃
  • 안개안동14.6℃
  • 맑음강화15.0℃
  • 맑음경주시15.2℃
  • 흐림양평15.3℃
  • 맑음해남14.0℃
  • 맑음광양시15.8℃
  • 맑음동해16.6℃
  • 맑음대구17.0℃
  • 맑음군산15.1℃
  • 맑음동두천15.3℃
  • 흐림순창군14.3℃
  • 맑음성산18.7℃
  • 맑음장흥15.0℃
  • 맑음진주13.6℃
  • 맑음거제18.0℃
  • 맑음함양군13.3℃
  • 맑음울산17.7℃
  • 맑음남해16.9℃
  • 맑음고산21.2℃
  • 2025.10.01 (수)

모바일 앱의 보안 코딩을 위한 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