개발환경 구축 - 응용 소프트웨어의 개발 편의성, 개발 성능 향상을 위해 하드웨어 및 소프트웨어 개발환경을 구축하는 것 1) 개발환경 구축 도구의 분류 - 빌드 도구 - 구현 도구 - 테스트 도구 - 형상 관리 도구 2) 개발환경 구축 절차 - 프로젝트 요구사항 분석 - 필요 도구 설계 - 개발언어 선정 - 구현도구 선정 - 빌드, 테스트 도구 선정 서버 개발 프레임워크 1) 프레임워크 (Framework) - 소프트웨어의 구체적인 부분에 해당하는 설계와 구현을 재사용이 가능하게끔 일련의 협업화된 형태로 클래스들을 제공하는 틀 - 사례: 전자정부 프레임워크, 스프링 프레임워크 등 2) 프레임워크의 특징 - 모듈화 (Modularity) - 재사용성 (Reusability) - 확장성(Extensibili..
서비스 공격 유형 구분 수동적 공격 능동적 공격 설명 네트워크나 시스템의 정보를 보기만 하는 것 네트워크나 시스템의 취약점을 이용해 데이터를 변조하거나 수정하는 것 특징 - 방어 가능 - 탐지 불가능 - 취약점을 이용 X - 원칙정 방어 어려움 - 탐지 가능 - 수정 가능 - 취약점을 이용하여 변경, 변조 공격 예 - 시스템 사용자가 비밀번호를 칠 때 도청 - 메시지 내용 개봉 - 트래픽 분석 - 나중에 분석하기 위해 데이터 캡쳐 - 다른 사람의 계정으로 로그인 시도 - 네트워크 케이블에 wire-tap을 설치하여 잘못된 메시지 발생 - 서비스 거부 공격 - 위장 - 메시지 변조 예방책 - 네트워크 케이블과 구성 요소 보호 - 암호화 - Traffic Padding - 예방적 차원이 아닌 탐지 및 교정 ..
SW개발보안의 개요 - 해킹 등 사이버 공격의 원인인 보안 취약점을 SW개발 단계에서 미리 제거 - SW개발에 따른 생명주기별 단계적 수행, 보안 업무 수행 - 안전한 보안요소를 만족하는 소프트웨어 개발 및 운영 1) SW개발 보안의 3요소 - 기밀성(confidentiality): 승인된 주체들에게만 접근 허용 - 무결성(integrity): 승인된 방법에 의해서만 변경 허용 - 가용성(availability): 승인된 사용자들이 적시에 사용 가능하도록 함 입력데이터 검증 및 표현 - 부적절한 검증(검증 누락), 부적절한 형식값(parameter)지정으로 인해 발생할 수 있는 보안약점 - SQL 삽입 공격, 크로스사이트 스크립트(XSS)등의 공격이 발생 가능 1) SQL 삽입 공격 - 웹에서 사용자의 ..
네트워크 설치 구조 버스(bus)형 구조 설명 장점 단점 하나의 통신 회선에 여러 대의 컴퓨터가 멀티 포인트로 연결되어 있는 구조 버스 노선도와 비슷한 구조 - 간단한 구조, 용이한 설치, 적은 비용 - 통신 회선에 컴퓨터를 추가하고 삭제하기가 용이 - 컴퓨터를 무분별하게 추가할 경우 성능 저하 - 통신 회선의 특정 부분에 고장이 나면 전체 네트워크에 영향을 끼침 트리(tree)형 구조 설명 장점 단점 각 컴퓨터가 계층적으로 연결되어 있는 구성 형태 나뭇가지가 사방으로 뻗어 있는 것과 유사한 모양의 구조 - 허브만 준비되어 있다면 많은 단말 노드를 쉽게 연결 가능 - 모든 통신이 허브를 통해서 이루어 지기에 허브가 고정이 나면 연결된 단말 노드는 통신이 제한됨 링(ring)형 구조 설명 장점 단점 컴퓨터..
소프트웨어 개발 방법론 - 소프트웨어를 생산하는데 필요한 개발 과정들을 정리하고 표준화 한 것 - 개발자들이 개발 과정에서 일관성을 유지하고 효과적인 협업이 이루어질 수 있도록 돕기 위한 것 소프트웨어 개발 방법론의 종류 세대 구분 내용 1970년대 구조적 방법론 - 구조화 프로그래밍 - 쉽게 이해할 수 있고 검증할 수 있는 프로그램의 작성 1980년대 정보공학 방법론 - 관리 절차와 작업 기법을 체계화 - 개발 주기를 이용해 대형 프로젝트를 수행하는 체계적인 방법론 1990년대 객체지향 방법론 - 데이터와 그 데이터에 관련되는 동작을 모두 포함 - 정보 시스템과 데이터베이스를 설계하는 방법론 2000년대 컴포넌트 기반 방법론 - 컴포넌트를 조립해서 새로운 응용 프로그램을 작성 - 컴포넌트는 원하는 데이..
[Run Level (런 레벨)] - 리눅스의 OS의 부팅 모드를 Level 단위로 분류해서 사용하는 방식입니다. - 런 레벨을 사용해서 효율적인 리눅스 부팅 관리가 가능합니다. 또한 부팅 시 발생하는 문제를 해결할 수 있는 안전모드도 지원합니다. - Centos에서의 부팅레벨은 0 ~ 6으로 나뉘어져 있으며 각각 다른 부팅모드를 지원합니다. LEVEL 명칭 설명 Centos 6 이하 Centos 7 0 halt poweroff.target 리눅스 종료 1 Single-user mode rescue.target 안전모드 (root계정으로만 가능한 모드) 2 Multi without NFS mode Multiuser.target 다양한 계정으로 로그인 가능하지만 네트워크 연결이 안된다 3 Full Mult..