정보보안 - 접근제어
| topics | 705 보안 |
| index | 학교 이론 |
인증 : 접근이 허용되었는가. 님 누구?
인가 : 행위에 대한 제약. 님 그거 가능?
인증
알고 있는 어떤 것
패스워드
- 문제 : 노출이 쉽게 발생(재사용or 사회공학적 노출)
- 장점 : 비용(무료) & 편의성
- 보안
- 일정 횟수 잘못 입력시 잠금 => 디도스공격 가능
- 패스워드 해싱
- hash(password)를 저장
- y == hash(x) 면 x == pasword
- 약점 : 패스워드 사전과의 패스워드 해싱 파일을 비교함으로써 비번을 알 수 있음
- 가염 해쉬 패스워드 등장!!
- y = hash(password, s)를 계산
- s,y쌍을 패스워드 파일에 저장
- 공격자는 각 사용자마다 사전을 재계산해야함
기타
- PIN
- 주민번호
당신의 어떤 것(= 생체인식)
위조하기 어려움 but 신체정보가 손상 됐거나 본뜰 경우 이슈
이상적인 생체인식의 조건
- 보편성 : 거의 대부분 사람들에게 적용
- 구별성 : 명확성을 위한 구별
- 영구성 : 물리적인 특성이 불변
- 수집성 : 자료수집의 용이(협조적이어야함)
- 신뢰성,강건성 : 실험실 말고 현장에서 신뢰성 있게 동작
오류들
- 기만 : A가 사용자 B로 잘못 인식됨 (내 지문 인식했는데 다른사람으로 로그인됨)
- 모욕 : A가 A로 인식되지 못함(내 지문을 인식했는데 내가아니래)
- 99 매치 : 낮은 기만율 , 높은 모욕율
- 30 매치 : 높은 기만율 , 낮은 모욕율
- 동일 오류율(EER) : 기만율 == 모욕율
- 지문>장문>홍채 , 홍체가갓.
지문
- 확보과정 : 지문이미지 캡쳐 -> 확대 -> 특징점 추출
- 인식 : 데이터베이스에 수록된 특징점들과 비교
- 생체인식중 제일 효율좋음.
홍채
- 유사성 측정 : 해밍간격에 기반
- 일치하지 않은 비트수 / 비교된 비트수
- 해밍간격 0 이면 완전 매치
- 해밍간격 0.32미만이면 일치하다고 가정
- 공격 : 좋은 해상도의 눈스캔사진으로 공격 가능
- 방어 : 홍채의 수축등을 통해 생명체인지 추가확인
장문
- 손의 형태를 측정
- 신속함, 손의 대칭성
- 인증에는 적절, 식별에는 부적절
- 단점 : 높은 동일 인식오류율 , 나이가 매우 많거나 어릴경우 사용 불가능
기타
- 음성인식
- 자필서명
가지고 있는 어떤 것
- 휴대폰
- 카드
- 컴퓨터(MAC 주소)
- 패스워드 생성기
- Pin를 알고 있으면서 패스워드 생성기를 보유하고 있어야함.

