공군 정보보호병 면접 준비

2021. 1. 24. 17:09

이게 대외활동인가?

잘 모르겠다.

그냥 카테고리 하나 더 만들기 애매해서 여기에 넣었다.

 

면접 예상 질문 및 답변

대외적 질문

 

1. 자기소개 해보세요.

 

...

 

2. 한미 연합에 대해 어떻게 생각하나요.

 

한미연합은 휴전 국가인 우리나라에 전쟁이 발발가능한 상황을 전제로 억제를 목적으로 하는 한국과 미국의 연합 통칭입니다. 한미 연합 국가총력전 연습인 을지 프리덤 가디언스, UFG는 세계적인 군사훈련 모델로 평가받고 있습니다. 북한의 비핵화가 불확실한 만큼 한미연합은 더욱 필요하다고 생각합니다.

 

3. 여러 공격에 대한 북한

 

 

 

 

4. 지원한 계기는?

 

정보보호병은 웹 방화벽, IPS/IDS, NAC 등의 정보보안 체계를 관제하고 군 내 침해사고에 대응하는 업무를 하는 것으로 알고 있습니다.  또한, 공군, 육군, 해군 중에서 공군이 정보보호병에 대한 지원이 가장 많다고 들었습니다. 따라서 저는 정보보호병의 업무를 성실히 맡으며 새로운 것에는 배우는 자세로 임한다면 실무 경험까지 쌓을 수 있을 것이라는 생각에 지원하게 되었습니다.

 

5. 팀 프로젝트에서 팀원간 갈등해결 방법

 

...

 

6. 정보보호병, 정보체계관리단의 업무에 대해서 알고 있나요?

 

웹 방화벽, IPS/IDS, NAC 등의 정보보안 체계를 관제하고 군 내 침해사고에 대응하는 업무를 합니다.
(솔루션 -> 체계)
웹방화벽
sql injection xss webshell 등의 웹 서비스에 대한 공격을 차단을 하기 위해 웹 서버의 앞단에 설치해서 방어하는 보안 체계입니다.

저는 동아리 내부 세미나를 통해 오픈 소스 웹 방화벽을 다뤄보았는데요, 가상머신에 네트워크 관리 소프트웨어 UNTANGLE을 설치해 사용했습니다. UNTANGLE이란 단순 방화벽 기능 이상으로 여러 기능을 제공하는 복합적위협감지에 가까운 체계입니다. 특정 사이트 접속 금지, 관리자 페이지 접근 설정 등 여러가지 실습을 했었습니다.

NAC - 비인가 단말기 접근 통제 체계 

 

7. 봉사한적 있나요?

 

없습니다.

 

8. 국군의 필요성을 절감한 순간은 언제였나요?

 

천안함 사건, 북한의 핵도발 등의 사건이 있을 때 국군의 필요성을 절실히 느꼈습니다.

 

9. 리더십 발휘 경험이 있나요?

 

동아리에서 부회장 직책과 각종 스터디 팀장을 맡았습니다. 스터디 계획, 정기모임, 공지 작성 등의 각종 활동을 통해 동아리가 올바른 방향으로 나아갈 수 있는 여력을 만들었고 동아리원의 보안에 대한 지식 함양을 위해 지속적으로 스터디 계획을 수립한 바 있습니다. 스터디에서는 초기 설정한 목표에 도달하기 위해 계획을 세우고 실천으로 이끄는 역할을 했습니다.

 

부회장으로서 무슨 역할을 했나요?

정기모임 진행, 스터디 계획 수립, 동아리 일정 관리 등 동아리 운영에 대한 보조적 역할을 맡아왔습니다. 

 

10. 동아리 내에서 역할을 무엇이었나요?

 

동아리에서 부회장 직책을 맡았습니다. 스터디 계획, 정기모임, 공지 작성 등의 각종 활동을 통해 동아리가 올바른 방향으로 나아갈 수 있는 여력을 만들었습니다. 또한, 동아리원의 보안에 대한 지식 함양을 위해 지속적으로 스터디 계획을 수립한 바 있습니다.

 

11. 부회장으로서 무슨 역할을 했나요?

 

