본문 바로가기
(필기) 정보보안기사&산업기사

오답노트 및 메모 (시스템보안) ~167

by IT매니절 2024. 5. 30.

148.
네트워크 서비스 설정 파일의 점검사항
- /etc/hosts.equiv 파일의 필요여부 체크, 호스트수 최소화 (rlogin)
- .rhosts 파일에 등록된 계정은 인증없이 홈디렉터리 접근이 가능하므로 점검 또는 제거 요망
- .rhosts 파일의 삭제와 내용 확인에 대해서 Cron으로 주기적 점검
- .rhosts 파일의 접근모드 600

 

+ r.hosts 파일 : 개인계정의 홈 디렉터리에 위치하며, 인증없이 홈디렉터리 로그인 가능

 

149.
계정 및 패스워드 보호정책
- 사용자 권한 그룹을 나누어 그룹별로 계정 관리
- 패스워드 파일을 암호화하여 저장, 무결성을 위해 이미지 파일 보관
- 사용하지 않는 계정 삭제
- set-uid, set-gid는 주기적으로 확인하여 필요하지 않은 파일은 삭제

 

150.
서버 접근통제 관리
- 윈도우 시스템 이벤트 : 시스템, 애플리케이션, 보안 이벤트
- 감사 로그 : 제어판-관리도구-로컬보안설정-감사정책
- 윈도우 시스템은 레지스트리 익명 사용자 차단 설정을 하여야 함
- iptables, tcp wrapper 도구를 사용하면 서버 네트워크 접근통제 기능 설정 가능
- 유닉스 서버 시스템에서 불필요한 파일에 설정된 SUID과 SGID를 제거한다

 

 

151.
윈도우 로컬보안정책 보안이벤트
- 정책변경감사는 사용자 권한 할당, 감사, 신뢰 정책에 대한 모든 변경 내용의 감사 여부를 결정
- 계정관리감사 이벤트는 사용자 계정을 생성하거나 삭제시 발생
- 로그인감사 이벤트는 사용자 로그인, 로그오프시 발생
- 프로세스추적감사 이벤트는 프로세스 실행, 중단시
- 시스템 이벤트 감사는 컴퓨터가 다시 시작, 종료시 발생

 

152.
윈도우 이벤트 로그
- 이벤트 로그는 이벤트 뷰어로만 확인 가능
- 보안로그 : 로그인 정보, 로그인 오류정보, 파일 생성 등을 저장
- 이벤트 로그 확장자 : .evt 또는 .evtx
- 이벤트 로그 파일의 최대 크기 변경 가능, 최대크기 도달시 덮어쓰기 등 (용량 문제)

 

153.
xferlog
- ftp 데몬을 통해 송수신되는 모든 파일에 대한 기록 제공
- 이를 바탕으로 크래커가 시스템에 들어와 무슨 작업을 했는지 분석 가능
- 백도어나 트로이목마 프로그램 수행여부 확인 가능

xferlog의 형식
Sun   Jun   30   2013   0   KISA-172.16.3.21   254   /home/kisa/test   b      o   kisa ftp   0
                 1번             2번           3번               4번             5번           6번  7번   8번     9번

=> 1번은 전송일시, 2번은 전송시간

3번은 IP주소, 4번은 크기
5번은 파일이름, 6번은 바이너리b 전송방법 (a는 아스키, 특수동작 (c는 압축, u는 압축x, t는 묶음, -는 동작없음))
7번은 방향 o는 (서버->클라), i는 (클라->서버)
8번은 사용자 id와 서비스 이름
9번은 인증서버가 없을때 0으로 표기

 

154.
리눅스/유닉스 로그파일
1) pacct : 시스템에 로그인한 모든 사용자가 수행한 프로그램에 대한 정보 로그
2) wtmp : 사용자 로그인, 로그아웃, 시스템 재부팅 정보 로그
3) loginlog 실패한 로그인 시도에 대한 로그 (=btmp)

 

+ utmp : 현재 로그인 사용자에 대한 정보

 

155.
유닉스 로그 파일에 기록하는 정보, 저장방법, 분석시 사용되는 명령어
- secure : 사용자 원격 접속 정보, text 파일, grep 명령어
- utmp : 현재 로그인 사용자 정보, binary 파일, who 명령어 (+ w, users, finger)
- pacct : 사용자별 명령 실행 정보, text 파일, acctcom 또는 lastcomm 명령어
- wtmp : 최근 로그인, 접속 호스트 정보, binary 파일, last 명령어

+ btmp : lastb 명령어
+ lastlog : 최근 로그인 정보, lastlog 명령어

 

