9. 소프트웨어 개발 보안 구축
Secure SDLC SDLC에 보안 강화를 위한 프로세스를 포함한 것
소프트웨어
개발 보안 요소
기밀성 : 시스템 내의 정보와 자원은 인가된 사용자에게만 접근이 허용
무결성 : 시스템 내의 정보는 인가된 사용자만 수정할 수 있음
가용성 : 인가받은 사용자는 언제라도 정보와 자원을 사용할 수 있음
SQL 삽입 웹 응용 프로그램에 SQL을 삽입하여 데이터를 유출 및 변조, 관리지 우회하는 보안 약점
크로스 사이트
스크립팅
웹 페이지에 스크립트를 삽입해 보안을 탈취하거나 비정상적인 기능을 유발하는 보안 약점
메모리 버퍼
오버플로
할당된 메모리의 범위를 넘어선 위치에서 자료를 읽거나 쓰려고 할 떄 발생하는 보안 약점
스택 가드 주소가 저장되는 스택에서 발생하는 보안 약점을 막는 기술
접근 제어자 외부로부터 접근을 제한하기 위해 사용되는 예약어
public / protected / default(java) / private
개인키 암호화 암호화, 복호화 하는 키가 같은 암호화 기법
공개키 암호화 암호화 할 때 사용되는 공개키는 사용자에게 공개, 복호화 할 때 상요되는 비밀키는 비밀리에 관리하는 암호화 기법
DES 개인키 암호화 알고리즘, NBS, 블록 64, 키 길이 56
AES 개인키 암호화 알고리즘, NIST, 블록 크기 128
RSA 공개 키 암호화 알고리즘, MIT
해시 입력 데이터나 메시지를 고정된 길이의 값이나 키로 변환하는 것
MD5 MD4를 대체하기 위 고안한 암호화 해시 함수, 블록 512, 키 길이 128
TKIP 무선 랜 프로토콜인 WEP의 취약성을 보완한 데이터 보안 프로토콜
스머핑 IPICMP의 특성을 악용하여 많은 양의 데이털르 한 사이트에 집중적으로 보내 네트워크를 불능 상태로 만드는 공격 방법
SYN Flooding 3-way-handshake 과정을 의도적으로 중단시켜 정상적인 서비스를 방해하는 공격 방법
LAND Attack 송신 IP 주소와 수신 IP 주소를 모두 공격 대상 IP로 지정하여 무한 응답을 하게 하는 방법
DDos 여러 곳에 반산된 공격 지점에서 한 곳의 서비스에 대해 서비스 거부 공격을 수행
세션 하이재킹 상호 인증과정을 거친 후 접속해 있는 서버와 클라이언트 사이의 세션 정보를 가로채는 공격 방법
ARP 스푸핑 자신의 MAC 주소를 공격대상의 것으로 변조하여 패킷을 가로채거나 방해하는 방법
스니핑 네트워크의 중간에서 남의 패킷 정보를 도청하는 방법
워터링 홀 웹 사이트를 사전에 감염시켜 사이트에 방문했을 때 악성 코드에 감염시키는 방법
키로거 공격 사용자의 키보드 움직임을 탐지해 정보를 빼가는 방법
랜섬웨어 잠입해 내부 문서나 파일 등을 암호화하는 프로그램
백도어 시스템 설계자가 액세스 편의를 위해 시스템 보안을 제거하여 만들어놓은 비밀 통로
11. 응용 SW 기초 기술 활용
운영체제 컴퓨터 시스템 자원을 효율적으로 관리하며 편리하고 효율적으로 사용할 수 있도록 환경을 제공하는 프로그램의 모임
UNIX AT&T 벨 연구소, MIT 등이 공동 개발한 운영체제, C언어로 작성되고 트리구조의 파일 시스템
커널 UNIX의 핵심적인 부분으로 프로그램과 하드웨어 간의 인터페이스 역할 담당
사용자의 명령어를 인식하여 수행하는 명령어 해석기
반입 전략 프로그램이나 데이터를 언제 주기억장치로 적재할 것인지를 결정하는 전략
배치 전략 프로그램이나 데이터를 어디에 주기억장치 어디에 위치시킬 것인지를 결정하는 전략
최초 적합 : 빈 영역 중에서 첫 번째 영역에 배치
최적 적합 : 단편화를 가장 적게 남기는 영역에 배치
최악 적합 : 단편화를 가장 많이 남기는 영역에 배치
가상기억장치 보조기억장치의 일부를 주 기억처럼 사용하는 것
페이징 기법 프로그램과 주기억장치의 영역을 동일한 크기로 나눈 후 주기억장치의 영역에 적재시켜 실행하는 기법
세그먼테이션 기법 프로그램을 다양한 크기의 논리적인 단위로 주기억장치에 적재시켜 실행시키는 기법
세그먼트 : 프로그램을 논리적인 크기로 나눈 단위
페이지 교체
알고리즘
페이지 부재가 발생하면 어떤 페이지 프레임을 교체할 것인지를 결정하는 기법
FIFO : 가장 먼저들어와 오래 있었던 페이지 교체
LRU : 최근에 가장 오랫동안 사용하지 않은 페이지 교체
Locality 프로세스가 실행되면서 주기억장치를 참조할 때 일부 페이지만 집중적으로 참조하는 성질
시간 구역성 : 하나의 페이지를 일정 시간 동안 집중적으로 액세스하는 현상
공간 구역성 : 일정 위치의 페이지를 집중적으로 액세스하는 현상
워킹셋 프로세스가 일정 시간 동안 자주 참조하는 페이지들의 집합
스래싱 프로세스의 처리 시간보다 페이지 교체에 소요되는 시간이 더 많아지는 현상
PCB 운영체제가 프로세스에 대한 중요한 정보를 저장해 놓는 곳
프로세스 상태
전이