- Pin를 알고 있으면서 패스워드 생성기를 보유하고 있어야함.
요소 인증
3가지 중 2개를 요구
ex) 패스워드 생성기 스마트카드 ATM등
통합인증과 웹쿠키
사용자는 한번의 인증으로 계속 인증되기를 원함
- 웹쿠키를 통합인증으로 사용
- 웹사이트에 있는 데이터베이스에 대한 색인 역할을 함
- 취약함.
인가
접근제어 행렬
- Lampson의 접근 제어행렬
- 인가에 대한 모든 관련 정보를 가지고 있음
- 주체(사용자 or 프로그램) : row 행
- 객체(자원) : colomn 열
- 특정 자원 접근 여부 결정 : 접근제어 행렬 검사가 필요. 비효율적
구현방식
현실 접근제어 선호, 학계 권한목록 선호
접근제어 목록 (ACL)
- colomn 열 단위로 저장
- 자원 {사용자1,사용자2,프로그램1} 형식
- 사용자가 자신의 파일을 관리할 때 굿
- 방어가 데이터 지향적
- 자원에 대한 권한 변경 용이
- 대리 혼돈 문제
- 자원 {앨리스(--),컴파일러(rw)}
- 컴파일러는 앨리스를 대신하는 대리행위를 함.(당연하지 앨리스가직접 명령문적어서 적진 않겟지)
- 앨리스는 자원에 적는것이 불허되어있음 하지만 컴파일러는 자원에 적는 것이 허용되어 있음
- 컴파일러는 자신의 권한과 앨리스의 권한을 혼돈할 수 있음
- => 권한 목록을 통해 방지가능
권한 목록 (C-List)
- row 행 단위로 저장
- 사용자 {자원1,자원2,자원3} 형식
- 위임이 용이
- 사용자 추가삭제 용이
- 대리혼돈 방지 용이
- 구현 어려움
보안 모델
다단계 보안과 다측면 보안은 무관하게 사용가능
but 대부분 함께 사용
다단계 보안 모델(MLS)
- 비밀 취급은 객체(자원)에, 취급 등급은 주체(사용자)에
- 상이한 보안등급에 있는 주/객체가 동일한 시스템을 사용할 때 필요함
- 접근 제어의 한 형태, 상하간의 접근제어 구현
- DoD 등급 : 1>2>3>일반
- EX) 방화벽 , 비밀적인 데이터 정보
다측면 보안
- 횡적 접근제어 구현
- 1급 비밀을 1급비밀{A} 1급비밀{B}로 분리
- 보안 등급 간의 정보 흐름을 제약, 지식한정원칙을 구현할 수 있도록 함

정보 유출
은닉 통로
- 시스템 설계자들이 의도하지 않은 통신 경로
- 완벽 제거 사실상 불가능
- 보안 모델들은 적법한 통로를 통해 통신을 제한하기 위해 만들어짐
- 쨋든 통로를 제공한다 == 위험성이 있다
- 다른 보안 등급 주체가 공유하는 자원 == 자원이 빠져나갈 수 있는 통로로 악용
- 언제 존제하는가
- 송신자와 수신자가 자원공유
- 송신자 자원특성 변경 가능, 수신자 이를 관찰 가능
- 송신자 수신자간의 통신 동기화 가능
- DoD 지침 목표 : 은닉 통로 용량을 초당 1 비트를 넘지 않아야 함
- 실제이용
- TCP 헤더필드 이용
- 해더에 reserved 필드를 숨김 or covert_TCP 사용(일련 번호나 ACK 번호를 데이터에 숨김)
- covert_TCP
- TCP 헤더필드 이용
추론 제어
- 일반적인 질의를 통하여 특별한 정보가 누설됨
- 익명화된 데이터에서도 특정 정보를 얻는것이 가능
- 강건한 추론제어는 불가능 조금이라도 하는게 나음.
- 방법
- 질의 결과 크기 제어 : 질의 결과 크기가 너무 작으면 답 ㄴㄴ
- 질의 결과가 한개야 그러면 그 한개가 질문의 답임.
- N-응답, k% 지배 규칙
- N이하의 주체에 대해 제공되는 데이터가 k%이상의 확률을 가지면 공개하지 않음
- ex) 빌게이츠 동네연봉 -> 빌게이츠의 돈이 대부분의 돈의 높은 퍼센트를 가지고 있으니깐 안됨.
- N이하의 주체에 대해 제공되는 데이터가 k%이상의 확률을 가지면 공개하지 않음
- 무작위화
- 데이터에 적은양의 무작위화된 잡음을 추가
- 질의 결과 크기 제어 : 질의 결과 크기가 너무 작으면 답 ㄴㄴ
침입 방지의 형태
튜링테스트
- 사람과 인간이 동일한 질문에 대한 응답을 서로 구별할 수 없음. => 테스트 통과
- 인공지능 분야의 기준
- 아직까지 어떤 컴퓨터도 이를 통가 못함
CAPTCHA
- 테스트가 컴퓨터에 의해 출제되고 채점됨
- 프로그램과 데이터는 공개됨
- 사람은 통과 가능하자지만 기계는 통과 불가(캡챠의 역설)
- 기계와 사람을 구분하기 위해 많이 쓰임
- 튜링테스트
방화벽
- 네트워크에 대한 접근제어
- 무엇을 내부 네트워크로 들어오게 할것이고 무엇을 못들어오게 할것인가
- 종류 (동작 위치에 따른)

