달력

1

« 2020/1 »

'서비스'에 해당되는 글 2

  1. 보안 개론, CIA
  2. 안드로이드 프로그램 구조

보안이 무언인지 모르는 데 보안 못합니다.

케이스가 많으면 적용하기 힘듭니다.

보안의 개념을 알고 적용하는 것이 바람직합니다.

   

보안의 3요소: CIA

Confidentiality

  • 기밀성
  • 접근 제한, 장소 제한, 암호화
  • 사무실 옆을 지나가면서 그 안을 볼 수 없는 것

Integrity

  • 무결성, Consistency(일관성)
  • 정직, 시작과 끝 같은 것

Availability

  • 가용성
  • operate satisfactory(만족 스럽게 동작)
  • 기대하는 것에 모자라지 않게 동작하는 것

   

Confidentiality

기밀성

  • 허용되지 않은 것을 보이지 않게 하거나 알아 볼 수 없게 또는 접근하더라도 이용하지 못하게 하는 것
  • 방화벽, 암호화, 백신, 접근 제어(SSO, EAM, IAM), DRM

   

관련 이슈

암호화 vs 접근제어

  • 기밀성은 다양한 방법이 있으며 상황과 환경, 서비스, 자산의 가치, 기술에 따라 적절한 방법을 적용해야 합니다.

Black List, White List, Heuristic , Behavior

  • 블랙과 화이트 리스트 사이에 빈 여백 존재(보안 취약부분)하며
  • 이를 보완하기 위해 Heuristic, Behavior로 보완하려는 기술이 나왔습니다.

Rule & Exception

  • 보안을 어느 정도 커버는 되지만 정상인 것도 탐지하므로 룰과 함께 예외 부분도 필요합니다.

Sensing & Defensing

  • 감지, 차단
  • 컴퓨터 잘하는 사람이 많으면 센싱, 못하는 사람 많으면 차단하는 것이 좋습니다.

       

  • 감지와 차단의 차이점: 나는 너가 지난 여름에 한 일을 알고 있어 vs 너 지난 여름에 바람 피웠다매

   

   

Availability

가용성, 사용성, 편의성

  • 만족스럽게 안정적으로 동작해야 합니다.
  • 불편하고 만족스럽지 못한 것은 보안이 아닙니다.
  • 보안을 강화하면서 불편하다는 애기는 적절하지 못한 표현입니다.
  • 보안을 스스로 허무는 가장 큰 이유이기도 합니다.

   

Availability의 전환점

  • 2005년 아이폰 도입: 그전 PDA사용(컴퓨터 옮겨 오자가 목적), 쓰기 쉬워야 한다는 것(전력, 입력, 안전등), 이쁨

   

관련 이슈

  • DDOS
  • 국내 인터넷 뱅킹/결제
  • 외울 수 없는 복잡하고 긴 패스워드
  • CPU 성능 다 집아 먹는 RSA연산
  • 무슨 기능을 하는지 알 수 없는 보안 제품 메뉴
  • 사용되지 않은 보안기능들

   

   

Integration

무결성

  • 온전히 하나가 되는 것, 겉 과 속이 같고 처음과 끝이 같고, 정직함
  • 데이터 무결성, 균일한 보안, SI, 여러가지 재료를 잘 연동하여 빈틈없는 하나로 만드는 것
  • 하나로 만드는 것

   

관련 이슈

  • 제품 사 놓고 적용하지 않기
  • 서비스와 보안이 무관
  • 보안 제품간 무관
  • 파라미터 변조 공격

   

  

Posted by codedragon codedragon

댓글을 달아 주세요

안드로이드 프로그램 구조

   

   

뷰(View)

뷰(View)는 사용자와 직접 상호작용을 하는 UI를 의미합니다.

   

 

액티비티 (Activity)

  • 하나의 화면을 컨트롤하는 객체로 (어플리케이션의 하나의 화면, 폰 화면)
  • 보통 액티비티와 UI화면은 일대일 대응 관계를 갖고 시스템 혹은 사용자로부터 시작된 이벤트에 반응(처리)합니다.
  • 레이아웃을 포함하며 UI오브젝트를 추가하여 사용할 레이아웃을 정의(화면을 구성)하게 됩니다.

   

   

위젯(Widget)

TexTView, Button, EditText등 사용자의 입력을 받거나 화면에 데이터를 표시해 주는 Object

   

   

레이아웃(Layout)

액티비티들을 어떠한 방식으로 화면에 배치해 줄지를 결정해 주는 하나의 컨테이너 역할

UI오브젝트를 담고 있는 그릇역할.

   

 

인텐트 (Intent)

액티비티간의 통신 수단이며 메시지에 대한 상세한 정보를 가집니다. 예를 들어 주소록 목록 액티비티에서 편집 액티비티를 호출할 때 누구의 주소를 어떤 식으로 편집하라는 지시가 인텐트에 실려 전달됩니다.

   

 

서비스 (Service)

서비스는 주로 백그라운드에서 돌아가는 실행코드로, 일단 실행되면 휴대폰이 꺼질 때까지 돌아갑니다. 서비스는 일반적으로 사용자 인터페이스가 없습니다.

예) MP3 플레이어, 저장기능

 

   

브로드캐스트 리시버(BroadcastReceiver)

만약 애플리케이션이 전화가 오거나 문자메시지 수신과 같은 이벤트 반응시 적절하게 반응하기를 원한다면 반드시 브로드캐스트 리시버로서 등록되어 있어야만 합니다. 신호만 대기할 뿐 UI를 따로 가지지는 않으므로 신호가 오면 적절한 액티비티를 띄워 내용을 전달합니다.

   

 

컨텐트 프로바이더 (Content Provider)

다른 응용 프로그램을 위해 자신의 데이터를 제공합니다. 안드로이드는 보안이 엄격하여 다른 응용프로그램의 데이터를 함부로 액세스 하지 못하도록 되어 있습니다. 응용프로그램 간에 데이터를 공유할 수 있는 합법적인 유일한 장치가 바로 콘텐트 프로바이더입니다.

   

   

사용 가능한 구성 요소 

(1) 데이터 보관

(2) 네트워크

(3) 멀티미디어

(4) GPS

(5) 전화서비스

   

Posted by codedragon codedragon

댓글을 달아 주세요