사이버 공방 및 실습

eunsukim·2024년 9월 30일

Windows CMD Network Commands

윈도우 운영체제는 여러가지 빌트-인 유틸리티를 제공한다. 이 장에서는 윈도우에서 제공하는 CMD Network Commands에 대해서 알아본다.

Common networking commands

  • ping
  • ARP
  • tracert & pathping
  • nslookup
  • ipconfig
  • route print
  • netstat

*Windows commands 뒤에 '/?' 를 덧붙이면 해당 command의 사용법 또는 다양한 옵션을 확인할 수 있다.

1. ping

ping(Packet Internet Groper)은 서로 다른 호스트 사이의 네트워크 연결 상태를 확인하는 명령어이다. 쉽게 말해 사용자의 PC에서 특정 서버 또는 장치로 보낸 패킷이 다시 돌아오는데 걸리는 시간을 측정하여 네트워크 연결 상태 및 지연시간을 확인하는 명령어이다.


아무런 옵션 없이 실행 시 4번의 ping을 수행하지만 '-t' 옵션을 덧붙이면 사용자가 임의로 종료하기 전까지 계속해서 ping을 수행한다.

2. tracert & pathping

인터넷에서 데이터를 주고받을 때, 그 데이터는 여러 네트워크 장치(주로 라우터)를 거쳐 목적지에 도달한다. 이러한 장치들은 전 세계에 분산되어 있고, 데이터는 경로를 따라 이동하면서 각각의 장치를 지나가게 된다. 두 명령어는 출발지와 도착지 사이의 다양한 네트워크 장치(라우터)들에 대한 정보를 제공한다.

tracert는 데이터가 출발지에서 도착지에 도달하기까지 거치는 각 장치들에 대한 지연 시간을 보여주고, 이를 통해 네트워크 경로를 파악할 수 있다. 여기서 홉이란 데이터가 목적지에 도달하기 전까지 거치는 각 네트워크 장치 구간을 의미하며, 위의 사진에서는 구글에 도달하기 까지 14홉을 거친 것을 확인할 수 있다.

pathping은 tracert와 같이 각 홉들에 대한 지연시간을 보여주는 것에 추가로 패킷 손실률을 확인할 수 있다.

3. route print

route print는 시스템의 라우팅 테이블 출력하여 보여준다.

  • 네트워크 대상 : 패킷이 보내질 목적지.
  • 네트워크 마스크 : 서브넷 마스크로, 네트워크 주소와 호스트 주소를 구분하는 역할.
  • 게이트 웨이 : 패킷이 목적지에 도달하기 위해 거쳐야 할 다음 홉.
  • 인터페이스 : 네트워크 트래픽을 송수신하는 실제 네트워크 장치.
  • 메트릭 : 라우터가 최적 경로를 설정할 때 참고하는 우선순위 값이다. 가장 작은 값을 최적 경로로 설정함.

4. netstat

netstat은 route print처럼 라우팅 테이블을 출력해보여주지만, 여러 옵션을 통해 더 많은 기능을 수행할 수 있다.

5. nslookup

nslookup은 도메인 네임을 얻거나 IP 주소 매핑 또는 다른 특정한 DNS 레코드를 도메인 네임 시스템(DNS)에 질의할 때 사용된다.

위의 사진은 nslookup에서 사용할 DNS 서버를 Google DNS(8.8.8.8)로 설정한 뒤 이를 사용해 cyberbit.com의 메일 서버(MX 레코드) 정보를 조회한 것이다.

6. ARP

ARP 명령어는 현재 기기의 ARP 테이블을 출력해서 보여준다. ARP 테이블은 IP주소, 이와 연결된 물리적 MAC 주소가 매핑되어 저장되어 있다.

7. ipconfig

ipconfig란 내 컴퓨터의 네트워크 환경정보를 확인하는 명령어이다. IP주소, 서브넷 마스크, 기본 게이트웨이 등의 정보를 확인할 수 있다.

Basic CMD Network Commands Lab

Q1. What is the Ethernet (MAC) address of the IP 1.1.1.1?


