티스토리 뷰
< Windows 7 x64 >
0. cmd 명령어 (reg - 레지스트리)
1. NetBIOS 바인딩 서비스 구동 점검
2. 원격 데스크톱 접속 활성화/비활성화
3. wmic, netsh 조사
0. cmd 명령어 (reg - 레지스트리)
cmd 창에 "reg /?"라고 치면 [그림 1]과 같이 레지스트리 작업에 대한 설명이 나온다. "reg 작업 /?"을 치면 특정 작업 유형에 대한 도움말을 볼 수 있다.
* 레지스트리 (Registry)
윈도우 레지스트리는 마이크로소프트 윈도우 32/64비트 버전과 윈도우 모바일 운영 체제의 설정과 선택 항목을 담고 있는 데이터베이스로, 모든 하드웨어, 운영 체제 소프트웨어, 대부분의 비운영 체제 소프트웨어, 사용자 PC 선호도 등에 대한 정보와 설정이 들어 있다. 사용자가 제어판 설정, 파일 연결, 시스템 정책, 또는 설치된 소프트웨어를 변경하면, 이에 따른 변경 사항들이 레지스트리에 반영되어 저장된다. 레지스트리는 또한 성능 카운터와 현재 사용하고 있는 하드웨어와 같은 런타임 정보를 노출하면서 윈도우를 커널의 운영 체제 안에 제공한다.
레지스트리는 키와 값이라는 두 가지 기본 요소를 포함한다. 키는 계급 수준을 지시하기 위해 백슬래시(\)를 사용하면서 Windows라는 경로 이름과 비슷한 구문으로 가리킨다. 예로, HKEY_LOCAL_MACHINE\Software\Microsoft\Windows는 "HKEY_LOCAL_MACHINE" 키의 "Software" 서브키의 "Microsoft" 서브키의 "Windows"라는 서브키를 가리킨다. 레지스트리 값은 키 안에 들어 있는 이름/자료이다.
레지스트리 값 종류 목록 | ||
0 | REG_NONE | 종류 없음 |
1 | REG_SZ | 문자열 값 |
2 | REG_EXPAND_SZ | 확장할 수 있는 문자열 값. 환경 변수를 포함할 수 있다. |
3 | REG_BINARY | 이진값 (임의의 데이터) |
4 | REG_DWORD/REG_DWORD_LITTLE_ENDIAN | DWORD 값 (32 비트) 정수 (0 ~ 4,294,967,295) |
5 | REG_DWORD_BIG_ENDIAN | DWORD 값 (32 비트) 정수 (0 ~ 4,294,967,295) |
6 | REG_LINK | 심볼 링크 (유니코드) |
7 | REG_MULTI_SZ | 다중 문자열 값 (고유한 문자열의 배열) |
8 | REG_RESOURCE_LIST | 리소스 목록 (플러그 앤 플레이 하드웨어 열거 및 구성에 쓰임) |
9 | REG_FULL_RESOURCE_DESCRIPTOR | 리소스 서술자 (플러그 앤 플레이 하드웨어 열거 및 구성에 쓰임) |
10 | REG_RESOURCE_REQUIREMENTS_LIST | 리소스 요구 목록 (플러그 앤 플레이 하드웨어 열거 및 구성에 쓰임) |
11 | REG_QWORD/REG_QWORD_LITTLE_ENDIAN | QWORD 값 (64 비트) 정수, 빅/리틀 엔디언 또는 정의되지 않음 |
레지스트리에 관련된 여러 명령어 중 reg query는 직역하면 레지스트리 항목을 쿼리(질의)한다는 것이고, 읽기 작업을 한다는 뜻이다. reg query 뒤에 /v, /s, /f 등을 덧붙여 세부 작업을 진행할 수 있다.
1. NetBIOS 바인딩 서비스 구동 점검
NetBIOS(Network Basic Input/Output System)는 OSI 모형의 세션 계층에 관련된 서비스들을 제공하여 개개의 컴퓨터의 애플리케이션들이 근거리 통신망을 통해 통신할 수 있게 한다. [그림 3]에 NetbiosOptions에 REG_DWORD가 0x0이라고 되어 있는 것을 점검할 수 있다.
* HKLM (HKEY_LOCAL_MACHINE)
NetBT (NetBIOS over TCP/IP)
/s : 하위의 모든 서브 키 중에서 찾는다.
reg add 명령어로 NetBIOS 바인딩 서비스 구동을 전환하였다. [그림 3]에서는 REG_DWORD가 0이었는데, 1로 값을 바꿔주었다.
* /v : 선택한 키 아래에 있는 추가할 값 이름
/t : 특정 데이터 형만 검색한다. 생략하면 REG_SZ인 것으로 간주한다.
(가능한 데이터 형 : REG_SZ, REG_MULTI_SZ, REG_EXPAND_SZ, REG_DWORD, REG_BINARY, REG_NON)
/d : 추가할 레지스트리 항목에 지정할 데이터
/f : 확인 절차 없이 기존 레지스트리 항목을 강제로 덮어쓰기
레지스트리로 NetBIOS 바인딩 서비스 구동 전환이 잘 되었는지 확인하기 위해 "제어판 → 네트워크 및 인터넷 → 로컬 영역 연결 상태 → 로컬 영역 연결 속성 → Internet Protocol Version 4 (TCP/IPv4) 속성 → 고급 TCP/IP 설정"으로 들어가면 [그림 5]와 같은 창이 뜬다.
* NetBIOS 설정의 기본값(F) : 0
NetBIOS over TCP/IP 사용 (N) : 1
NetBIOS over TCP/IP 사용 안 함(S) : 2
2. 원격 데스크톱 접속 활성화/비활성화
레지스트리로 원격 데스크톱 접속을 활성화했다.
GUI로 레지스트리 편집기에 직접 들어가서 Terminal Server의 fDenyTSConnections 데이터 값을 확인해보면 1임을 알 수 있다. 원격 데스크톱 접속이 활성화되면 1이고, 비활성화되면 0이다.
3. wmic, netsh 조사
3-1. wmic (Windows Management Instrumentation Command-line)
cmd에서 wmic에 대한 도움말은 [그림 8]과 같이 나타난다.
wmic는 wmi를 사용하여 윈도우를 실행하는 컴퓨터를 관리하는 명령어이다. wmi(Windows Management Instrumentation)는 엔터프라이즈 네트워크에서 관리 정보를 액세스하고 공유하는 표준을 만들기 위하여 Microsoft에서 구현한 것을 말한다. Shell 및 유틸리티 명령과 상호 작용하여 한 컴퓨터부터 다수의 컴퓨터까지 원격으로 관리할 수 있으며 관리 스크립팅을 통하여 자동화까지 가능하다. wmic는 기본적으로 Windows XP 이상 버전에서만 로드된다.
wmic 명령어는 IT업무에 유용하게 활용할 수 있지만 해킹에도 활용할 수 있다. 공격자가 원격 PC에서 wmic 명령어를 사용하여 막대한 양의 정보를 열거하거나 명령어 실행 등을 할 수 있다.
Manufacturer - 시스템 제조사의 특정 모델에 특정 취약점이 존재하는 경우가 있다. 해당 정보를 찾기 위해서 검색한다.
Username - 관리자와 일반 사용자를 구분할 수 있으므로 시스템의 사용자 이름 정보가 필요하다.
Roles - 피해자 시스템이 워크스테이션, 서버, 브라우저 등과 같은 모든 역할을 검색한다.
/format:list - 출력을 목록 형식으로 출력한다.
설치 날짜, 계정 이름, 도메인, 로컬 그룹 회원 상태, SID 및 상태를 출력한다.
프로세스 별칭을 사용하여 피해자 시스템에서 프로세스를 만들 수 있다. 이는 백도어를 실행하거나 피해자 시스템의 메모리를 가득 채울 수 있다. 그리고 프로세스를 생성할 뿐만 아니라 Process ID를 제공하며 필요에 따라 프로세스를 조작할 수 있다. 또한, 악의적인 해킹에도 쓰이는 데 프로세스 생성을 이용하여 백신 삭제에도 이용된다.
3-2. netsh (Network Shell, 네트워크 셸)
netsh 명령어는 로컬 또는 원격 구성의 네트워크 설정을 변경할 수 있게 해준다. netsh의 일반적인 사용방법은 TCP/IP 스택을 기본 값으로 되돌려주는 것이다. netsh는 사용자 컴퓨터의 IP 주소를 변경하는 기능도 있다.
사용 예시: netsh interface ip reset C:\resetlog.txt
정적 IP 주소: netsh interface ip set address local static 192.168.0.0 255.255.255.0
복수 정적 IP 주소: netsh interface ip set address local static 123.123.123.123 255.255.255.0
netsh interface ip add address local 234.234.234.234 255.255.255.0
동적 IP 주소: netsh interface ip set address name="Local Area Connection" source=dhcp
- Total
- Today
- Yesterday
- History 객체
- int
- 리액트 #React #props #state #javascript
- Document Object Model
- Navigator 객체
- 변수
- Char
- short
- long
- location 객체
- window 객체
- keyword
- c언어
- DOM
- 컴파일
- 키워드
- bom
- Screen 객체
- gcc
- 자료형
- stdio.h
- Browser Object Model
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |