정보보안기사 로그 문제는 공격명을 빨리 맞히는 문제가 아닙니다. 화면에서 확인된 사실과 그 사실로 추정한 내용을 분리해야 합니다. 명령어 문제도 완성 문자열을 통째로 외우기보다 요구 조건을 옵션으로 바꾸는 과정이 중요합니다. 두 유형 모두 조건을 읽고 답을 조립하는 문제라는 점은 같습니다.
로그는 네 칸으로 나눠 읽습니다
예를 들어 서버의 특정 포트에서 SYN-RECV 상태가 수백 건 반복된다면 SYN Flooding을 의심할 수 있습니다. 하지만 몇 줄의 연결 목록만으로 공격 성공과 서비스 장애까지 단정할 수는 없습니다. 발생률, 출발지 분포, 백로그 사용량, 정상 트래픽 영향 등을 함께 확인해야 판단이 단단해집니다.
근거는 로그의 실제 값으로 씁니다
“비정상적이기 때문이다”처럼 추상적으로 쓰면 어떤 단서를 읽었는지 드러나지 않습니다. 다음처럼 화면에서 확인한 값과 그 의미를 연결합니다.
- 관찰동일 서비스 포트에 연결 미완료 상태가 짧은 시간 동안 다수 누적됐다.
- 해석TCP 연결을 완료하지 않은 채 서버의 연결 대기 자원을 점유하는 행위와 맞는다.
- 추가 확인연결 발생률, 출발지 주소 분포, 백로그와 서비스 지연을 함께 확인한다.
웹 로그라면 요청 메서드, URI, 상태 코드, 응답 크기, 처리 시간, 사용자 에이전트를 봅니다. DNS 로그라면 질의 이름과 유형, 요청·응답 크기, 출발지 분포를 확인합니다. 어떤 로그든 공격명보다 먼저 볼 필드를 정해 두면 낯선 형식에서도 흔들리지 않습니다.
명령어는 요구 조건을 옵션으로 번역합니다
명령 작성형에서는 문장을 다음 네 요소로 나눕니다.
- 명령어떤 도구를 사용할 것인가
- 대상경로, 파일, 인터페이스, 주소 중 무엇을 다루는가
- 조건유형, 시간, 범위, 방향을 어떻게 제한하는가
- 결과출력, 변경, 차단 중 무엇을 요구하는가
앞면에 옵션 이름을 보여주면서 같은 옵션을 포함한 명령을 쓰라고 하면 답이 노출됩니다. 작성형 문제에는 “다른 파일시스템으로 내려가지 않는다”처럼 의미만 제시하고 학습자가 해당 옵션을 꺼내야 합니다. 반대로 완성 명령을 보여줬다면 각 옵션의 의미를 묻는 해석형이 적절합니다.
예시: 조건에서 GNU find 명령 만들기
/etc/httpd/conf.d 아래에서 다른 파일시스템으로 내려가지 않고, 일반 파일 중 현재 시각 기준 최근 10일 이내 수정된 파일을 찾는다고 가정해 보겠습니다.
- 범위 제한다른 파일시스템으로 내려가지 않음 →
-xdev - 파일 유형일반 파일만 선택 →
-type f - 시간 조건수정 후 지난 24시간 단위 값이 10보다 작음 →
-mtime -10
find /etc/httpd/conf.d -xdev -type f -mtime -10
-mtime은 현재 시각에서 지난 시간을 24시간 단위로 계산해 소수 부분을 버립니다. 달력 날짜의 자정 경계를 기준으로 보려면 -daystart를 검토하고, 명시적인 날짜·시각 경계가 필요하면 -newermt처럼 기준 시각을 직접 지정하는 방법을 사용합니다.
복습할 때는 정답보다 판단 과정을 다시 봅니다
틀린 문제를 다시 볼 때 완성 답만 읽으면 같은 변형에서 또 막힐 수 있습니다. 로그는 놓친 필드에 표시하고, 명령어는 어느 조건을 어느 옵션으로 바꾸지 못했는지 기록하세요. 단답형 핵심 용어부터 다시 잡아야 한다면 단답형 암기법을 먼저 보는 편이 좋습니다.