A. 11-22-33-44-55-66

Q2. Ping cyberbit.cyberbit-neverping.com. How many packets were sent, received and lost?


A. 4,4,0

Q3. What is the subnet mask of the Ethernet interface?


A. 255.255.254.0

Q4. What is the IP of test.test.com in the DNS Cache?


ipconfig /dispalydns

A. 2.2.2.2

Q5. How many network subnets use 2.2.2.2 as the first routing hop?


route print를 했을 때, 2.2.2.2를 게이트웨이로 사용하는 3개의 주소가 존재한다.

A. 3

Q6. How many routing tables are maintained by the OS?

A. 2 (IPv4, IPv6)

Q7. Ping www.cyberbit.com, what is the IP address?

A. 149.126.73.127

Q8. How many hops are required to get to test1.cyberbit-nevertest1.com?

A. 1

Q9. I want to find the hostname '149.125.77.154'. What kind of command will provide me the solution?


A. ping -a 149.125.77.154

Windows Versioning and Shadow Copies

특정한 시각의 파일, 폴더의 복사본이나 볼륨의 스냅샷을 저장해두고 복원할 수 있는 기능

목적: 파일 및 드라이브의 수동 또는 자동 백업을 생성하는 데 사용.
핵심 구성 요소: VSS(Volume Shadow Copy Service), Shadow copies를 생성하는 핵심적인 역할.
다른 구성 요소:
Requestor: VSS 요청자.시스템의 특정 시점의 데이터를 백업하거나 복원하려는 요청을 보낸다.
Providers: VSS 복사본을 만들고 유지 및 관리
Writers: 특정 애플리케이션의 데이터를 보호하기 위해 백업을 처리하는 역할. 일관된 백업 세트의 구성.

VSS 작동 플로우

섀도 복사본(Shadow Copy)을 생성하기 위해 요청자(Requester), 라이터(Writer), 프로바이더(Provider)가 수행하는 작업 플로우.

  1. 요청자는 VSS에게 라이터를 나열하고, 라이터의 메타데이터를 수집한 후 섀도 복사본 생성 준비를 요청한다.

  2. 각 라이터는 백업해야 할 구성 요소와 데이터 저장소에 대한 XML 설명서를 작성하여 VSS에 제공한다. VSS는 라이터의 설명을 요청자에게 전달하고, 요청자는 백업할 구성 요소를 선택한다.

  3. VSS는 모든 라이터에게 데이터를 섀도 복사본으로 만들기 위한 준비를 하도록 알린다.

  4. 각 라이터는 적절한 방식으로 데이터를 준비한다. 데이터가 섀도 복사본으로 만들 준비가 완료되면, 라이터는 VSS에게 이를 알린다.

  5. VSS는 라이터에게 일시적으로 응용 프로그램의 쓰기 I/O 요청을 동결하도록 지시한다. (읽기 I/O 요청은 계속 가능.)

  6. VSS는 프로바이더에게 섀도 복사본을 생성하라고 지시한다. 섀도 복사본 생성 기간은 10초를 넘기지 않으며, 이 기간 동안 파일 시스템에 대한 모든 쓰기 I/O 요청은 동결된 상태로 유지된다.

  7. VSS는 파일 시스템에 대한 쓰기 I/O 요청을 다시 허용한다.

  8. VSS는 라이터들에게 쓰기 I/O 요청을 해제하라고 지시한다. 이 시점부터 응용 프로그램은 다시 섀도 복사본이 만들어지고 있는 디스크에 데이터를 자유롭게 쓸 수 있게 된다.

  • 주의사항:
    만약 라이터가 60초 이상 동결 상태에 있거나 프로바이더가 섀도 복사본을 10초 이상 생성하지 못하면, 섀도 복사본 생성이 중단될 수 있음.
    요청자는 1단계로 돌아가서 다시 시도할 수 있거나, 관리자에게 통보하여 나중에 다시 시도하도록 요청할 수 있음.

  • 섀도 복사본 생성이 성공한 경우:
    섀도 복사본이 성공적으로 생성되면, VSS는 요청자에게 섀도 복사본의 위치 정보를 반환한다.
    특정 경우, 섀도 복사본이 읽기-쓰기 볼륨으로 일시적으로 만들어질 수 있는데, 이 상태에서는 VSS와 하나 이상의 애플리케이션이 섀도 복사본의 내용을 수정할 수 있다. VSS와 애플리케이션이 수정 작업을 마치면, 섀도 복사본은 읽기 전용으로 변환된다.

