
정답BSD 유닉스의 모든 코드가 어셈블리 언어로 작성되었다는 설명은 사실이 아닙니다.
핵심 개념
유닉스(UNIX) 운영체제의 기본 특징
유닉스는 벨 연구소에서 개발된 다중 사용자·다중 작업 운영체제입니다. 최초 버전은 어셈블리 언어로 작성되었지만 1973년 데니스 리치가 커널을 C 언어로 다시 작성하면서 이식성이 크게 향상되었고, 이후 등장한 BSD 계열을 포함한 대부분의 유닉스는 C 언어로 작성되었습니다. 루트(/)를 최상위로 하는 계층적 파일 시스템, 시스템 호출을 통한 커널 기능 접근, 다중 프로그래밍을 통한 CPU 이용률 향상, 셸과 커널의 분리 구조가 대표적인 특징입니다.
선지별 해설
①유닉스는 루트 디렉터리를 정점으로 하는 트리 형태의 계층적 파일 시스템을 제공하고, 여러 사용자가 동시에 접속해 작업하는 다중 사용자 환경을 지원합니다.
②BSD 유닉스는 C 언어로 작성된 유닉스에서 파생된 계열로, 코드 대부분이 C 언어로 되어 있습니다. 부팅 코드처럼 하드웨어에 밀착된 극히 일부만 어셈블리로 작성되므로 '모든 코드가 어셈블리'라는 설명은 틀렸습니다.
③여러 프로세스를 주기억장치에 올려 두고 한 프로세스가 입출력을 기다리는 동안 다른 프로세스에 CPU를 할당하는 다중 프로그래밍 기법을 사용하여 CPU 이용률을 높입니다.
④사용자 프로그램은 사용자 모드에서 실행되며, 파일 입출력이나 프로세스 생성 같은 특권 작업이 필요하면 시스템 호출을 통해 커널 모드로 전환하여 커널 기능을 이용합니다.

정답주소 해석 정보를 변조해 가짜 사이트로 유도하는 공격은 파밍(Pharming)입니다.
핵심 개념
파밍(Pharming)과 주요 해킹 공격 기법의 구분
파밍은 사용자의 합법적 도메인을 탈취하거나 DNS 서버·프락시 서버의 주소 정보를 변조하여, 사용자가 정상 주소를 정확히 입력해도 공격자가 만든 가짜 사이트로 접속되도록 만든 뒤 개인정보를 빼내는 공격입니다. 사용자를 속여 클릭을 유도하는 피싱과 달리 주소 해석 단계 자체를 오염시킨다는 점이 핵심이며, hosts 파일 변조나 DNS 캐시 포이즈닝이 대표적인 수법입니다. 제시문의 'DNS 또는 프락시 서버 주소 변조'가 결정적 단서입니다.
선지별 해설
①하이재킹은 이미 인증이 끝나 연결된 세션을 가로채 공격자가 그 세션의 권한으로 통신을 이어받는 공격이므로, 도메인·DNS 변조를 설명한 제시문과 맞지 않습니다.
②트로이 목마는 정상 프로그램으로 위장해 설치된 뒤 내부에서 악성 기능을 수행하는 악성코드로, 주소 정보를 변조하는 방식의 공격이 아닙니다.
③파밍은 DNS 정보나 hosts 파일, 프락시 설정을 변조해 사용자가 진짜 주소를 입력해도 위조 사이트로 연결되게 만들고 입력한 개인정보를 탈취하는 공격으로, 제시문과 정확히 일치합니다.
④스니핑은 네트워크를 지나는 패킷을 몰래 엿보아 정보를 수집하는 수동적 공격이며, 사용자를 가짜 사이트로 유도하는 능동적 변조 행위와는 다릅니다.