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

  • 흐림원주-0.8℃
  • 흐림철원-3.7℃
  • 구름조금부산5.8℃
  • 구름많음춘천-2.6℃
  • 맑음동해2.4℃
  • 흐림의성1.0℃
  • 구름많음백령도2.0℃
  • 흐림이천-1.0℃
  • 흐림서산1.7℃
  • 흐림서청주1.5℃
  • 맑음산청1.8℃
  • 구름조금성산10.1℃
  • 구름많음광주6.6℃
  • 맑음울산5.6℃
  • 구름조금고산13.5℃
  • 흐림구미1.2℃
  • 구름조금고흥2.0℃
  • 흐림파주-3.5℃
  • 흐림부안2.3℃
  • 흐림영월-2.2℃
  • 맑음밀양1.0℃
  • 맑음북강릉1.0℃
  • 맑음영천0.5℃
  • 흐림인제-2.8℃
  • 구름많음북춘천-3.7℃
  • 흐림정읍4.0℃
  • 흐림추풍령2.5℃
  • 구름많음고창군5.4℃
  • 구름많음광양시6.0℃
  • 맑음울진2.8℃
  • 맑음합천3.2℃
  • 구름많음진도군6.3℃
  • 구름많음군산2.2℃
  • 흐림상주2.7℃
  • 흐림태백-2.7℃
  • 흐림진주5.3℃
  • 구름많음대전2.6℃
  • 구름많음세종1.6℃
  • 구름조금서귀포13.2℃
  • 흐림청송군-2.0℃
  • 맑음함양군0.7℃
  • 흐림정선군-4.0℃
  • 맑음의령군0.1℃
  • 흐림강화-0.3℃
  • 맑음전주4.6℃
  • 흐림양평-0.7℃
  • 구름많음남해4.1℃
  • 구름조금통영4.8℃
  • 구름많음홍천-1.8℃
  • 흐림영주-1.4℃
  • 구름많음목포6.8℃
  • 흐림수원0.6℃
  • 맑음장흥3.7℃
  • 구름많음보령3.9℃
  • 흐림제천-1.9℃
  • 구름많음고창7.2℃
  • 맑음포항3.0℃
  • 맑음김해시4.2℃
  • 흐림천안1.9℃
  • 구름많음부여2.5℃
  • 구름조금남원1.6℃
  • 맑음순천3.5℃
  • 맑음경주시0.8℃
  • 구름많음강진군3.0℃
  • 구름조금완도2.9℃
  • 맑음제주10.3℃
  • 흐림인천0.6℃
  • 맑음대관령-4.6℃
  • 흐림동두천-0.9℃
  • 맑음거제3.5℃
  • 맑음거창2.3℃
  • 맑음여수4.6℃
  • 흐림문경1.4℃
  • 구름많음속초2.2℃
  • 구름많음홍성1.5℃
  • 구름많음해남5.2℃
  • 구름많음영광군6.3℃
  • 맑음금산3.2℃
  • 구름많음순창군2.7℃
  • 흐림서울-0.1℃
  • 흐림충주0.2℃
  • 흐림흑산도8.5℃
  • 구름조금양산시2.6℃
  • 맑음울릉도2.7℃
  • 흐림봉화-6.4℃
  • 맑음장수3.2℃
  • 구름조금영덕-0.3℃
  • 구름조금임실1.1℃
  • 맑음북창원5.6℃
  • 맑음보성군2.6℃
  • 맑음강릉3.1℃
  • 흐림안동1.6℃
  • 흐림청주2.0℃
  • 맑음대구1.9℃
  • 흐림보은2.4℃
  • 흐림창원4.6℃
  • 맑음북부산2.1℃
  • 2026.01.14 (수)

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