- 패킷필터: 네트워크(+약간의 전송)
- 필터링 by
- 출발지 목적지의 IP,PORT 주소
- 플래그 비트 ( SYN, ACK)
- ingress(내부로 유입되는 트래픽) ,egress(외부로 나가는 트래픽)
- ACL을 통하여 구성, 인가를 위한 ACL과는 다름
- TCP 연결 상태에 대한 제어는 하지 않음
- 장점 : 속도
- 단점
- 비상태형
- TCP연결을 볼 수 없음
- 응용데이터를 볼 수 없음.
- 공격 : TCP ACK 스캔( PORT SCAN 공격)

- SYN + ACK (플래그) 비트를 지정해서 통신
- ACK 패킷은 패킷필터 방화벽을 통화
- 만약 포트가 열렷을 시에 패킷에 대한 응답을 전송
- => 열림 포트를 스캔할 수 있음
- 필터링 by
- 상태성 패킷 필터 : 전송 계층
- 패킷필터 + 상태추가
- TCP 연결과 플래그 비트를 기억
- UDP 패킷도 기억 (ex DNS 요구)
- 패킷필터기능 + 연결상태추적
- 응용 프록시
- 응용데이터를 관찰하여 안정성 검증
- 연결 + 응용계층의 데이터 관찰 가능
- 속도 : 패킷> 상태성패킷 > 응용
- 종심 방어보안구조
- dmz : 외부에 오픈된 서버 영역
- 저수준의 방어
- 간단한 패킷필터 사용
침입 탐지 시스탬(IDS)
- 공격 탐지 : 흔적 기반 IDS(알려진 흔적)
- 비정상적인 행위 감지 : 비정상 기반 IDS
- 로그 파일 분석을 통하여 개발됨
- 방법
- 흔적기반
- 비정상 기반
- 구조
- 호스트기반
- 네트워크기반
- 호스트와 네트워크 양쪽을 모두 기반한 IDS도 있음
호스트 기반 IDS
- 감시 행위(호스트상에서)
- 알려진공격
- 의심스러운 공격
- 밑의 공격을 탐지하기 위해 설계됨
- 버퍼 오버플로우
- 권한 상승
- sql injection 공격
네트워크 기반의 IDS
- 감시행위(네트워크상에서)
- 알려진 공격
- 네트워크 상의 의심스러운 행위
- 밑의 공격을 탐지하기 위해 설계됨
- 서비스 거부 (Dos,DDos)
- 네트워크 탐지 ( 내부 네트워크 자원 등에 대한 탐지)
- 비정상적인 패킷
- 방화벽의 확장 형태가 IDS
흔적탐지
- ex) m초 동안 n번로그인 실패
- 아마 네트워크 기반의 IDS
- m과 n을 조정
- if 방식을 안다면 n-1번 로그인 가능
- 장점
- 간단히 구현가능
- 알려진 공격을 탐지
- 탐지 시 어떤 공격인지 인지가능
- 효율적
- 단점
- 흔적정보파일이 지속적으로 갱신되야함
- 흔적 종류가 매우 많아질 수 있음
- 알려진 공격만 탐지 가능
비정상 탐지
- 정상이먼데 ? 얼마나 멀리 떨어저있어야하는데?
- 평균과 편차를 이용
- 통계적 판별 기법
- 베이지안 통계, 선형 판별분석,2차 판별 분석,신경망,은닉 마르코프 모델 등
- 장점 : 알려지지않은 공격 탐지 기회제공
- 단점 : 독자적으로 사용힘듬, 오류 특징 불명확
- 쌍을 통한 탐지
- 정상적인 쌍대비 비정상적인 쌍의 비율이 높으면 공격 가능성을 경고
- 각 쌍의 예상빈도, 연속된 명령어 등을 통해 향상될 수 있음
- 장기간에 걸친 평균 갱신
- 공격자가 장기간에 서서히 접근할시 판별 불가
- 편차를 고려하고 하나이상의 통계치를 측정하여 이를 강화가능
- 비정상탐지는 편차로 계산함