156.
기억장치 구성요소
- 코드영역 : 프로그램 코드 자체를 구성하는 명령, 기계어 명령을 위한 메모리 영역. 이 중 BSS는 0이나 Null 포인터로 초기화되는 영역이다 (고정 할당)
- 데이터 영역 : 프로그래밍의 전역변수, 정적변수의 할당 (고정 할당)
- 스택 영역 : 지역변수, 매개변수, 복귀번지, 함수호출시 전달되는 인수값 영역 (실행중 할당)
- 힙 영역 : 동적할당, malloc, calloc, free 함수 등. (실행중 할당)

 

157.
버퍼 오버플로우
- 소스코드 상에서 입력 문자열 크기를 점검하지 않을 때 발생
- 루트 소유의 SET-UID 프로그램이 공격 대상
- 지정된 버퍼 크기보다 더 큰 입력값으로 인해 프로그램 오동작 유발

 

+ 디스크 자원 할당 고갈 공격 : 사용자에게 할당된 디스크 사이즈가 제한되어 있지 않을때 발생

 

 

158.
exploit코드 대책 (버퍼 오버플로우)
예시: strcpy(버퍼, string);
- 경계검사 기능을 제공하는 컴파일 및 링커 사용 + 고급 수준의 언어 사용, 안전한 표준 라이브러리 사용
- 안전한 함수 : strncpy

 

159.
버퍼 오버플로우
- Segmentation Fault : Seg Fault라고도 함. 허용되지 않은 메모리 영역 접근시에 발생하는 오류.
- 하트블리드 : OpenSSL 취약점 (길이 체크 미흡)
- Stack

+ OpenStack : 오픈소스 기반 클라우드 컴퓨팅 OS 개발 프로젝트

 

160.
버퍼 오버플로우 대응방안
- 스택 가드 : 카나리아, 복귀주소와 변수 사이 특정값을 저장하여 변경 체크
- Non-Executable 스택 : 스택과 힙 영역에서 쉘코드 실행 방지 (실행권한 변경)
- ASLR : 주소 위치를 지속적으로 변경

+ 스택 쉴드 : 특수스택에 RET저장 후 변경 체크

 

공격기법
+ RTL : 스택의 RET 주소를 실행 가능한 임의의 주소로 돌려 원하는 함수를 실행한다 (해킹 공격기법)

+ DEP 비활성화 : DEP 동작모드를 변경하여 원하는 코드를 실행
+ ROP : RTL + Gadgets. 실행권한이 있는 임의의 라이브러리 영역 등을 이용한다. RET 영역에 Gadgets의 주소를 저장함으로써 연속하여 다음 함수 호출.

 

161.
포맷스트링 취약점 방지
- 포맷스트링 지시자와 대응하는 변수값은 항상 1:1
- 포맷스트링 지시자와 변수형을 일치시킨다
- 정적 포맷스트링을 사용
- 가변적 길이를 취급할 수 있는 지시자는 길이를 명시한다

+ printf : 동적 포맷스트링 허용하기 때문에 발생

 

162.
백도어 대응책
- 윈도우 작업관리자나 리눅스 ps 명령어로 비정상 프로세스가 있는지 확인
- 주기적으로 파일 해시값을 생성해 무결성 점검
- 불필요한 서비스 포트 닫기

- 백도어 탐지툴 이용
- set-uid 파일 검사

스니핑 대응책
- NIC 동작모드가 promiscuous인지 체크

 

163.
소스코드가 의미하는 공격
while(1) {
 fork();
}
=> 프로세스 고갈 공격

 

+ malloc, create, write 등 : 디스크 고갈 공격

 

164.
크립토재킹
- 타인의 PC를 좀비 PC로 만들어 가상화폐를 채굴함

 

+ SSL 이용한 보안채널 설정 시 중간자 공격을 통해 암호화 통신을 스니핑 : SSL Stripping

 

165.
지능형 지속 위협APT 공격 순서
1) 침투 : 취약한 시스템, 지원기기를 감염시켜 내부 네트워크 침투 (사회공학, 제로데이공격, 포트스캐닝, USB침투, 스피어피싱)
2) 수집 : 침투한 내부 시스템 정보 수집 (키로깅, 화면갈무리, 메모리해킹, 패턴분석)
3) 확산 : 내부 네트워크로 악성코드 확산, 권한 획득 
4) 유출 : 중요 데이터 유출, 시스템 운영 방해/파괴

 

166.

랜섬웨어 예방법
- 백신 소프트웨어 설치, 업데이트
- 출처가 불분명한 이메일과 URL 링크를 실행하지 않는다
- 파일 공유 사이트에서 다운로드/실행에 주의

- 모든 소프트웨어는 최신버전으로 업데이트

 

+ 컴퓨터 전체에 악성코드가 감염될 수 있으므로, 중요 자료는 별도의 보조기억장치나 클라우드에 백업한다

 

167.
해커가 특정 기업, 기관등의 하드웨어나 소프트웨어 개발 과정에 침투하여 제품을 악의적 변조 또는 제품 내부에 악성코드등을 숨기는 행위
=> supply chain attack 공급망 사슬 공격