랑아
article thumbnail

01. 정보보호

01. 정보보호

1) 정보보호의 개념

  1. 정보(Information)의 정의
    • 특정 목적을 위하여 광 또는 전자적 방식으로 처리되어 부호, 문자, 음성, 음향 및 영상 등으로 표현된 모든 종류의 자료 또는 지식
  2. 정보화(Informationization)의 정의
    • 정보를 생산, 유통 또는 활용하여 사회 각 분야의 활동을 가능하게 하거나 그러한 활동의 효율화를 도모하는 것
  3. 정보보호(Information Security)의 정의
    • 정보의 수집, 가공, 저장, 검색, 송신, 수신 중 발생할 수 있는 정보의 훼손, 변조, 유출 등을 방지하지 위한 관리적, 기술적 수단을 마련하는 것
  4. 정보보호의 목적 및 특징
    • 정보보호의 궁극적인 목적은 정보보호 시스템을 구축하여 정보의 수집, 가공, 저장, 검색, 송신, 수신 중 발생할 수 있는 정보의 훼손, 변조, 유출 등을 방지하기 위한 관리적, 기술적 수단을 마련하는 것
    • 정보보호를 위하여 정보보호 시스템을 구축한다고 하여도 완벽하게 정보를 보호할 수는 없고, 정보보호 시스템 역시 완벽할 수 없음
    • 정보보호는 조직 문화에 의해 제한을 받아야 함
    • 정보보호는 포괄적이고 통합적인 접근 방법으로 접근해야 함
    • 정보보호는 조직의 관리 활동에 있어 적절한 주의 의무가 포함되어야 함
    • 외부 위탁으로 수행되는 정보 서비스에 대한 정보보호의 궁극적인 책임은 위탁 서비스 제공 업체가 아니라 자기 자신

2) 정보보호의 기본 요소 및 목적

  1. 기밀성(Confidentiality, 비밀성)
    • 인가된 사용자만이 데이터에 접근할 수 있도록 제한하는 것
    • 정보를 소유한 사용자가 정보의 비밀을 유지해야 한다는 성질
    • 비인가자, 불법 침입자의 접근 제어를 통해 비밀 정보가 누출되지 않도록 보장하는 성질
    • 정보는 권한이 있는 사용자에게는 접근을 허용하며, 권한이 없는 사용자에게는 접근을 못하도록 해야 함
    • 권한이 없는 사람이 저장 또는 전송 중인 정보를 불법적으로 취득하더라도 정보의 내용을 알 수 없도록 해야 함
    • 기밀성을 가장 잘 유지할 수 있는 방법은 접근 통제 및 암호화를 하는 것
  2. 무결성(Integrity)
    • 결함(에러, 변조 등)이 없도록 하는 성질
    • 정보를 정확하고, 정밀하게 유지해야 하는 성질
    • 정보가 허가되지 않은 방식으로 바뀌지 않는 성질
    • 시스템 내의 정보는 오직 인가된 사용자만 수정할 수 있어야 함
    • 정보가 권한이 없는 사용자에 의해서 변경(변조), 삭제되지 않도록 일관성 있게 유지하는 성질
    • 비인가자, 불법 사용자에 의해 정보가 변경, 삭제, 추가되는 것으로부터 방지하여 원래 상태를 보존, 유지하는 성질
    • 수신된 정보가 전송 과정에서 변경되지 않았는지 확인할 수 있어야 함
    • 데이터베이스 측면에서는 데이터 중복이 없고, 누락이 되지 않도록 하는 성질
    • 네트워크 측면에서는 메시지가 중간에서 복제, 추가, 수정되거나 순서가 바뀌거나 재전송됨이 없이 그대로 전송되는 것을 보장함
  3. 가용성(Availability)
    • 인가된 사용자가 원하는 시간이나 장소에서 필요 정보에 접근할 수 있고, 사용할 수 있도록 보장하는 성질
    • 식별, 인증 및 인가 과정을 성공적으로 수행했거나 수행 중일 때 발생하는 활동
    • 정보 시스템은 적절한 방법으로 정보를 요구하는 사용자에게 정보 서비스를 제공해야 하는 성질
    • 권한이 있는 사용자가 원하는 정보를 사용할 수 있도록 하는 성질
    • 정보 제공자는 접근 권한을 가진 사용자에게 효율적으로 정보를 제공할 수 있어야 함
    • 사용자가 필요 시 정보에 접근하고 변경하는 것이 가능함
    • 가용성 보장을 위해 백업, 분산 네트워크, 물리적인 장치 보호 등이 필요함
    • 허가 받은 고객들이 안정적으로 접근할 수 있어야 함
  4. 책임성(Accountability)
    • 특정한 작업 또는 행위에 대한 책임 소재를 확인 가능함을 의미
    • 제재, 부인방지, 에러 제한, 침입 탐지 및 방지, 사후처리 등을 지원하는 것
  5. 인증성(Authenticity)
    • 인증성이란 참과 거짓의 근거가 될 수 있는 무언가를 확인하는 성질
    • 컴퓨터 보안에서 인증은 로그인 요청을 통해 정체성을 확인하는 과정
    • 컴퓨터 시스템은 인증 받은 사람만이 사용하도록 해야 하며, 인증 받지 못한 사람은 제외해야 함
    • ATM에서 현금을 찾거나, 원격으로 접근하여 컴퓨터를 제어하거나, 인터넷 뱅킹을 하는 것은 인증을 필요로 하는 접근 제어
    • 네트워크를 통해 데이터를 전송할 때는 데이터를 송신한 측이 정당한 송신자가 아닌 경우 수신자가 이 사실을 확인할 수 있어야 하는 것이 인증성을 보장하는 사례