운영진 회의 주관, CS 및 해킹 스터디 기획, 쿠시스 실습 교육과 같은 중요 행사 공지, 동아리 소식을 알리기 위한 정기모임 주최 등 동아리 운영에 있어 보조적인 역할을 했습니다.

 

 

기술 질문

 

1. 어느 분야가 가장 자신있나요?

 

웹해킹 분야가 가장 자신있습니다.

 

2. XSS와 CSRF의 차이점

 

XSS와 CSRF는 HTML 스크립트 태그를 삽입하는 것에 있어서는 동일하지만 목적이 다릅니다.

XSS는 서비스를 이용하는 클라이언트를 대상으로 쿠키나 세션 정보 등 자원을 탈취하기 위해 행해지는 공격입니다.

반면, CSRF는 공격 대상 클라이언트를 경유해 다른 서버로의 비의도적인 요청을 통해 이득을 취하는 것이 목적입니다.

 

CSRF 공격 막기 위해

웹 방화벽

 

CSP

 

 

3. CSP를 아나요?

 

CSP는 브라우저단에서 XSS와 같은 공격을 방어하기 위한 완화 방법입니다. script-src 헤더나 메타 테그를 통해 랜덤한 nounce 값을 설정함으로써 악성 스크립트가 실행되는 것을 막을 수 있습니다.

 

4. 웹 보안 방식 중 화이트 박스 방식과 블랙박스 방식에 대해서 아나요?

 

화이트 박스 방식이란 취약점을 점검하고자하는 서비스의 소스코드를 모두 받아 개발자의 관점에서 수행되는 방식입니다. 반대로 블랙박스 방식이란 어떠한 소스코드 없이 블라인드로 취약점을 점검하게 되고 이는 해커의 관점에서 수행되는 방식입니다.

 

5. 네트워크 장비를 다뤄봤나요?

 

네, 다뤄보았습니다. 동아리 내부 세미나를 통해 오픈 소스 웹 방화벽을 다뤄보았는데요, 네트워크 관리 소프트웨어 UNTANGLE을 사용했습니다. UNTANGLE이란 단순 방화벽 기능 이상으로 여러 기능을 제공하는 복합적위협감지에 가까운 체계입니다. 특정 사이트 접속 금지, 관리자 페이지 접근 설정 등 여러가지 실습을 했었습니다.

뿐만 아니라, IDS도 다뤄보았습니다. 스구일(동아리 드라이브 확인)

 

6. 서버 장비를 다뤄봤나요?

 

실무에서 사용하는 서버 장비를 다뤄보지는 않았지만, 워게임이나 CTF를 공부할 때 포트포워딩을 통해 포트를 개방해 서버를 만든적이 있습니다. 프로토타입 폴루션을 공부할 때도 문제를 하나 만들어 포트포워딩을 통해 서버를 만든 뒤 동아리 단체 카톡방에 주소를 뿌린 적이있습니다.

 

7. 무슨 언어를 다룰 수 있나요?

 

c, c++, python, java, php, html, javascript 를 다룰 수 있습니다.

 

8. 파이썬을 이용해 무슨 작업을 해보았나요?

 

워게임이나 CTF 문제를 풀기 위한 자동화 툴을 만들어 보았습니다.

 

9. 웹해킹 말고 다른 분야 해본 경험 있나요?

 

포너블 해보았습니다.

 

10. 포너블 분야에서 취약점이 있는 함수로는 무엇이 있나요?

 

strcpy, scanf, sprintf, strget, gets가 있습니다.

 

11. 프로젝트 경험 있나요? <- 꼬리 질문도 대비해야함.

 

시놀리지 사의 나스에 대해 취약점을 분석하는 프로젝트를 진행했습니다.

나스란 네트워크 결합 스토리지 입니다. 프로젝트 내에서 저의 주된 역할은 나스에서 사진 및 동영상을 관리하는 웹서비스를 분석  및 원데이 재현이었습니다. 가장 처음에 재현했던 원데이는 command injection 취약점이었습니다. 비디오 서비스에서 부제목을 설정하는 과정 중 하나의 파라미터가 쉘과 상호작용을 했고 파이썬 커멘드 옵션을 통해 리버스 루트쉘을 획득할 수 있었습니다. 이 외에도 부가적 역할로 동아리 선배인 프로젝트 메니져의 네트워크 관리 서비스 분석의 보조역할을 했습니다.

