운영체제 14장 - Computer Security Threats




confidentiality - data confidentiality는 기밀 정보가 허용되지 않은 개인에게, 허용되지 않은 유출되지 않게 하는걸 보장하는것, privacy는 각 개인이 자신과 관련 정보를 정보와 관련된 사람이 제어할수 있게 하는것
integrity - data integrity는 데이터나 정보가 허용된 방법에 의해서만 변화될수 있게 하는것, system integrity는 시스템이 의도된 기능을 수행할때 인가되지 않은 manipulation에 의해 변경되지 않는것
availability - 시스템이 올바르게 동작해서 인가된 사용자에게 항상 서비스를 제공하는것

 
이 3가지가 데이터와 서비스에 대해 안정성을 제공하는 기둥이 된다


이러한 보안의 기본 기능 위에 두가지 추가 기능이 필요
인증 - 메시지나 데이터를 보낼때 신뢰할수 있는지 확인방법 제공, 사용자가 누구인지, 원천지를 신뢰할수 있는지
Accountability - 존재에 대한 행동을 추적 가능해야 하고, 불법적인 행동을 했을때 누구에 의한 것인지 확인 가능해야 하고, 나중에 포렌식으로 분석할수 있도록 활동이 저장되어야 한다


인가되지 않은 노출, 4가지 action이 있다
exposure - 민감한 정보가 인가되지 않은 사람에게 직접적 노출
interception - 인가되지 않은 존재가 중간에 가로챔
inference - 인가되지 않은 존재가 간접적으로 민감 정보에 엑세스
intrusion - 인가되지 않은 존재가 시스템 보안을 뚫고 데이터를 엑세스


기만, 인가된 존재가 거짓을 받아들이게 되는 상황
masquerade - 인가되지 않은 존재가 인가된 존재처럼 가장함
falsification - 가짜 data로 인가된 존재를 속임
repudiation - 다른 엔티티를 거짓으로 거부하여 속임


disruption, 올바른 동작을 막거나 중단
incapacitation - 시스템의 부품을 disable 시켜서 system operation을 중단시키거나 막음
corruption - 시스템의 기능이나 데이터를 변경하여 원하지 않는 형태로 동작시킴
obstruction - 시스템의 operation을 숨겨서 시스템의 service delivery를 막는것


usurpation, 시스템 서비스를 인가되지 않은 사람이 컨트롤
misappropriation - 시스템 리소스에 대해 비인가된 존재가 컨트롤을 갖는 경우
misuse - 시스템 보안을 깨는 방향으로 기능이 잘못 사용되는 경우





공격의 방법은 두가지, passive attack
시스템 리소스에는 영향을 미치지 않는 방법으로 공격, 지켜보는것
발견하기 어렵다.
방어를 위해서는 정보를 암호화하고 전달해야


active attack, data stream을 변경하거나 잘못된 정보를 생성
replay - 데이터를 잡아서 반복되도록 다시보냄
masquerade - 다른 존재처럼 흉내
modification of messages
denial of service - 서비스를 지나치게 요청



 




malware
타겟이 되는 시스템을 데미지를 입히거나, 리소스를 사용하기 위해서 고안된 소프트웨어
정상적인 프로그램을 masquerade해서 전파




백도어
프로그램에 있어서 정상적인 인증을 통하지 않고 접근할수 있는방법
보통은 유지보수를 위해 만들어놓는다


logic bomb
정상적인 프로그램 안에 들어가 있다가 시간이 지나면 action함


정상적인 프로그램내 코드가 숨겨짐


동일한 프로그램이 여러 플랫폼에서 실행될수 있다. 원격시스템에 보내진 코드가 문제가 되는 경우


여러 방법으로 감염시키는 소프트웨어


소프트웨어가 다른 프로그램을 감염(바꾸는) 시킬때


바이러스는 4가지 단계로 동작
idle상태로 머물다가
전파
시간지나면 트리거가 되어
실행을함









자신을 복제해서 네트워크를 통해서 퍼져나감



네트워크가 다 연결되어 있기에 어느 시간이 지나면 지수적으로 퍼져나감






rootkit
superuser의 권한을 얻도록 하는 프로그램의 집합
휴대폰 루팅하는것 같이...





루트킷에 의해 시스템콜에 해당되는 함수가 가짜 함수로 연결되는 과정.
테이블을 고치거나, 테이블의 타겟을 고치거나, 테이블을 redirection해서 다른곳에 가게 하는 방법