3) 정보보호 관리의 정의 및 관리

  1. 정보보호 관리(ISM : Information Security Management)의 정의
    • 정보보호를 위한 일체의 활동
    • 정보를 보호하고 정보의 수준을 높이기 위한 관리 활동
    • 정보보호 시스템을 구축하고, 정보보호를 위하여 지속적으로 관리하는 행위
    • 정보보호 관리의 목적은 수용 가능한 수준으로 정보보호 위험을 통제하는 것
  2. 정보보호 관리 시스템(ISMS : ISM System)의 정의
    • 정보보호를 위한 절차를 수립, 실행, 관리하며 문서화하는 시스템
    • 인증기관이 조직의 정보보호 활동을 객관적으로 심사하고, 인증함
    • 정보보호를 위한 정책, 조직, 구현, 사후 관리 등을 효율적으로 지원하는 시스템
    • 기밀성, 무결성, 가용성을 실현하기 위한 체계적인 시스템
    • 정보 자산의 기밀성, 무결성, 가용성을 실현하기 위하여 관리적, 기술적 수단과 절차 및 과정을 관리, 운용하는 체계
    • 정보보호를 위한 통합적인 구조를 갖추고 있는지 인증기관을 통해 적합 여부를 보증해주는 시스템
    • 정보보호 관리체계는 조직의 정보 자산을 평가하는 것으로 물리적 보안을 포함함
    • 정보보호 관리 과정은 정보보호 정책 수립 및 범위 설정, 정보 자산의 식별, 위험분석, 정보보호 대책 구현 등 5단계 활동을 말함
  3. 국내 정보보호 관리 체계(K-ISMS)
    • 정보통신망의 안정성, 신뢰성 확보를 위하여 관리적, 기술적, 물리적 보호조치를 포함한 종합적 관리체계를 수립, 운영하고 있는 자에 대하여 인증 기준에 적합한지에 관하여 인증을 부여하는 제도
    • 정보통신망 이용촉진 및 정보보호 등에 관한 법률에 근거를 두고 있음
    • 인증심사의 종류에는 최초심사, 사후심사, 갱신심사가 있음
    • 인증의 유효기간은 3년으로 정해져 있음
  4. 국내 정보보호 관리체계(K-ISMS)의 관리 과정 5단계
    • 1단계(정보보호 정책 수립) : 정보보호 정책 수립, 범위 설정, 조직 및 책임의 설정
    • 2단계(정보보호 관리체계 범위 설정) : 정보보호 관리체계 범위 설정, 정보 자산의 식별
    • 3단계(위험 관리) : 위험 관리 방법 및 계획 수립, 위험 분석, 위험 식별 및 위험 평가, 정보보호 대책 선정 및 이행 계획 수립
    • 4단계(구현) : 정보보호 대책의 효과적 구현, 정보보호 교육 훈련
    • 5단계(사후 관리) : 정보보호 관리체계 재검토, 정보보호 관리체계 모니터링 및 개선 내부 감사

