주요 항목 | 설명 |
---|---|
인터페이스 번호 | 같은 종류의 인터페이스별로 부여된 번호 |
일련번호 | 인터페이스 번호 내에서 부여된 순차적인 일련번호 |
인터페이스 ID | 인터페이스를 구분하기 위한 식별자, 명명 표준에 맞게 부여 |
인터페이스명 | 인터페이스의 목적을 나타내는 이름 |
송신 시스템 | 인터페이스를 통해 데이터를 전송하는 시스템 |
수신 시스템 | 인터페이스를 통해 전송된 데이터를 이용하는 시스템 |
대내외 구분 | 인터페이스가 기업 내부 시스템 간 또는 내·외부 시스템 간 발생하는지 여부 |
연계 방식 | 웹 서비스, FTP, DB Link, Socket 등 아키텍처에서 정의한 인터페이스 방식 |
통신 유형 | 동기, 비동기 등 아키텍처에서 정의한 통신 유형 |
처리 유형 | 실시간, 배치, 지연 처리 등 인터페이스 처리 유형 처리 유형이 실시간인 경우 수시, 그 외 상세 주기를 표시(매일 오전 10시, 매시 10분) |
주기 | 인터페이스가 발생하는 주기 |
데이터 형식 | 고정 길이, XML 등 인터페이스 항목의 데이터 포맷 |
수신 담당자 확인 | 수신측 담당자의 확인여부를 나타내는 항목 |
관련 요구사항 ID | 해당 인터페이스와 관련된 요구사항 식별 정보 |
자료형 | 사례 |
---|---|
숫자(number) | - 기본 자료형의 수는 정수, 실수(고정소수점), 실수(부동소수점)로 표현된다. - 74, 3.14, 3.4e+4 |
문자열(String) | - 항상 큰 따옴표(" ")로 묶어야 하며, 그 안에는 유니코드 문자들이 나열된다. - "ABCD", "1234" |
배열(Array) | - 배열은 대괄호[]로 표시한다. 배열의 각 요소는 기본 자료형이거나 배열, 객체이다. - 각 요소들은 쉼표(,)로 구별되고 각 요소가 나타나는 순서에 의미가 있다. - [10, {"v": 20}, [30, "마흔"]] |
객체(Object) | - 객체는 이름/값 쌍의 집합으로 중괄호{}를 사용한다. - 이름은 문자열이기에 따옴표를 사용하며 값은 기본 자료형이라 따옴표를 쓰지 않을 수도 있다. - 각 쌍들은 쉼표(,)로 구별되고, 각 쌍이 나오는 순서는 의미를 지니지 않는다. - {"name2": 40, "name3": "값", "name1": true} |
{
"이름": "NEEDY GIRL OVERDOSE",
"개발자": "냐루라",
"ESD": "STEAM",
"가격": 15000,
"판매량": "누적 30만장"
"ENDING": ["Do You Love Me?", "(Un)happy End World", "Rainbow Girl"]
}
<?xml version="1.0" encoding="UTF-8"?>
<shop city="인천" type="전자상가">
<smart device>
<name>iphone</name>
<sort>smart phone</sort>
<cost>960,000</cost>
</smart device>
<smart device>
<name>삼성갤럭시탭</name>
<sort>태블릿 PC</sort>
<cost>1,160,000</cost>
</smart device>
</shop>
<xml>
태그를 사용하여 XML 문서임을 명시한다.<shop>
은 XML 문서에 하나만 존재하는 root 요소이다.<shot>
은 그 아래 <smart device>
란 두 자식요소를 지닌다.주요 기술 | 설명 |
---|---|
XMLHttpRequest | - 웹 브라우저와 웹 서버 간 메서드가 데이터를 전송하는 객체 폼의 API - 비동기 통신을 담당하는 자바스크립트 객체 |
Javascript | - 객체 기반 스크립트 프로그래밍 언어 - 웹 브라우저에서 주로 사용하며 다른 응용 프로그램의 내장 객체에도 접근가능한 기능이 있다. |
XML(Extensible Markup Language) | - HTML의 단점을 보완한 인터넷 언어로서 SGML의 복잡한 단점을 개선한 특수목적을 지닌 마크업 언어 |
DOM(Document Object Model) | - XML 문서를 트리 구조의 형태로 접근할 수 있게 하는 API - 플랫폼/언어 중립적으로 구조화된 문서를 표현하는 객체지향 모델 |
XSLT(Extensible Stylesheet Language Transformations) | - XML 문서를 다른 XML 문서로 변환하는데 사용하는 XML 기반 언어 - W3C에서 제정한 표준으로 XML 변환 언어를 사용하여 XML 문서로 바꿔주며, 탐색하기 위해 XPath를 사용한다. |
HTML(HyperText Markup Language) | 인터넷 웹(WWW) 문서를 표현하는 표준화된 마크업 언어 |
CSS(Cascading Style Sheets) | - 마크업 언어가 실제 표시되는 방법을 기술하는 언어 - 운영체제나 사용 프로그램과 무관하게 글자 크기, 글자체, 줄 간격, 색상 등을 자유롭게 선택할 수 있는 스타일 시트 |
적용대상 | 보안 약점 | 대응 반안 |
---|---|---|
입력데이터 검증 및 표현 | 프로그램 입력값에 대한 검증 누락·부적절한 검증, 잘못된 형식 지정 | 사용자·프로그램 입력 데이터에 대한 유효성 검증 체계를 수립하고, 실패시 처리 기능 설계 및 구현 |
보안 기능 | 보안 기능(인증, 접근 제어, 기밀성, 암호화, 권한 관리 등)의 부적절한 구현 | 인증·접근 통제, 권한 관리, 비밀번호 등의 정책이 적절하게 반영되도록 설계 및 구현 |
시간 및 상태 | 거의 동시에 수행 지원하는 병렬 시스템, 하나 이상의 프로세스가 동작하는 환경에서 시간 및 상태의 부적절한 관리 | 공유 자원의 접근 직렬화, 병렬 실행 가능 프레임워크 사용, 블록문 내에서만 재귀 함수 호출 |
에러 처리 | 에러 미처리, 불충분한 처리 등으로 에러 메시지에 중요 정보가 포함 | 에러 상황을 처리하지 않거나, 불충분하게 처리되어 중요 정보 유출 등 보안 약점이 발생하지 않도록 시스템 설계 및 구현 |
코드 오류 | 개발자가 범할 수 있는 코딩 오류로 인해 유발 | 코딩 규칙 도출 후 검증 가능한 스크립트 구성과 경고 순위의 최상향 조정 후 경고 메시지 코드 제거 |
캡슐화 | 기능성이 불충분한 캡슐화로 인해 인가되지 않은 사용자에 정보 유출 | 디버거 코드 제거와 필수정보 외 클래스 내 Private 접근자 지정 |
API 오용 | 의도된 사용에 반하는 방법으로 API를 사용하거나, 보안에 취약한 API의 사용 | 개발 언어별 취약 API 확보 및 취약 API 검출 프로그램 사용 |
구분 | 설명 | 예시 |
---|---|---|
대칭 키 암호화 알고리즘 | 암호화 알고리즘의 한 종류로 암·복호화에 같은 암호 키를 쓰는 알고리즘을 의미 | ARIA 128/192/256, SEED |
비대칭 키 암호화 알고리즘 | 공개키는 누구나 알 수 있지만, 그에 대응하는 비밀키는 키의 소유자만이 알 수 있도록 공개키와 비밀키를 사용하는 알고리즘 | RSA, ECC, ECDSA |
해시 암호화 알고리즘 | 해시값으로 원래 입력값을 찾아낼 수 없는 일방향성의 특성을 가진 알고리즘 | SHA-256/384/512, HAS-160 |
구분 | 설명 |
---|---|
API 방식 | - 애플리케이션 레벨에서 암호 모듈을 적용하는 애플리케이션 수정 방식 - 애플리케이션 서버에 암·복호화, 정책 관리, 키 관리 등의 부하 발생 |
Plug-in 방식 | - 암·복호화 모듈이 DB 서버에 설치된 방식 - DB 서버에 암·복호화, 정책 관리, 키 관리 등의 부하 발생 |
TDE 방식 | - DB 서버의 DBMS 커널이 자체적으로 암·복호화 기능을 수행하는 방식 - 내장된 암호화 기능(TDE: Transparent Data Encryption) 이용 |
Hybrid 방식 | - API 방식과 Plug-in 방식을 결합하는 방식 - DB 서버와 애플리케이션 서버로 부하 분산 |
보안 기술 | 설명 |
---|---|
IPSec(IP Security) | - IP 계층(3계층)에서 무결성과 인증을 보장하는 인증 헤더(AH)와 기밀성을 보장하는 암호화(ESP)를 이용하여 양 종단 간 보안 서비를 제공하는 터널링 프로토콜 - 동작 모드는 전송 모드와 터널 모드가 있음 - 주요 프로토콜은 AH, ESP, IKE(키 교환)가 있고, IPSEC 정책엔 SPD, SAD가 있음 |
SSL/TLS | - 전송계층(4계층)과 응용계층(7계층) 사이에서 클라이언트와 서버 간 웹 데이터 암호화(기밀성), 상호 인증 및 전송시 데이터 무결성을 보장하는 보안 프로토콜 - 인증 모드는 익명 모드, 서버인증 모드, 클라이언트-서버인증 모드가 있음 - IPSec과 달리 클라이언트와 서버 간 상호인증, 암호 방식에 대해 협상을 거치는 특징을 지님 - 대칭 키 암호화, 공개키 암호화, 일방향 해시함수, 메시지 인증코드 등 특정 암호 기술에 의존하지 않고 다양한 암호 기술 적용 - Https://~ 표시형식과 443 포트 이용 |
S-HTTP(Secure Hypertext Transfer Protocol) | - S-HTTPS는 웹상에서 네트워크 트래픽을 암호화하는 주요 방법 중 하나로 클라이언트와 서버 간 전송되는 모든 메시지를 각각 암호화하여 전송 - S-HTTP에서 메시지 보호는 HTTP를 사용한 애플리케이션에 대해서만 가능 - S-HTTP 서버 접속시 shttp://~ 사용 |