공부/자격증

정처기(서브넷, 네트워크 침해 공격, 형상 관리 도구, 스케줄링)

edcrfv458 2025. 4. 18. 21:10

서브넷

  • 문제: 192.168.1.0/24 네트워크를 FLSM 방식을 이용해 3개의 Subnet으로 나누었을 때, 두 번째 네트워크의 브로드캐스트 IP 주소를 10진수 방식으로 작성
    • FLSM: 똑같은 크기로 똑같이 나눠줌
      • 2의 제곱수로 나눔
      • 필요한 개수보다 적게는 못 나눔
      • 필요한 개수보다 크게 나눈 다음 사용할 부분만 사용하면 됨
    • IP: 192.168.1.0/24를 2진수 변환 ➡️ 11000000 10101000 00000001 00000000
    • Subnet Mask: 0/24는 앞에서 부터 1을 24개 작성 ➡️ 11111111 11111111 11111111 00000000
      • 0은 사용 가능, 1은 사용 불가능
      • Subnet Mask를 10진수로 변환하면 255.255.255.0
      • 따라서 IP의 182.168.1 까지는 건들이지 못함
    • 마지막 0 부분만 마음대로 사용 가능
      • 0~255까지 가능하므로 256개 가능
    • 3개로 나누기 위해서는 3보다 큰 2의 제곱수인 2^2 = 4개로 나눠야 함
      • 따라서 맨 뒷 자리에서 앞 두 칸을 1로 채움 ➡️ 11000000
      • 사용 가능한 칸은 6자리 남음
      • 2^6 = 64개씩 사용 가능
    • 1번째 subnet ➡️ 192.168.1.0 ~ 192.168~1.63
    • 2번째 subnet ➡️ 192.168.1.64 ~ 192.168~1.127
    • 3번째 subnet ➡️ 192.168.1.128 ~ 192.168~1.191
    • 4번째 subnet ➡️ 192.168.1.192 ~ 192.168~1.255
      • 첫 번째 IP 주소는 네트워크 IP 주소로 빠짐
      • 마지막 IP 주소는 브로드캐스트 주소로 빠짐
    • 사용가능한 IP 주소
      • 1번째 subnet ➡️ 1 ~ 62
      • 2번째 subnet ➡️ 65  ~ 126
      • 3번째 subnet ➡️ 129 ~ 190
      • 4번째 subnet ➡️ 193 ~ 254
  • 정리
    • 정답: 192.168.1.127
Network IP 가용한 주소 broadcast IP
0 1 ~ 62 63
64 65 ~ 126 127
128 129 ~ 190 191
192 193 ~ 254 255

네트워크 침해 공격

  • 사회 공학 (Social Engineering): 컴퓨터 보안에 있어, 인간 상호 작용의 깊은 신뢰를 바탕으로 사람들을 속여 정상 보안 절차를 깨트리기 위한 비기술적 시스템 침입 수단을 의미
  • 다크 데이터: 특정 목적을 가지고 데이터를 수집하였으나, 이후 활용되지 않고 저장만 되어있는 대량의 데이터를 의미
    • 미래에 사용될 가능성을 고려해 저장 공간에서 삭제되지 않고 보관되어 있으나, 이는 저장 공간의 낭비뿐만 아니라 보안 위험을 초래할 수도 있음
  • 세션 하이재킹: 상호 인증 과정을 거친 후 접속해있는 서버와 서로 접속되어 클라이언트 사이의 세션 정보를 가로채는 기법
    • 접속을 위한 인증 정보 없이도 가로챈 세션을 이용해 공격자가 원래의 클라이언트인 것처럼 위장해 서버의 자원이나 데이터를 무단으로 사용
    • TCP 3-Way-Handshake 과정에 끼어들어 시퀀스 번호를 가로채 서버에 무단으로 접근
  • ARP Spoofing: ARP의 취약점을 이용한 기법으로, 자신의 물리적 주소를 공격대상의 것으로 변조하여 공격 대상에게 도달해야 하는 데이터 패킷을 가로채거나 방해함
  • 타이포스쿼팅 (Typosquatting): 네티즌들이 사이트에 접속할 때 주소를 잘못 입력하거나 철자를 빠뜨리는 실수를 이용하기 위해 이와 유사한 유명 도메인을 미리 등록하는 것
    • URL 하이재킹이라고도 함
  •  SQL 삽입 (Injection) 공격: 전문 스캐너 프로그램 혹은 붓넷 등을 이용해 웹사이트를 무차별적ㅇ으로 공격하는 과정에서 취약한 사이트가 발견되면 데이터베이스 등의 데이터를 조작하는 일련의 공격 방식
  • 크로스 사이트 스크립팅 (XSS; Cross Site Scripting): 네트워크를 통한 컴퓨터 보안 공격의 하나
    • 웹 페이지의 내용을 사용자 브라우저에 표현하기 위해 사용되는 스크립트의 취약점을 악용한 해킹 기법
  • 스니핑 (Sniffing): 네트워크의 중간에서 남의 패킷 정보를 도청하는 해킹 유형의 하나로 수동적 공격
  • 고가용성 (HA, High Availability): 긴 시간동안 안정적인 서비스 운영을 위해 장애 발생 시 즉시 다른 시스템으로 대체 가능한 환경을 구축하는 메커니즘
  • 3D Printing (Three Dimension Printing): 대상을 평면에 출력하는 것이 아니라 손으로 만질 수 있는 실제 물체를 만들어내는 것
    • 아주 얇은 두께로 한층한층 쌓아 하나의 형태를 만들어내는 기술을 이용
  • 4D Printing (Fourth Dimension Printing): 특정 시간이나 환경 조건이 갖추어지면 스스로 형태를 변화시키거나 제조되는 자가 조립(Self-Assembly) 기술이 적용된 제품을 3D Printing하는 기술
  • RAID: 여러 개의 하드디스크로 디스크 배열을 구성하여 파일을 구성하고 있는 데이터 블록들을 서로 다른 디스크들에 분산 저장할 경우 그 블록들을 여러 디스크에서 동시에 읽거나 쓸 수 있으므로 디스크의 속도가 매우 향상됨
  • 4K 해상도: 차세대 고화질 모니터의 해상도를 지칭하는 용어로, 가로 픽셀 수가 3840이고, 세로 픽셀 수가 2160인 영상의 해상도
  • 앤 스크린: N개의 서로 다른 단말기에서 동일한 콘텐츠를 자유롭게 이용할 수 있는 서비스
  • 캠패니언 스크린: 앤 스크린의 한 종류
    • TV 방송 시청 시 방송 내용을 공유하며 추가적인 기능을 수행할 수 있는 스마트폰, 태블릿, PC 등을 의미하는 것
  • 신 클라이언트 PC: 하드디스크나 주변장치 없이 기본적인 메모리만 갖추고 서버와 네트워크로 운용되는 개인용 컴퓨터
  • 패블릿: 폰과 태블릿의 합성어
    • 태블릿 기능을 포함한 5인치 이상의 대화면 스마트폰
  • C형 유에스비: 범용 인터페이스 규격인 USB의 표준 중 하나
  • 멤스 (Micro-Electro Mechanical Systems): 초정밀 반도체 제조 기술을 바탕으로 센서, 액추에이터 등 기계 구고즐 다양한 기술로 미세 가공하여 전기기계적 동작을 할 수 있도록 한 초미세 장치
  • 트러스트존 기술
    • 하나의 프로세서 내에 일반 애플리케이션을 처리하는 일반 구역과 보안이 필요한 애플리케이션을 처리하는 보안 구역으로 분할하여 관리하는 하드웨어 기반의 보안 기술
  • 엠디스크 (Millennial DISC): 한 번의 기록만으로 자료를 영구 보관할 수 있는 광 저장장치
    • 디스크 표면의 무기물층에 레이저를 이용해 자료를 조각해서 기록함으로 시간이 지나도 변하지 않는 금속 활자처럼 빛, 열, 습기 등의 외부 요인에 영향을 받지 않음
  • 멤리스터: 메모리와 레지스터의 합성어
    • 전류의 방향과 양 등 기존의 경험을 모두 기억하는 특별한 소자