4) ISO/IEC 27001의 ISMS 보안 관리를 위한 PDCA

  • IT 기술과 위험 환경의 변화에 대응하기 위하여 반복되어야 하는 순환적 프로세스
Plan -> Do -> Check -> Action
  • 계획(Plan) 단계 : ISMS 수립, 보안 정책, 목적, 프로세스 및 절차를 수립함
  • 수행(Do) 단계 : ISMS 수립 구현과 운영, 수립된 프로세스 및 절차를 구현하고 운영함
  • 점검(Check) 단계 : ISMS 모니터링과 검토, 성과를 측정하고 평가함
  • 조치(Action) 단계 : ISMS 관리와 개선, 지속적인 관리 개선, 검토 결과에 따른 예방 조치를 함



02. 소프트웨어 개발 보안

1) 소프트웨어 개발 보안의 개념

  1. 소프트웨어 개발 보안의 목적
    • 해킹 등 사이버 공격의 원인인 보안 취약점을 소프트웨어 개발 단계에서 미리 제거하고 소프트웨어 개발에 따른 생명주기를 단계적으로 수행함
    • 소프트웨어 개발 과정에서 개발자의 실수, 논리적 오류 등으로 인해 소프트웨어에 내포될 수 있는 보안 취약점의 원인, 즉 보안 취약점을 최소화하고, 사이버 보안 위협에 대응할 수 있는 안전한 소프트웨어를 개발하기 위한 일련의 보안 활동
    • 개발 과정에서 보안 업무를 수행하며 안전한 보안 요소를 만족하는 소프트웨어를 개발, 운영하기 위한 목적
  2. 소프트웨어 개발 보안
    • 소프트웨어 개발 보안은 정보보안의 3가지 요소인 기밀성, 무결성, 가용성을 지키는 것
    • 소프트웨어의 취약점을 사전에 방지하여 외부 위협과 내부 위협으로부터 위험을 최소화하는 구축 방법
  3. 소프트웨어 개발 보안 용어
    • 자산(Assert) : 조직의 데이터 또는 조직의 소유자가 가치를 부여하는 대상으로 서버의 하드웨어, 소프트웨어와 기업의 중요 데이터 등을 말함
    • 위협원(Threat agents) : 조직 자산의 파괴와 손해가 발생하는 행동을 할 수 있는 내, 외부의 주체로, 해커, 내부의 인가 받지 않은 임직원, 단체, 자연재해 등을 말함
    • 위협(Threat) : 조직의 자산에 대한 위협이 되는 위협원의 공격 행동으로 해킹, 삭제, 자산의 불법적인 유출, 위조, 변조, 파손 등을 말함
    • 취약점(Vulnerability) : 위협이 발생하기 위한 사전 조건에 따른 상황으로 평문을 전송하거나, 입력값을 검증하지 않는 경우, 패스워드를 공유하는 행위 등을 말함
    • 위험(Risk) : 위협원이 취약점을 사용하여 위협 행동을 했을 경우 자신에게 나쁜 영향의 결과를 가져올 확률과 영향도를 말함