Dispatch : 준비 상태에서 대기하고 있는 프로세스 중 하나가 프로세스를 할당받아 실행 상태로 전이되는 과정
HRN 대기 시간과 서비스 실행 시간을 이용하는 기법
환경 변수 시스템 소프트웨어의 동작에 영향을 미치는 동적인 값들의 모임
chmod 파일의 보호 모드를 설정하여 파일의 사용 허가를 지정하는 UNIX 명령어
IP 주소 인터넷에 연결된 모든 컴퓨터 자원을 구분하기 위한 고유한 주소
IPv4 : 8비트씩 4부분 총 32비트로 구성된 주소
IPv6 : 16비트씩 8부분 총 128비트로 구성된 주소
프로토콜 데이터 교환을 원활하게 수행할 수 있도록 표준화시켜 놓은 통신 규약
OSI 참조 모델 물리 계층 : 기계적, 전기적 특성에 대한 규칙 정의
데이터 링크 계층 : 시스템 간 연결 설정과 유지 및 종료 담당
네트워크 계층 : 네트워크 연결을 관리하는 기능과 데이터의 교환, 중계 기능 담당
전송 계층 : 종단 시스템 간에 투명한 데이터 전송
세션 계층 : 송수신 측 간의 관련셩을 유지하고 대화 제어를 담당
표현 계층 : 시스템 간의 상호 접속을 위해 필요한 계층
응용 계층 : 사용자가 OSI 환경에 접속할 수 있도록 서비스 제공
패킷 교환 방식 메시지를 일정한 길이의 패킷으로 잘라서 전송하는 방식
가상 회선 방식 가상 통신 회선을 미리 설정하여 경로에 따라 패킷을 순차적으로 운반하는 방식
데이터그램
방식
연결 경로를 설정하지 않고 각각의 패킷들을 순서에 상관없이 독립적으로 운반하는 방식
TCP/IP 인터넷에 연결된 컴퓨터들 사이에 데이터를 주고받을 수 있게 하는 표준 프로토콜
ICMP IP와 조합하여 토신중에 발생하는 제어 메시지를 관리하는 역할
ARP IP 주소를 물리적 주소로 변환하는 기능을 수행하는 프로토콜
메시 네트워크 특수 목적을 위한 새로운 방식의 대규모 네트워크 기술
피코넷 블루투스 기술이나 UWB을 이용하여 통신망을 형성하는 무선 네트워크 기술
애드혹네트워크 모바일 호스트만을 이용하여 구성한 네트워크
NAT 한 개의 정식 IP 주소에 대량의 가상 사설 IP 주소를 할당 및 연결하는 기술
IGP 하나의 자율 시스템 내의 라우팅에 사용되는 프로토콜
RIP 거리 벡터 라우팅 프로토콜로 소규모 동종의 네트워크 내에서 효율적인 방법
OSPF 다익스트라 알고리즘을 사용한 대규모 네트워크에서 사용되는 인터넷 프로토콜
흐름제어 송수신 사이에서 전송되는 패킷의 양이나 속도를 규제하는 기능
블록체인 P2P 네트워크를 이용하여 온라인 금융 거래 정보를 온라인 네트워크 참여자의 디지털 장비에 분산 저장하는 기술
매시업 웹에서 제공하는 정보 및 서비스를 이용하여 새로운 소프트웨어나 서비스를 만드는 기술
RAID 2개 이상의 하드디스크로 디스크 배열을 구성하여 분산 저장하거나 다중화하는 저장 기술
Secure OS 보안 기능을 갖춘 커널을 이식하여 외부의 침입으로부터 시스템 자원을 보호하는 운영체제
하둡 일반 pc급 컴퓨터들로 가상화된 대형 스토리지를 형성하여 병렬로 처리하는 프레임워크
데이터 마이닝 대량의 데이터를 분서갛여 데이터에 내재된 변수 사이의 상호관계를 규명하여 일정한 패턴을 찾아내는 기법
타조 오픈 소스 기반 분산 컴퓨팅 플랫폼인 아파치 하둡 기반의 데이터 웨어하우스 프로젝트
로킹 트랜잭션들이 어떤 로킹 단위를 액세스하기 전에 잠금을 요청해서 허락되어야만 로킹 단위를 액세스할 수 있도록 하는 기법
교착상태 서로 다른 프로세스가 점유하고 있는 자원을 요규하여 무한정 기다리는 현상
12. 제품 소프트웨어 패키징
릴리즈 노트 소프트웨어 개발 과정에서 정리된 릴리즈 정보를 사용자와 공유하기 위한 문서
디지털 저작권
관리
저작권자가 배포한 디지털 콘텐츠가 저작권자가 의도된 용도로만 사용되도록 디지털 콘텐츠의 관리 및 보호 기술
클리어링
하우스
저작권에 대한 사용 권한, 라이선스 발급 등을 수행하는 곳
DRM 컨트롤러 배포된 콘텐츠의 이용 권한을 통제하는 프로그램
패키저 콘텐츠를 메타 데이터와 함계 배포 가능한 형태로 묶어 암호화하는 프로그램
형상 관리 개발 과정에서 소프트웨어의 변경 사항을 관리하기 위해 개발된 일련의 활동
저장소 최신 버전의 파일들과 변경 내역에 대한 정보들이 저장되어 있는 곳
커밋 작업 내용을 갱신
빌드 자동화
도구
빌드를 포함하여 테스트 및 배포를 자동화 하는 도구
반응형

+ Recent posts