형상 관리 도구 (SCM, Software Configuration Management)

  • 개발 과정에서 소프트웨어의 변경 사항을 관리하기 위해 개발된 일련의 활동
    • CVS (Concurrent Version System): 공동 개발을 편리하게 작업할 수 있도록 각종 소스의 버전 관리를 도와주는 시스템
    • Subversion (서브버전, SVN): 클라이언트/서버 구조로, 서버(저장소, Repository)에는 최신 버전의 파일들과 변경 사항이 관리됨
      • 오픈소스여서 무료로 사용 가능
      • CVS의 단점이었던 파일이나 디렉토리의 이름 변경, 이동 등이 가능
    • Git: 분산 버전 관리 시스템으로 2개의 저장소(지역 저장소, 원격 저장소)가 존재
      • 버전 관리가 지역 저장소에서 진행되므로 버전 관리가 신속하게 처리되고, 원격 저장소나 네트워크에 문제가 있어도 작업이 가능

스케줄링

  • FCFS (= FIFO, 선입선출): 준비상태 큐에 도착한 순서에 따라 차례로 CPU를 할당하는 기법
  • HRN (Highest Response-ratio Next): 대기 시간과 서비스 시간을 이용하는 기법
    • 실행 시간이 긴 프로세스에 불리한 SJF 기법을 보완하기 위한 것
    • 식 ➡️ (대기 시간 + 서비스 시간) / 서비스 시간
  • SJF (Shortest Job First): 준비상태 큐에서 기다리고 있는 프로세스 들 중 실행 시간이 가장 짧은 프로세스에게 CPU 할당
  • RR (Round Robin): 준비상태 큐에 먼저 들어온 프로세스가 먼저 CPU 할당을 받지만, 각 프로세스는 할당된 시간동안만 실행한 후 실행이 완료되지 않으면 다음 프로세스에게 CPU 넘겨주고 준비상태 큐의 가장 맨 뒤로 배취
  • SRT (Shortest Remaining Time): 현재 실행중인 프로세스의 남은 시간과 준비상태 큐에 새로 도착한 프로세스의 실행 시간을 비교하여 가장 짧은 실행 시간 요구하는 프로세스에게 CPU를 할당

데이터베이스 연산

  • 관계 대수: 원하는 정보와 그 정보를 검색하기 위해 어떻게 유도하는가를 기술하는 절자적인 언어
    • 릴레이션을 처리하기 위해 연산자와 연산규칙을 제공
    • 피연산자와 연산 결과가 모두 릴레이션
    • 질의에 대한 해를 구하기 위해 수행해야 할 연산의 순서를 명시
  • 종류
    • 순수 관계 연산자
      • Select: σ(시그마)
      • Project: π(파이)
      • Join: ▷◁(보타이)
      • Division: ÷
    • 일반 집합 연산자
      • 합집합(UNION): U
      • 교집합(INTERSECTION):
      • 차집합(DIFFERENCE): -
      • 교차곱(CARTESIAN PRODUCT): x
  • 관계 해석: 관계 데이터의 연산을 표현하는 방법
    • 튜플 관계 해석: 튜플 해석식을 사용
    • 도메인 관계 해석: 도메인  해석식을 사용