2) 보안의 요구사항 개발(CMMI L3 PA)

  1. 도출(Elicitation)
    • 보안 요구사항 도출은 조직 이해관계자의 상호 의견을 조율함
    • 협의를 통해 요구사항을 수집하고 수집된 요구사항을 정제하고 내용을 분류함
    • 참조되는 산출물은 제안서나 계약서, 과업 지시서, 회의록, 사업 수행 계획서 등
  2. 분석(Analysis)
    • 보안 요구사항을 내용별로 분류된 것을 토대로 분석에 들어가는데 요구사항 중에서는 실제로 구현하기 어렵거나 현시점에서 과도하게 인력이 소모되는 비용 또는 효율적인 면을 고려하여 보안 요구사항의 제약조건을 판별하게 됨
    • 만약 기술적이나 비용적으로 당장 구현이 힘들더라도 비슷한 대안을 제시할 수 있다면 의견 제시로 보안 요구사항 분석서에 기술하여도 무방함
  3. 명세(Specification)
    • 보안 요구사항을 다른 사람이 알아보기 쉽도록 명세화함
    • 보안 요구사항의 분석서를 통하여 요구사항 정의서가 도출되는데 내용은 소프트웨어 개발 시스템의 목표 기술과 사업의 기능과 비기능적 요구사항이 명세 되어야 함
  4. 확인(Validation)
    • 소프트웨어 개발 보안 요구사항 명세 작성이 완료되면 관계자들에게 요구사항이 맞는지 확인하고 검증하는 과정이 필요함
    • 이해 관계자들의 지식과 조직의 성숙도, 소프트웨어 개발 보안 요구사항 문서와 조직의 표준을 고려하여 소프트웨어 개발 보안 요구사항 문제 보고서를 작성하게 됨
    • 보고서를 경영진 또는 중간 관리자에게 승인을 받아 내용을 확정하는데 경영진 또는 중간 관리자는 보고서의 문서화의 정도, 내용의 명확성, 간결하고 실제로 구현이 가능하고, 문제가 없는지 테스트할 수 있어야 하며, 향후 장애 등의 문제 발생 시 근본 원인을 파악할 수 있도록 추적성이 가능한 코드 체계를 통하여 내용 검토를 수행한 후에 검증하게 됨

3) 침해 사고 조사 프로세스

  1. 1단계 - 사고 전 준비
    • 사고가 발생하기 전에 침해 사고에 대응할 조직과 체계적인 대응 전략을 세움
    • 침해 사고 대응 조직(CERT)을 준비함
    • 침해 사고 발생 시 조직 간의 긴밀한 협조 관계를 파악하고 준비함
  2. 2단계 - 사고 탐지
    • 미확인 계정 발견, 불법 로그인 시도, 허가되지 않은 시간의 활동, 출처를 알 수 없는 프로그램 실행, 불법 권한 상승, 로그 파일 삭제, 성능 저하, IDS의 탐지 정보 등으로 침해 대상의 이상 징후를 탐지함
  3. 3단계 - 초기 대응
    • 사고 초기의 정황에 대한 기본적인 세부 사항을 기록함
    • 침해 사고 대응 조직을 소집하여 발생한 침해 사건의 유형을 식별하고 영향도를 평가함
  4. 4단계 - 대응 전략 체계화
    • 대응 전략 수립 단계의 목표를 정함
    • 공격 유형을 고려하여 다양한 대응 전략을 마련함
  5. 5단계 - 사고 조사
    • "누가, 무엇을, 언제, 어디서, 어떻게, 왜"와 같은 사항들의 순서로 관련 데이터들을 수집함
    • 공격이 수행된 시간, 며칠 동안 공격이 수행됏는지, 어떤 정보들이 지워지고, 가져갔는지를 파악함
    • 수집된 데이터를 세부적으로 분석하여 그 실체와 진위를 파악함
  6. 6단계 - 보고서 작성
    • 침입 사고와 대응 전략의 보고서를 작성하고, 중요한 데이터들을 수집함
  7. 7단계 - 복구 및 해결 괒어
    • 각 단계별로 복구 및 적절한 해결 방안을 모색하여 실행함
    • 복구의 우선순위를 부여하여 해결함