이 과정에서 제로데이를 찾았고 현재는 보안 패치가 완료되어있는 상태입니다.

 

)) 어떤 원데이를 재현해보았나?

 

 

 

13. 정보보호장비 중 IPS가 뭔지 아나요?

 

네, 압니다. IPS는 침임방지시스템으로 보안체계 제품 중 하나입니다. IPS는 일정한 패턴으로 알려진 공격만 탐지하는 IDS와 달리 코드 레드, 님다와 같은 새로운 공격패턴을 탐지하는 것 뿐만아니라 즉시 네트워크 연결을 차단하는 등 능동적인 대처까지해 차세대 능동형 보안 솔루션이라고 불립니다.

 

IPS와 IDS의 차이점

IDS는 비정상적인 패킷을 탐지하는 네트워크계의 CCTV라고 할 수 있습니다. 하지만, 알려진 공격이나 일정한 공격패턴을 통해 탐지하기 때문에 새로운 공격 패턴에 대해서는 탐지를 못한다는 단점이 있습니다.

IPS는 IDS와 마찬가지로 비정상적인 패킷을 탐지하는 네트워크계의 CCTV입니다. 하지만, IDS와는 다르게 새로운 공격 패턴을 탐지할 수 있을 뿐만아니라 네트워크 연결을 차단하는 등 즉각적인 대응을 할 수 있어 차세대 대응 보안 체계 제품이라고 불립니다.

 

14. SQL, XSS의 공격법과 방어법을 설명해주세요.

 

먼저 SQL은 logic injection, union injection, subquery injection, error based injection, blind injection 정도가 공격법이라고 할 수 있습니다. SQL injection이라는 것이 결국 사용자의 입력 값이 질의의 일부로서 논리적인 역할을 하기 때문에 발생되는 것인데, 이는 서버 단에서 사용자의 입력값이 문자열로 해석되게 더블 쿼터로 묶거나 싱글 쿼터, DML과 같은 서비스의 흐름과는 상관없는 값들을 블랙리스트 방식으로 제한하는 것이 방어법이 되겠습니다.

 

XSS는 충분한 검증없이 입력된 값이 서버로 전송되고, 서버로부터 충분한 검증없이 사용자의 입력 값을 응답데이터에 실어 전송될 때 발생되는 공격입니다. 주로 자바스크립트를 통해 오픈 리다이렉션, 쿠키 및 세션 탈취, 바이러스 주입 등 여러가지 공격에 연계됩니다. 뿐만 아니라 css의 url 함수를 통해 리다이렉션을 할 수 있습니다. 방어법으로는 해당 서비스 사용에 적합한 소수의 태그들만 허용하는 화이트 리스트 방식이 있습니다. 또한, 공격자가 XSS를 성공하더라도 세션 쿠키에 접근하지 못하도록하는 httponly 헤더 설정, 랜덤한 nonce 값을 알아야 스크립트를 실행할 수 있는 CSP script-src 헤더와 메타 태그가 있습니다.

 

15. TCP와 UDP의 차이점에 대해 말해보세요.

 

먼저 TCP는 연결성 서비스로, 가상 회선 방식을 사용합니다. 수신지를 확실히 하여 신뢰성을 보장하기 위해 3-way handshaking 과정을 거치고 4-way handshaking 과정을 통해 연결을 해체합니다. 또한, 발신지와 수신지의 데이터 처리 속도 차이가 날 경우 흐름 제어를 통해 버퍼 오버플로우가 발생되지 않게 하고 네트워크 상에 패킷이 과하게 많을 경우 혼잡 제어를 통해 패킷의 전송을 억제합니다. 데이터에 대한 높은 신뢰성을 보장하기 위해 여러 기능을 사용하는 과정에서 CPU가 사용돼 속도가 느립니다. 주로 파일 전송에 사용됩니다.

 