Interacting with VSS

  1. 파일 탐색기의 History feature
  1. vssadmin.exe

  2. wmic.exe shadowcopy

SHADOW COPIES

Q1. On the desktop, you can find 2 folders, both of them contain encrypted files with the extension of CRYPTO. What is the difference between the folders?


A. folder1 has a backup, folder2 does not have

Q2. Right-click on folder1 - "restore previous versions", how many versions did you find?\

A. 1 version

Q3. Right-click on folder2 - "restore previous versions", how many versions did you find?

A. 0 version

Q4. What could lead to the amount of versions you selected on your previous answer?

A. The folder was created after the backup

Q5. Based on the previous version of folder1, what is the original file type of file1?


A. Docx File

Q6. Open the Task Scheduler. What command triggered the creation of shadows copies for drive C?


A. vssadmin.exe create shadow /for=C:

Q7. Some drives/folders/files have no backups, why?

A1. System Protection might not be turned on for that hard drive
A2. The file might be an offline file. Offline files are copies of files that are stored on shared network folders
A3. If a computer is on a corporate network, the network administrator might have disabled shadow copies

Windows Users and Groups

User account

사용자 계정은 개인, 서비스 또는 리소스를 식별하는데 사용된다.

연관 정보:

  • 사용자 이름(Username)
  • 비밀번호(Password)
  • 그룹 멤버십(Group membership): 계정이 속한 사용자 그룹, 특정 권한을 공유하는 그룹
  • 계정 수준(Account level): 계정의 권한 수준(Standard, Administrator etc..)

계정 생성 방법:

  • 계정은 각 컴퓨터에서 로컬로 생성될 수 있다.
  • 기업 환경에서는 종종 Active Directory 같은 서비스를 사용하여 계정을 중앙에서 관리한다.

Permissions and Sharing

Permission은 user가 어떤 자원에 접근할 권한이 있는지를 결정한다. 기본적으로 Read, Write, Execute 권한을 포함하며, 이는 Individual Resource 또는 Group membership에 따라 결정된다.

Groups

group은 이러한 권한들을 공유하는 User들의 집합이다. Windows는 여러 빌트-인 그룹을 제공한다.

Active directory

Active Directory (AD)는 Windows 네트워크에서 사용자 관리를 제공하는 시스템이다. AD는 사용자와 컴퓨터 리소스를 중앙에서 관리할 수 있는 도구이다.

주요기능:

  • 도메인 컨트롤러:
    도메인 컨트롤러는 AD의 핵심 구성 요소로, 네트워크에서 사용되는 모든 인증(Authentication) 및 권한 부여(Authorization)를 관리한다.

  • 로컬 계정 불필요:
    AD를 사용하면 각 컴퓨터에 로컬 사용자 계정을 별도로 만들 필요가 없다. 대신, AD에서 관리되는 계정을 통해 모든 컴퓨터에 접근할 수 있다.

  • 중앙 집중식 관리:
    AD는 Windows 환경에서 사용자 관리를 중앙화하여, 기업 네트워크 내에서 사용자와 리소스의 관리가 간소화된다.


파일 탐색기에서 특정 파일을 우클릭-속성을 클릭하면 해당 파일에 대한 그룹 또는 유저의 Permission 현황을 확인할 수 있다.

Edit 버튼을 눌러서 특정 그룹 또는 유저에게 부여된 Permission을 허용 또는 거부할 수 있다.


Microsoft에서 제공하는 Tool을 사용해 유저 및 그룹에 대한 Permission을 편집할 수 있다.

0개의 댓글