4) 보안 등급 구분

  1. 보안 등급의 개념
    • 시작 단계로 조직의 개발 업무 현황을 수집하고 보안 등급으로 구분함
    • 실제로 운영되는 업무를 보안 규정에 맞는 요소별 보안 등급으로 구분함
  2. 보안 기능 강도와 보안 등급의 구분
    • 기본
      • 공격 성공 가능성 계산값 : 0 ~ 9
      • 보안 등급 : EAL1 ~ EAL3
    • 강화된 기본
      • 공격 성공 가능성 계산값 : 10 ~ 13
      • 보안 등급 : EAL4
    • 중간
      • 공격 성공 가능성 계산값 : 14 ~ 19
      • 보안 등급 : EAL5
    • 높음
      • 공격 성공 가능성 계산값 : 20 ~ 24
      • 보안 등급 : EAL6 ~ EAL7

5) 시큐어 코딩(Secure Coding)

  1. 시큐어 코딩의 정의 및 특징
    • 시큐어 코딩은 보안을 위한 코딩
    • 프로그램 코딩을 할 때 보안에 대해서 문제가 되는 부분을 제거하거나 교체하는 방식으로 코딩함
    • 안전한 소프트웨어를 개발하여 각종 보안 위협으로부터 예방하고 대응하고자 하며 정보 시스템 개발 시 보안성을 고려하고 보안 취약점을 사전에 제거하기 위하여 시큐어 코딩을 사용함
    • 안전한 소프트웨어 개발을 위해 소스 코드 등에 존재할 수 있는 잠재적인 보안 취약점을 제거하고, 보안을 고려하여 기능을 설계 및 구현하는 등 소프트웨어 개발 과정에서 지켜야 할 보안 활동
    • 소프트웨어 초기 설계와 개발 과정에서 개발자의 실수와 지식 부족, 프로그래밍 언어의 고유한 특징 등으로 발생 가능한 소프트웨어 취약점의 최소화를 위하여 시큐어 코딩을 사용함
    • 초기 설계 단계부터 보안 요소를 고려하여 진행하는 개발 방식
    • 소프트웨어 개발 단계별 결함 수정 비용 분석, 보안 고려 없이 개발된 소프트웨어의 사후 수정 비용은 시큐어 코딩 비용의 수십 배에 달하는 것으로 파악됨
  2. 시큐어 코딩의 목적
    • 보안 취약점과 결함 방지 : 최근 사이버 공격의 진화에 따라 사전에 정보처리 시스템의 보안 취약점을 사전에 대응하고 SQL Injection 취약점, Zero Day Attack 공격, 침입 차단 시스템 등 보안 장비의 우회 등과 같은 보안 취약점을 사전에 제거하여 개발함
    • 안전한 고객 서비스 확대 : 대부분의 고객 서비스가 ICT 신기술을 통하여 인터넷을 통해 제공되면서, 고객 서비스의 보안 취약점을 지속해서 진단하여 제거에 효율적 관리 방안을 마련함
    • 안정성 및 신뢰성 확보 : 고객 서비스의 신뢰성을 기반으로 하는 안정성에 기반을 둔 보안 확보를 위해 정보 시스템의 기초 단계부터 설계 개념 및 시큐어 코드의 수준에서의 대응조치를 제안하여 고객 서비스의 보안성을 강화함

'정보처리기사 > 정보 시스템 구축 관리' 카테고리의 다른 글

시스템 보안 구축 3  (0) 2023.06.02
시스템 보안 구축 2  (0) 2023.06.02
통신 프로토콜 7  (0) 2023.06.01
통신 프로토콜 6  (1) 2023.06.01
통신 프로토콜 5  (1) 2023.06.01
profile

랑아

@RangA

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!