반대로 UDP는 비연결성 서비스로, 연결과 해체 과정이 존재하지 않습니다. 데이터 그램 단위로 전송되는 패킷들은 각각 독립적인 관계를 가지고 있어 다른 경로, 독립적인 처리 과정을 거침에도 불구하고 흐름 제어나 혼잡 제어, 패킷 추적과 같은 기능이 없어 데이터 전송에 대한 신뢰성이 낮습니다. 하지만 속도가 빠르고 네트워크 부하가 적다는 장점이 있어 주로 실시간 서비스에서 사용됩니다.

 

16. 라우터의 기능과 역할을 설명하세요.

 

라우터는 OSI 7계층에서 3 계층인 네트워크 계층에 속하는 장비입니다. 라우터는 크게 두 가지 일을 하는데, 패킷이 목적지까지 가는 길을 검사하고 어떤 길이 가장 효율적인지 결정하는 경로 설정과 결정을 바탕으로 패킷을 전송시키는 스위칭입니다. 라우터는 결국 출발지에서 외부 목적지까지 데이터를 가장 효율적으로 전달하는 방법을 결정하고 전달해주는 역할을 합니다.

 

17. 방화벽에 대해서 설명하세요.

 

방화벽은 TCP/IP 레벨에서 IP/PORT 신뢰 여부를 기준으로 구분해주는 접근 제어 기반의 보안 체계입니다. 방화벽은 네트워크 구성 시 당연히 설치되어야 하는 필수 기본 보안 체계입니다.

 

18. 리눅스 사용해봤나요?

 

네, 사용해봤습니다. 첫 사용은 APM을 통해 게시물 서비스를 만드는 것을 통해 접했고 후에는 포너블 워게임인 FTZ와 LOB를 해결하기위해 사용했었습니다. 현재는 CTF나 다른 워게임 문제를 해결할 때 자주 사용합니다.

 

19. 퍼미션을 변경하는 명령어는 무엇인가요?

 

chmod 입니다.

 

20. 큐와 스택의 차이점에 대해 설명하세요.

 

큐와 스택의 차이점에 대해 말씀드리겠습니다. 스택은 LIFO(last in first out)이고, 큐는 FIFO(first in first out)입니다.  간단히 말씀드리면, 스택은 밑이 막힌 통에 값을 차례대로 저장해놨다가 그 값이 필요 할 때는 가장 위에서부터 꺼내는 구조입니다. 예를 들면, C에서 함수를 호출할 때, 현재 상태를 스택에 차례대로 넣은 뒤 호출할 함수에 필요한 자원들을 넣습니다. 후에 호출한 함수가 원시함수로 돌아갈 때 스택에 저장되어 있는 값들을 차례대로 꺼내어 이전 상태로 돌아갑니다.

 

큐는 스택과 반대로 뻥 뚫린 통에 값을 차례대로 저장해놓으면 넣은 순서대로 값이 빠져나오는 것입니다. 좋은 예로 키보드 입력인데, 키보드로 값을 입력하면 차례대로 임시 버퍼에 쌓이게 됩니다. 그러면 프로그래밍에서는 이 입력 값을 이용하기 위해서 입력된 순서대로 값을 꺼내오게 됩니다. 

 

 

 

 

22. 레이스컨디션이 뭔지 아나요? 안다면 설명해주세요.

 

레이스 컨디션은 공유 자원 처리과정에서 동시다발적인 접근으로 인해 발생되는 취약점입니다. 주로 검증 과정과 수정 과정에서의 타이밍으로 인한 데이터 차이로 인해 어플리케이션이 의도하지 않은 흐름으로 진행하게 됩니다. 이를 막기 위해서는 쓰레드 락을 통해 동시다발적 접근을 막거나 레이스 컨디션을 발생시키기 위해서 다량의 접근이 필요하다는 것을 이용해 CSRF 토큰이나 캡차 등을 사용하는 방법이 있습니다.

 

)) 쓰레드 락, CSRF 토큰, 캡차가 뭔가?

 

23. 쿠키와 세션에 대해 설명하고 악용될 우려가 있는지 설명해주세요.

 

쿠키와 세션은 HTTP의 비연결지향적인 단점을 보완해 상태정보를 유지하는 방법입니다.

