유닉스 시스템의 특징
- 대화식 운영체제 : 사용자와 운영체제간 상호작용이 쉘에 의해 이루어짐
- 멀티태스킹
- 멀티유저
- 호환성 및 이식성 : 하드웨어적 구조에 독립적으로 응용프로그램을 작성할 수 있는 환경
- 계층적 파일시스템
- 뛰어난 통신 기능 : TCP/IP에 기반한 통신기능을 운영체제 자체에 내장함. 프로세스간 연결하는 파이프기능이 있어 명령어 간 데이터 전달이 수월.
- 다양한 기능의 유틸리티와 개발환경 제공
파일 속성
- rwxrwxrwx 1 root root 123 2019-06-11 05:12 abc.txt
1) 파일종류 : d 디렉터리, l 링크파일
2) 파일 허가권
3) 하드링크 수
4) 소유자명
5) 소유그룹명
6) 파일 크기
7) 마지막 수정 시간
8) 파일명
+ ls -a 자세히, -i 아이노드 번호, -l 리스트형태
★★★
파일과 디렉터리 접근권한
읽기r(4)
- 파일 : 읽거나, 복사
- 디렉터리 : 디렉터리 목록 조회
쓰기w(2)
- 파일 : 수정, 이동, 삭제
- 디렉터리 : 디렉터리 내 파일 생성/삭제
실행x(1)
- 파일 : 파일 실행
- 디렉터리 : 디렉터리 내부로 접근(이동, 복사)
( + 디폴트 권한
파일 : 666
디렉터리 : 777
umask 적용시 사용자마다 권한이 달라짐
umask 022 => 644, 755
umask 002 => 664, 775 )
★★★
passwd 파일
1) 사용자 계정
2) 비밀번호
- x일 경우, shadow 파일 사용 (일방향 암호화, 해시함수)
3) 사용자 UID
4) 그룹 GID
5) comment: 사용자 관련 기타 정보
6) 로그인 성공 후 사용자가 위치할 홈 디렉터리명
7) 명령어를 처리하는 로그인 쉘의 종류를 지정
- /bin/false 또는 /sbin/nologin : 로그인 불가
( + uid 0, gid 0 은 root 관리자 계정을 의미 )
★★★★★
shadow 파일
1) User_Account
- /etc/passwd와 연계됨
2) 암호화된 패스워드
- $id$salt$암호문 으로 총 세부분으로 구분 가능
3) last_change : 마지막 변경일수
4) minlife : 최소 변경일수 ( 패스워드를 변경할 수 없는 일수 )
5) maxlife : 최대 변경일수
6) warn : 경고일수 ( 최대 변경일수가 얼마 남지 않았음을 알리는 경고용 일수 )
7) inactive : 최대 비활성 일수 (지정일수만큼 로그인하지 않으면 비활성화)
8) expires : 계정 만료일 (일수)
★★★★★
파일 종류 및 접근제한에 사용되는 비트
1) 파일 종류
- 일반파일, c 소켓장치, d 디렉토리
b 블록파일, l 심볼릭링크, p 파이프파일
2) 특수 권한
4000 set-uid, 2000 set-gid, 1000 sticky-bit
+ EUID, EGID : 프로세스가 구동중에 자원에 대한 접근여부를 판단하기 위한 ID
RUID, RGID는 Real 유저 아이디
일반적인 경우 EUID=RUID, EGID=RGID로 동일하다.
그런데
Set-Uid가 설정된 경우 : EUID는 RUID가 아니라, 소유자의 ID로 셋팅된다.
Set-Gid가 설정된 경우 : EGID는 RGID가 아니라, 소유그룹의 ID로 셋팅된다.
=> 일반유저가 root 또는 관리자 권한의 Set-Uid 설정된 파일을 실행할때, root 또는 관리자 권한으로 실행하게 됨 (권한 상승)
★★★★★
특수 권한의 설정
set-uid : 기호 s, 8진수 4000 → chmod 4777 a.txt / chmod u+s a.txt / rws 또는 rwS
set-gid: 기호 s, 8진수 2000 → chmod 2777 a.txt / chmod g+s a.txt / rws 또는 rwS
sticky-bit : 기호 t, 8진수 1000 → chmod 1777 testdir / chmod o+t testdir / rwt 또는 rwT
( 스티키 비트는 디렉토리에만 사용된다. 설정되면 파일의 생성자만 수정/삭제 가능하다. )
데몬실행모드 비교
xinetd (리눅스) | standalone | |
의미 | 슈퍼데몬에 의해 제어되는 서비스들의 데몬 | 독립적으로 실행되는 서비스들의 데몬 |
접근제어 | tcpd에 의해 접근제어됨 /etc/hosts.allow /etc/hosts.deny |
자체 설정파일에 의해 접근제어 가능 |
기타 | telnetd, ftpd (사용빈도 ↓) | httpd, sendmail, named (사용빈도 ↑) |
inetd 데몬(접근제어도구)과 TCP Wrapper
Client 프로세스 -> inetd 데몬 -> TcpWrapper (tcpd) -> 서비스 모듈 실행
( /etc/hosts.allow
/etc/hosts.deny 활용) allow > deny
+ iptables : 리눅스 방화벽
PAM 모듈 ( 장착형 인증모듈 )
1) 인증의 핵심
2) 기존 응용프로그램 수정 없이 사용 가능
설정파일: /etc/pam.d/응용프로그램명 ( ex /etc/pam.d/su )
~.so pam 라이브러리가 응용프로그램과 모듈이 통신할 수 있도록 해줌
시스템 관리의 6가지 주제
- 계정과 패스워드 관리 (인증관리)
- 세션 관리 (활성화된 접속에 대한 관리)
- 접근 제어 (네트워크 관점의 접근 통제)
- 권한 관리
- 로그 관리 (기록)
- 취약점 관리 (결함)
보안관리에서 사용되는 주요 명령어
1) ifconfig : 통신 디바이스NIC 상태 출력
2) netstat -an : 통신 서비스 상태
3) top : 시스템 자원 사용현황
4) ps -elf(-aux) : 수행중인 프로그램과 데몬 상태
5) nslookup : 도메인에 대한 ip정보 및 도메인 네임 관련 검색 가능
6) hostname : 할당된 호스트 이름
7) traceroute : 특정 호스트까지의 라우팅 경로, 경유 ip 등 추적 (IP, ICMP, UDP, 3343포트 등)
8) inetd : inetd 실행
★★★
윈도우 시스템 이벤트 로그의 종류
- 응용 프로그램 : 응용 프로그램이 기록한 다양한 이벤트 저장 (ex 알림 메시지, 비정상 종료 등) / AppEvent.Evt
- 보안 로그 : 유효/비유효 로그인 시도, 파일 생성/열람/삭제 등 리소스 사용에 관련된 이벤트 저장한다. LSA가 기록함. / SecEvent.Evt
- 시스템 로그 : windows 시스템 구성요소가 기록하는 이벤트. 부팅시 에러 등 구성요소의 오류. / SysEvent.Evt
- 디렉터리 서비스 로그
- 파일 복제 서비스 로그
- DNS 서버 로그
★★★
윈도우 감사 정책
1) 개체 액세스 감사 : 특정 객체에 대한 접근을 시도하거나 속성 변경등 탐지
2) 계정 관리 감사 : 계정 패스워드 변경 등을 감사
3) 계정 로그인 이벤트 감사 : 로그인 (도메인) 에 대한 사항.
4) 권한 사용 감사 : 권한 설정 변경, 관리자 권한 작업 수행시.
5) 로그인 이벤트 감사 : 로그인 (로컬) 계정 접근시 생성되는 이벤트
6) 디렉터리 서비스 액세스 감사 : 액세스 제어 목록SACL이 지정된 액티브 디렉터리 접근 사용자에 대한 로그
7) 정책 변경 감사 : 정책의 변경과 관련된 사항
8) 프로세스 추적 감사 : 프로세스의 시작/종료
9) 시스템 이벤트 감사 : 시스템 시동/종료, 보안 로그 삭제 등 시스템의 주요한 사항
+ 유닉스 : syslog.conf가 유사
이벤트 뷰어에 표시되는 내용
- 종류 : 정보, 경고, 오류, 성공 감사, 실패 감사로 분류.
- 날짜, 시간
- 원본, 범주
- 이벤트 ID (로그별 고유번호)
- 사용자
- 컴퓨터 (시스템)
+ 유닉스의 syslog.conf의 level = 실패 감사와 동일
★★★★★
리눅스/유닉스 시스템 로그 정리
1) wtmp : 사용자 로그인, 로그아웃 정보. last로 확인
2) utmp : 현재 로그인한 사용자 정보. who, w, whodo, users, finger 로 확인
3) btmp : 로그인 실패 정보 기록. laab 명령어 ( 솔라리스는 5회이상 실패시 loginlog로 기록 )
4) pacct : 사용자가 로그인한 후부터 로그아웃 할 때까지 입력한 명령과 시간, tty등 정보. lastcomm, acctcom로 확인
5) history : 사용자별로 실행한 명령. vi, history 명령어로 분석.
6) lastlog : 사용자들의 최근 로그인 시각, 접근한 소스 호스트 정보. lastlog, finger 명령어
7) sulog : su 명령어를 사용한 기록. 변경 전/후 사용자 계정. +는 성공 -는 실패. vi 사용
8) dmesg : 부팅시 출력되는 모든 메시지/에러/조치사항 등.
9) cron : 정기적인 시스템 cron 작업 로그
10) messages : 가장 기본적인 시스템 로그파일. 시스템 운영, 시스템 데몬, tcp wrapper 접근제어 정보 등.
11) secure : 원격접속 정보 기록. 서버보안에 아주 민감한 파일. tcp_wrapper 접속제어에 관한 로그파일 포함.
★★★★★
네트워크 모니터링 및 침입탐지 도구
1) Snort : 실시간 트래픽 분석과 패킷 처리를 담당하는 공개 소스 네트워크 침입 방지 시스템 IDS/IPS
버퍼 오버플로우, 은폐형 포트 스캔 등 모듈화된 탐지 엔진을 지원하고 실시간 경고 기능 지원
2) 방화벽 Tcp-wrapper : 네트워크 관련 트래픽을 제어하고 모니터링할 수 있는 접근제어 방화벽 툴
3) IPchain / IPtable : 패킷필터링 방화벽. 패킷의 헤더를 보고 DROP하거나 ACCEPT, REJECT 하는 작업을 함
(REJECT는 메시지 응답을 함, DROP는 응답X)
★★★★★
프로세스 메모리 구조
1) Text 영역 : 코드와 상수가 정의되어 있고, 읽기만 가능한 메모리 영역
2) Data 영역 : 전역변수와 정적변수 저장
3) Heap 영역 : 동적 메모리 호출에 의해 할당되는 영역 (하위 메모리주소 -> 상위 메모리주소로 저장)
4) Stack 영역 : 함수 인자 값, 함수 내 지역변수, 함수 반환 주소 등이 저장. 상위 메모리 주소에서 하위 메모리 주소로 저장됨
★★★★★
버퍼 오버플로우Buffer Overflow
1) 기본 개념 : 프로그램의 복귀주소를 조작하여 해커가 원하는 코드가 실행되게 하는 공격 방법
2) 종류
- 스택 오버플로우 : 저장된 데이터가 인접한 변수영역, 포인터 영역까지 침범하여 특정 코드 실행
- 힙 오버플로우 : malloc 같은 메모리 할당 함수를 이용하여 힙 영역을 오버플로우 시켜 특정 코드 실행
3) 대응책
- 경계값 체크, 파라미터 체크
- 스택 보호 메커니즘 : 함수 진입과 종료 코드를 조사하고 스택 프레임 손상이 있는지 검사
- 스택 쉴드 : 리턴 주소를 안전한 주소에 복사하고, 종료될 때 복사해둔 주소와 현재 스택의 리턴 주소를 비교해 변조 확인 (= 카나리아 기법)
- 실행 가능 주소 공간의 보호NX : 스택과 힙을 실행불능으로 만듦
- 주소 공간의 임의 추출ASLR : 프로세스 주소 공간에 있는 중요 데이터 구조 위치 조작
- 소프트웨어 관련 패치
+방어, 공격의 발전)
ASLR -> NOP Sled -> NX -> Return to libc
위치 -> 명령어흐름 -> 실행 메모리 -> 메모리에 이미 적재된
랜럼 목적지까지 쓰기 메모리 공유 라이브러리의
슬라이드 영역분리 원하는 함수 호출
★★★
관련 함수들
1) 사용 자제 함수
- strcat, strcpy, gets, scanf, sprintf, gethostbyname, realpath 등
2) 사용 대체 함수
- strncat, strncpy, fgets, fscanf, snprintf 등 (n 또는 f 포함)
+ 취약함수도 대체함수도 아님 : strcmp 헷갈리지 말 것
★★★★★
각종 시스템 보안 위협
- 버퍼 오버플로우 공격 : 정해진 크기의 버퍼 한계를 벗어나 이웃한 메모리 위치에 데이터를 겹쳐 쓰려는 시도
- 포맷 스트링 공격 : 문자열 입력 포맷을 잘못된 형태로 입력하는 경우 나타나는 버그 (루트 권한 획득도 가능, %n은 저장기능이 있어 주의)
- 레이스 컨디션 공격 : 관리자 권한으로 실행되는 프로그램 중간에 끼어들어 원하는 작업 실행 (주의 : setuid, 임시파일, 심볼릭링크)
- 백도어/트랩도어 : 시스템 보안이 제거된 비밀통로
- 루트킷 : 불법적 해킹에 사용되는 기능을 제공하는 프로그램의 모음 (= 공격자가 시스템에 지속적으로 접근할 수 있도록 비밀통로를 유지시키는 프로그램)
- 리버스 엔지니어링 : 공격 대상 시스템 또는 응용 프로그램에 대한 분석 실행. 취약점을 공격할 수 있는 코드 생성 ( 대응책 : 분석이 어렵게 난독화한다 )
( + 레이스 컨디션 공격의 과정
1) A -> A`로 바꿔치기함
2) 심볼릭링크가 되어 있고 이름이 같으면 A`를 A로 인식함
3) Set-uid가 설정되어 있으면 권한상승 공격이 가능 )
★★★★★
블록체인BlockChain
1) 기본개념 : 온라인 금융 거래 정보를 블록으로 연결하여 P2P 네트워크 분산 환경에서 중앙 관리 서버가 아닌 참여자Peer들의 개인 디지털 장비에 분산, 저장시켜 공동으로 관리하는 방식 (디지털 공동분산 원장)
2) 기반 기술
- 분산 네트워크 : 네트워크 참여 노드들이 동일 거래 내역을 분산 저장 관리
- 암호 기술 : 공개키 암호, 전자서명, 해시함수
- 이중거래 방지 : 두 곳 이상의 계좌로 송금하는 행위 방지. 총 통화량, the longest chain wins 메커니즘
- 합의 분산
① 직업증명PoW : 새로 만든 블록을 앞 블록에 연결하는데 필요한 해시를 만들고, 해시 연결성 검증. 위변조 방지. (: 채굴에 대한 보상)
② 지분증명PoS : 가상통화의 양, 지분에 따라 블록을 생성하고 추가적으로 발행되는 코인을 받음
★★★
블록 헤더 구조
Version : 버전 숫자
Previous block hash : 이전 블록헤더를 sha-256로 2번 해싱한 해시값
Merkle hash root : 2진 트리 형태로 구성시 트리의 루트에 위치하는 해시값
Timestamp : 블록 생성시간
Bits : 작업증명 알고리즘에 대한 난이도 목표
Nonce : 목표값보다 낮은 값을 구하기 위한 카운터
블록체인 유형별 주요 특징
1) 퍼블릭 블록체인
- 느림 / 모든 참여자가 권한 보유 / 비트코인, 이더리움
2) 프라이빗 블록체인
- 빠름 / 사용 가능한 권한 지정 가능 / 코디, 하이퍼레저
★★★
사물인터넷 IoT
- 개념 : 실세계와 가상세계의 다양한 사물들을 연결하여 서비스를 제공하기 위한 서비스 기반시설
- 사례 : 스마트홈, 의료, 교통, 건설, 에너지
- 암호 알고리즘 : ZigBee, Bluetooth, 6LoWPAN, Z-Wave, IEEE802.15.4, LoRa, Wi-Fi, MQTT, CoAP, DDS 등
+ IoT용 SOA 4 계층 : 감지(센싱), 네트워크, 서비스, 인터페이스 계층
구축형 환경 vs 클라우드 환경
구축형(소유형) | 클라우드(공유형) |
많은 초기 비용 | 초기 투자 비용 없음 |
유지비용 높음 | 유지비용 낮음 |
★★★
클라우드 서비스별 자원 제공 범위
1) Software (추가 개발 없이 사용 가능. SecaaS 포함)
- 응용 S/W
2) Plaftorm (개발 환경 등)
- S/W 개발 플랫폼, APL, 데이터베이스
- 게스트 운영체제
3) Infrastructure (IT자원을 위한 요소들)
- 가상화기술VM
- 서버 시스템
- 네트워크 인프라, 보안장치
- 물리적 공간 및 전기시설
IaaS = Infrastructure
PaaS = Infrastructure + Plaftorm
SaaS = Infrastructure + Plaftorm + Software
가상머신VM과 컨테이너Containers
- 가상머신 : 가상화엔진 등 가상화 환경, Hypervisor 이용. Guest OS 등 오버헤드 발생.
- 컨테이너 : Host OS에 논리적으로 분리된 환경 제공. 커널 안의 CGroup, namespace 이용
★★★
일반 악성코드와 랜섬웨어의 차이점
구분 | 일반 악성코드 | 랜섬웨어 |
유포 | 웹사이트, 이메일, 네트워크 취약점 등 유포방식 동일 | |
감염 | SW 취약점 또는 피해자의 실행으로 악성코드 감염 | |
동작 | 정보 및 파일 유출, DDoS 공격 | 문서, 사진, MBR 등 데이터 암호화 |
피해 | 개인정보 유출을 이용한 2차 공격 | 암호화된 파일에 대한 복호화를 빌미로 가상통화 금전 요구 |
★★★
APT ( Advanced Persistent Threat )
- 기본 개념 : 지능형 지속 위협. 특정 대상을 겨냥해 다양한 공격 기법을 이용하여 장기간 지속적으로 공격하는 것. 제로데이 공격과같이 기존에 알려지지 않았던 취약점을 이용함
- 공격 단계 : 타겟에 대한 선행조사 끝에 침투, 프로파일링을 통한 기업 정보 검색, 새로운 악성코드를 유포해 기밀 정보 수집, 수집한 정보를 빼내는 유출 등. 4단계
- 주요 침투 기법
1) 스피어 피싱 : 특정인을 표적으로 신뢰할만한 발신인이 보낸 것처럼 위장한 메일을 이용해 악성 웹사이트로 유도 또는 악성 첨부 파일로 감염시킴
2) 드라이브-바이-다운로드 공격 : 목표 조직 구성원이 방문할 가능성이 높은 사이트를 침해한 뒤 접속하면 악성코드가 다운로드 되도록 공격
3) 워터링 홀 : 표적 공격의 일종 (사자가 물웅덩이 근처에서 매복하는 것을 빗댐)
Monolithic kernel
- 시스템 관리에 필요한 모든 기능이 커널 레벨에서 동작
- 전체 커널 코드 재컴파일
- 초창기 유닉스, 리눅스
Micro kernel
- 핵심 커널 + user level
- 부분 재컴파일
- 유닉스, Mac OS
복습
바이러스 위협요인 제거
- 바이러스 : 백신, 안티바이러스 / 무결성
- 웜 : NIDS / 가용성
- 트로이목마 : HIDS / 기밀성
- 논리폭탄 : 소스코드 리뷰 / 무결성
- 백도어 : HIDS, 소스코드 리뷰 / 기밀성
윈도우 보안
1) 공유폴더
- C$, D$ : 하드드라이브 수만큼 순차할당
- ADMIN$ ( 대응책 : 레지스트리 수정 HKLM DWORD 0 )
- IPC$ : 널 세션 취약점, 프로세스간 통신 ( 익명사용자 접근불가 )
2) 레지스트리
- HKCR : 특정 확장자
- HKCU : 개별 사용자
- HKLM (Master key) : 전체 사용자, 드라이버 등
- HKEY_USER (Master key) : 현재 사용자, 모든 구성원 정보, user.dat파일
- HKCC : 디스플레이, 프린터
3) 브라우저
- 인터넷
- 인트라넷 : 인트라넷상에 있는 웹사이트
- 신뢰할 수 있는 사이트 : 안전한
- 제한된 사이트 : 신뢰x
4) 쿠키
- 영구쿠키 : 보존기간에 따라 보조기억장치에 저장
- 임시쿠키(세션쿠키) : 브라우저를 닫으면 소멸. 메모리 저장.
유닉스/리눅스 서버 보안
1) 특수권한 설정
- Setuid 4000, 권한상승, 백도어/버퍼오버플로우 관련
- Setgid 2000
- Sticky-bit 1000, 디렉터리 관련 권한, 레이스컨디션 공격 대응책
2) inetd / standalone
- inetd : 슈퍼데몬 telnetd, ftpd
- standalone 독립적 실행 httpd, named
3) 접근통제
- inetd 데몬 -> TCPWrapper (hosts.allow, hosts.deny)
4) PAM
- 계정 정책 수행, 인증 시스템 자원 제한
유닉스/리눅스 시스템 로그와 확인 방법
1) wtmp : 사용자 로그인, 로그아웃 / last
2) utmp : 현재 로그인 사용자 정보 / who, w 등
3) btmp : 5번 이상 로그인 실패시 기록 / lastb
4) acct/pacct : 로그인한 후부터 로그아웃할때까지 명령어 등 / acctcom, lastcomm
5) history : 사용자별로 실행명령 / vi, history
6) lastlog : 최근 로그인 시각 / lastlog
7) sulog : su 명령어 사용 기록 / vi
각종 시스템 보안 위협 및 대응책
1) 버퍼오버플로우
- 복귀주소 변경 쉘코드 실행 (스택), 포인터 변수 변경 쉘코드 (힙)
- 사용권장함수 사용, 경곗값 체크, 스택 가드, ASLR, 스택 쉴드
2) 포맷스트링
- printf등 함수에서 잘못된 형태로 입력, 프로세스 메모리 덮어쓰기 등
- 패치, 형식에 맞게 입력
3) 레이스 컨디션
- setuid 파일, 임시파일, 심볼릭 링크
- sticky-bit 설정, 검사과정 추가
4) 시스템 자원 고갈
- 디스크 : 파일생성하고 1000바이트씩 write
- 메모리 : malloc 함수를 통해 메모리할당 무한 수행
- 프로세스 : fork 프로세스 무한대로 실행
블록 체인
- 온라인 금융 거래 정보를 블록으로 연결. 중앙 관리 서버가 아닌, 공동으로 관리. 디지털 공동분산원장.
- 분산 네트워크, 공개키 암호, 전자서명, 해시함수
- 총 통화량 (가장 긴 체인) 메커니즘
- 작업증명PoW : 위변조 검증
- 지분증명PoS : 보상
시스템 보안 파트 END
-----------------
프로토콜의 주요 요소
- 구문 : 데이터의 형식, 부호화, 신호 레벨 등 어떤 구조와 순서로 표현되는지
- 의미 : 각 비트가 갖는 의미.
- 타이밍 : 통신속도를 조정하거나 메세지의 전송시간 및 순서 등에 대한 특성.
★★★★★
OSI 7 Layer에 대한 특성
OSI 7 | TCP/IP | |||||||
L7 | Application | UI | Application | Message | L7SW, Gateway |
FTP,TFTP,SNMP, SMTP, HTTP, DNS | Kerberos,PGP, SSH, S/MME , SET |
|
L6 | Presentation | 포맷(암복호화) | ||||||
L5 | Session | 세션관리 | ||||||
L4 | Transport | End-to-End 신뢰 전송 프로세스간 통신 |
Transport | Segment | Port(16) | L4SW (로드 밸런싱) |
TCP, UDP, SCTP | SSL/TLS |
L3 | Network | Routing | Network (=Internet) |
Packet | Ipv4(32) Ipv6(128) |
L3SW, 라우터 |
IP, ICMP, IGMP, ARP,RIP |
IPSec |
L2 | Datalink | Node-to-Node 신뢰전송 |
Datalink (= Network Access) |
Frame | MAC(48) | L2SW, 브리지 |
이더넷 | PPTP, L2F |
L1 | Physical | 물리적 연결 | Bit | 리피터, 허브, 랜카드 |
Segment - Transport 계층
Frame - DataLink 계층
Bit - Physical 계층
* Packet은 여러 계층에서 두루 쓰이므로 헷갈리지 않게 주의
ICMP : 송신자에게 응답할 때
ARP : IP주소에 해당하는 MAC 주소를 알고자 할 때
SMNP : 네트워크 관리
SMTP : 메일 전송
- 데이터링크/물리 계층에 쓰이는 MAC은 24비트 회사구분 + 24비트 시리얼넘버
- 전송계층의 식별자 Port는 16비트인데, 65536비트를 의미한다
스위치 : 2계층 장비
라우터 : 3계층 장비
포트번호
- 각 응용프로그램을 식별하여 번호를 부여함
- Well Konwn port : 0 ~ 1023
- Registered port : 특정 프로토콜등이 사용하도록 예약된 포트 1024 ~ 49151
- Dynamic : 49152 ~ 65535
- 임시포트 : 클라이언트에서 사용.
주요 포트번호들
FTP : 20(제어), 21(전송)
SMTP : 25 (메일 전송)
DNS : 53 (tcp/udp)
POP3 : 110 (메일 읽기)
HTTP : 80
HTTPS : 443 (암호화 통신)
SNMP : 161(agent), 162(manager)
다중화와 역다중화
- 여러 PORT번호로 나누어진 통신이 합쳐짐 (4계층)
- 3계층에서 Protocol 필드를 보고 다중화/역다중화함 (역다중화는 포트번호에 따름)
- 2계층에서 type 필드를 보고 식별자를 통해 전송
FTP 21 ─ ─ ─ ─ TCP ─ ─ ┐
POP3 110 ─ ─ ─ TCP ─ ─ IP → 4계층 → 3계층 다중화/역다중화 → 2계층에서 전송
DNS 53 ─ ─ ─ ─ UDP ─ ─ ┘
'(필기) 정보보안기사&산업기사' 카테고리의 다른 글
네트워크 보안 3, 4 (0) | 2024.05.01 |
---|---|
네트워크 보안 1, 2 (0) | 2024.05.01 |
접근통제3, 시스템 보안1 (0) | 2024.04.26 |
암호학5, 접근통제1~2 (0) | 2024.04.25 |
암호학3~4 (0) | 2024.04.24 |