쿠키는 서버에 접속한 클라이언트의 상태정보가 최대 4KB의 작은 데이터로 클라이언트 측에 저장됩니다.

이후 클라이언트가 서버에 요청을 할 때 쿠키를 같이 보내는 방식으로 상태정보를 유지합니다.

 

세션은 쿠키와 달리 클라이언트의 상태정보가 객체로서 서버의 메모리에 상주합니다.

클라이언트는 자신의 세션ID 값만 저장하고 있으면 되고, 서버에 요청할 때마다 자신의 세션ID 값으로 상태정보를 유지합니다.

 

XSS 등을 통한 세션 ID 쿠키 값이 탈취되어 악용될 우려가 있습니다.

이는 세션ID 정보를 저장하는 쿠키에 httponly 헤더 설정을 통해 접근하는 것을 차단함으로써 막을 수 있습니다.

 

 

 

29. 패킷 분석 경험이 있나요?

 

네, 있습니다. 동아리 세미나에서 suguil이라는 IDS 도구를 통해 악성코드 공격을 받은 피해자의 당시 PC 상황에 대한 pcap 파일을 열어 실시간으로 관찰하고 분석하는 실습을 했습니다. 피해자의 경유지, 악성 스크립트 유포지, 악성 파일 다운로드를 위한 공격자 서버와의 통신 등을 확인할 수 있었습니다.

 

30. 브라우저 보안 경고의 의미는?

 

HTTP로 암호화하지 않고 통신하거나 SSL인증서상의 결함이 있어서 경고가 뜬다.

 

 

32. OSI 7계층에 대해 설명해보세요.

 

OSI 7계층은 네트워크에서 통신이 일어나는 과정을 7단계로 나눈 것을 말합니다. 통신이 일어나는 과정을 단계별로 파악하고 사람이 이해하기 쉽고 특정 단계에서 문제가 발생할 경우 그 단계만 고치면 된다는 장점이 있습니다.

먼저 1계층은 물리 계층으로 통신 케이블, 리피터, 허브라는 장비가 있고 데이터를 전송하는 역할을 합니다. 

2계층은 데이터 링크계층으로 브리지, 스위치라는 장비가 있고 정보의 오류와 흐름을 관리해 물리 계층에서 정보 전달을 수행할 수 있도록 도와주는 역할을 합니다.

3계층은 네트워크 계층으로 라우터라는 장비가 있고 데이터를 목적지까지 가장 효율적으로 전달하는 기능인 라우팅 역할을 합니다.

4계층은 전송 계층으로 게이트 웨이라는 장비가 있고 발신지와 목적지의 제어와 에러를 관리합니다. TCP와 UDP가 이 계층에 속합니다.

5계층은 세션 계층으로 양 끝단의 응용 프로세스가 통신을 관리하기 위해 방법을 제공하는 역할을 합니다. 주로 사용자간의 포트연결이 유효한지 확인하고 설정합니다.

6계층은 응용 계층으로 입력 또는 출력되는 데이터를 하나의 표현 형태로 변환하는 역할을 합니다. 쉬운 예로 확장자나 제어 코드, 문자 등이 있습니다.

7계층은 어플리케이션 계층으로 사용자가 네트워크에 접근 할 수 있도록 도와주는 역할을 합니다. HTTP, FP, SMTP, Telnet 등과 같은 프로토콜이 있으며 브라우저나 메일 프로그램과 같은 응용프로그램을 통해 보다 쉽게 사용할 수 있습니다. <- 웹방화벽

 

OSI 보안장비 공부, 프로토콜

 

 

33. OWASP TOP 10에 대해서 설명해보세요.

 

OWASP란 오픈소스 웹 어플리케이션 보안 프로젝트입니다. 웹에 관한 정보노출, 악성 파일 및 스크립트, 보안 취약점 등을 연구하며, 3년마다 빈도가 높고 보안상 영향을 크게 끼치는 10가지를 선정하여 발표하고 있습니다. 2020년 발표된 것중 대표적인 것으로는 Injection, XXS, 취약한 인증 및 접근 제어가 있습니다.

 

 

 

 

==================================

825기로 들어갔었고 전역한 상태입니다~