Google Hacking?

 

 

 - 구글링으로 타겟의 정보 검색 및 습득.
 - 디렉토리 검색 기법
 - 파일 내용 등에 저장된 패스워드 , 신용카드, 주민등록번호 등의 개인 정보 획득
 - 단어와 구 검색을 지원한다. ( " _ _ _ "로 묶어서 검색 )


 
 - 고급 검색 기법 ( intext, intitle, inurl, site )
 디렉토리검색 기법 : ( site:co.kr intext:"index of/" )
 

 

 


서버 기본 페이지를 이용한 버전 정보 획득 후
해당 버전의 취약점을 파악하여 공격계획을 수립할 수 있습니다.

Foot Printing 의 가장 기본적인 방법 중 하나입니다.

요즘은 이런 검색기법으로도 힘들게, 기본 보안이 잘 된 곳도 많긴 합니다만

어디까지나 시작일 뿐이겠죠?

 고급 검색의 예시 

 

1. 아파치가 설치를 위한 테스트 페이지를 찾는다.
 Intitle:"아파치 설치를 위한 테스트페이지"

 -> 기본적인 상태의 서버들이 많으므로, 보안상 취약한 곳이 많습니다.

 

2. Apache SSL/TLS 기본 페이지를 검색.
 Intitle:test page "Hey. It worked!" "SSL/TLS-aware"

 Intitle:"index of" "microsoft-IIS/5.0"

-> 해당 버젼의 취약점에 맞는 공격 기법을 준비할 수 있습니다.

 


 3. 구글 캐쉬 안에 저장된 페이지 직접 접근(없으면 뜨지 않는다)  

구글 검색 후, 저장된 페이지 보기를 클릭.

http://webcache.googleusercontent.com/search?q=cache:lcRNi_6dEk:abc.egloos.com/+&cd=1&hl=ko&ct=clnk&gl=kr

 "&strip=1" 을 뒤에 붙이면 캐쉬 페이지의 접근을 의미 합니다.

 -> 이미 지웠더라도, 구글의 캐쉬서버에 기존 정보가 남아 있습니다.

그래서 일부 정보가 노출될 수 있습니다.

구글에 삭제 요청 하시면, 1~2주 처리기간을 두고 삭제해 줍니다.

 


4. 디렉토리 목록화

site:co.kr intext:"index of/"

-> 해당 서버의 파일 및 소스가 그대로 노출됩니다.

 

5. 로그 파일

db filetype:log

intitle:"index of/" intext:"(backup[백업]bak|dump)"

-> DB 백업용 파일이나, 데이터베이스 저장 파일을 검색.

 

 

블로그 이미지

늙은M군

개인 저장공간입니다. 해당 일부 과정들을 공인 인터넷 환경에서 악성적으로 응용할 시 피해가 발생할 수 있으며, 그에 대해 책임은 사용자에게 있습니다!! 주의해주세요.

,

SNMP(Simple Network Management Protocol)

 

과거
CMIP, SGMP 등으로 섞여 있다가, 프로토콜의 표준화가 1988년에 진행.
복잡함 -> 간소화(SGMP) -> SNMP 로 발전.
TCP/IP -> UDP

- 실제로 심플(간단한)한 프로토콜이 아닙니다.

 기존에 사용되던 프로토콜들보다 보다 간소화되었을 뿐. ( 혼동하지 말 것 )

 

 네트워크 관리 프레임워크 ( Network Management Framework )

->  NMS ( Network Management SYSTEM ) 
 
 명령 직접 전달이 아닌, 정보를 직접 전달하는 관리시스템
 = 변수를 객채마다 설정 후(MIB) 관리시스템에 체계적 전달.

 - 네트워크 관리 프레임워크에서는 SMI 로 변수를 만들어내고 이를 하나의 객채로 취급함

= MIB 
 


 -  MIB 에 의해 공용의 틀이 갖춰지기 때문에, 다른 시스템(에이전트)끼리라도,

상위의 관리 시스템에선 처리가 가능해 집니다. =>  SNMP Protocol

 

 

 

 


 
 NMS의 관리시스템 체계


 
 [ 하나의 관리시스템 체계 구성 ]

 


 1. 관리되는 노드
 2. 관리해주는 시스템
 3. 정보 공유 및 처리를 가능케 하는 공통 변수 ( MIB ) 필요.
 4. 이를 전달해주는 SNMP 프로토콜이 필요.


 
 을 모두 갖추고 있어야 합니다.
 
 
 편의상 SNMP 시스템을 = NMS 라고 부르고 있기도 합니다.


 
 
 SNMP 
 

 

 

 

[ MIB ]

 SMI ( 관리 정보 구조 )
= 데이터 설명 언어
= MIB 정보가 어떻게 정의되어야 하는지를 기술.
= 여러 장비의 호환성을 제공하면서 정의해야 하므로 공통된 방식으로 표현
= MIB 객체와 모듈이 구성될 때 지켜야 할 규칙을 정의하며, ISO 추상표기법(ASN.1, Abstract Syntax Notation) 이라고 하는 데이터 설명 언어를 기반으로 한다

 

 

 MIB
= 한 장비가 가지는 정보 객체의 집합
= MIB 객체는 주로, MIB 모듈이라고 불리는 집합으로 묶여 있음
= 모듈 형태로 구성되기 때문에 필요한 경우 추가해서 이용 가능하므로 확장성, 유연성이 높다.

 

 

 • SMI로 MIB 객체 생성 : 3단계 추상화
 - SNMP 프로토콜이 네트워크 장비의 현 상태를 나타내는 변수를 옮긴다.
 - MIB 는 이 변수의 의미를 정의
 - SMI가 MIB 내의 변수들이 어떻게 정의되는지 규정.

 


 
 • MIB 객체 속성 : 필수 5가지


 1) 객체명


 - 객체 서술명 : 문자로 된 이름
 - MIB객체가 속해있는 그룹에 따라 정해진다.
 - 객체 ID(=)OID=Object ID 
 -  * MIB 계층 안에서 해당 객체의 위치를 나타내는 숫자 이름
 -  * 현재 1만개 이상의 MIB 객체를 모두 다른 이름으로 관리하기 어려우므로 DNS 표기법과 같은 형식으로 구조화하여 최상위부터 점을 찍어서 표시하는 방법이다.


 
 최상위 ROOT 는 OID 표기를 하지 않는다.
 • ROOT { } : 별도의 이름이 없으며, 자식 노드 3개를 가지고 있는 역할만 하고 있다.
 • ccitt(0) : ITU(T) 를 위한 계층
 • iso(1) : iso 표준을 위한 계층
 • joit-iso-ccitt(2) : 위 두 개를 같이 쓰는 장비에서 지정한 표준을 위한 계층
 • 1.org(3) : 다른 조직을 위한 계층
 • 1.3.dod(6) :  미 국방성을 위한 계층
 • 1.3.6.internet(1) : 인터넷을 위한 계층
 -> 우리가 사용하고 있는 모든 객체는 1.3.6.1 에 소속된다.
  • 1.3.6.1.directory(1) : iso가 추후에 사용하기 위해 예약
  • 1.3.6.1.mgmt(2) : 대부분의 표준 MIB 객체가 속한 위치
  • 1.3.6.1.experimemtral(3) : 실험적 객체를 위한 공간
  • 1.3.6.1.private(4) : 사설 기업들을 위해 정의
  • 1.3.6.1.security(5) : 보안을 위해 예약
  • 1.3.6.1.snmpv2(6) : v2 만을 위한 객체 정의
  -> 일반객체(1.3.6.1.2.min(1)) , 사설객체(1.3.6.4.enterprise(1))
 ( 예제 cisco : 1.3.6.1.4.1 )

 

Root Manage 가 Agent 의 IP 에 도달하는 값은 큰 용량이 아닌 OID 의 단순한 1.3.6.1.1.1.4 의 값으로 정의되어 집니다.


   
 2) 형식 : MUB 객체의 자료형과 구조 정의


 • 일반 자료형
 - 정수, 문자열과 같이 정보 하나를 나타냄
 - v1 : 원시/정의 자료형
 - v2 : 기본 자료형

 


 
 • 도표형 자료형
 - 기본형 목록, 기본형을 표로 만든 경우
 - v1 : 생성자 자료형
 - v2 : 개념 자료형


 
 3) 접근 권한( vs : 최대 접근 권한 )


 v1 : 읽기/쓰기/읽고쓰기/접근 금지
 v2 : 계층적 5단계 구조, 상위 계층은 하위 계층 권한을 포함.
  * 5단계 : 생성 읽기(읽기/쓰기/생성)
  * 4단계 : 읽고 쓰기(읽기/쓰기)
  * 3단계 : 읽기(읽기만)
  * 2단계 : 통지 전용(통지, 트랩일 경우만)
  * 1단계 : 접근금지(특수 용도)

 

 

 4) 상태


  * 객체에 관한 필요 유무
  * v1 : 필수/선택/대체
  * v2 : 현재 사용(=v1의 필수)/대체/권장안함

 


 
 5) 정의
  * MIB 객체에 대해 글로 서술.

 


 
 6) 선택적 속성(v2)
  * 단위(Unit) : MIB 객체와 관련된 단위를 글로 서술.
  * 참조(reference) : 관련 문서나 기타 자료에 대한 내용을 추가할 때 사용
  * 인덱스 ( index ) : 여러 MIB 객체들로 이뤄진 객체들을 정의할 때
  * 증분(Augments) : 인덱스 대신 쓸 수 있는 속성
  * 기본 값 (DefVal) : 객체의 기본값 정의
 


 기타 정보 사이트  : http://www.iana.org/assignments/smi-numbers


 
  * 모듈 형식
  - SNMPv2에서 정의
  - 모듈명 : 모듈의 이름(서술형(문자)/숫자형(ID))
  - 마지막 갱신 : 모듈의 마지막 갱신 날짜, 시간
  - 조직 : 모듈을 개발한 조직의 이름
  - 연락처 : 모듈 담당자 이름, 주소, 전화번호, 이메일
  - 서술 : 모듈에 대한 요약 정보
  - 개정 요약/개정 번호 : 모듈 개발 과정을 기록하기 위해 개정될 때마다 개정 항목이 하나씩 추가되며 각 항목마다 개정 내역에 대한 설명을 덧붙임
 

 

 

SNMP Protocol Version History


 
 • SNMPv1
 - 1988년초 개발
 - 구성요소 : SMI, MIB, SNMP 프로토콜
 - 인증 : Community String(비밀번호)에만 의존. 공격에 매우 취약
 - 트래픽을 암호화하지 않으며 보안기능이 없음
 
 


 • SNMPsec
 - 1992년
 - party 라고 불리는 논리 식별자를 이용한 새로운 보안방식 정의
 = 네트워크의 과부하로 인한 속도 및 처리효율이 떨어짐.
 - 사(死)장됨.
 

 • SMNPv2
 
 1) SNMPv2 classic, SNMPv2p

  - SNMPsec의 party 개념을 그대로 이어옴
  - party 기반의 보안 모델이 복잡하다는 이유로 사장됨


  
 2) SNMPv1.5


  - SNMPv2의 내용 중 기능 향상 부분만 가져오고, v1의 Community String 인증을 계속 이용하는 형태
  - 상업적 실패


  
 3) SNMPv2c(community)


  - v2에서 복잡한 보안기능을 제거 

( v2 의 향상된 기능만 채용하고 보안 방식은 v1 의 Community String 을 그대로 채용하여 사용법도 간편 )


  - SNMPv 1.5와 같지만 상업적으로 성공. 
  - 실험적 표준 : RFC 1902 ~ 1908


  
  
 4) SNMPv2u(user)


  - 사용자 기반의 새로운 보안 모델 사용
  - Community String 보다는 보안성이 높고 Party 보다는 단순한 모델
  - RFC 1909 ~ 1910


  
 5) SNMPv2* = SNMPv2p 와 SNMPv2u 가 합쳐진 형태. 거의 사용하지 않음
 
 
 = 변종에 의한 혼란 때문에 많은 네트워크 관리자들이 SNMPv2 의 사용을 포기하고 SNMPv1 또는 SNMPv2c 를 이용.

 


 
 • SNMPv3


 - 1998년에 발표
 - SNMPv2 기능을 모두 포함하고 보안 모델을 SNMPv2u에서 사용된 사용자 기반 보안 모델, View 보안 모델 등 다양한 모안 모델을 지원.
 
 v3 부터는 에이전트 <-> 매니지먼트의 설정값 변경에 의해 역할 체인지 가능
 
 - SNMP 관리에 유옹한 각중 툴 정의
 - Manager 역할과 agent 역할이 호환(설정변경으로 역할을 서로 <-> 교체 가능)

 

 

 

 


 
 • SNMP 프로토콜 버전 별 RFC 문서 :
 http://www.rfc-editor.org/rfc-index.html
  

 • V2 에서는 표준 문서를 프로토콜 동작, 전송 매핑 2가지로 정의


 1) 프로토콜 동작
  - MIB 객체가 SNMP 메시지를 사용하여 실제로 전송하는 방법을 정의

 


 2) 전송 매핑
  - 여러 네트워크 환경에서 실제 전송되는 방법 정의
  가장 흔히 사용하는 전송 매핑 = IP

 

 • 통신 방식


 1) 기본 : 매니저가 요청하면(서버-------> 클라이언트) agent 가 응답
 2) polling 방식
  - 정보를 얻고자 하는 쪽에서 먼저 요청 
  - 기본 통신 방식


 3) 인터럽트 방식(=trap) 

= 문제,이벤트 등의 상황시 반대로 agent가 manager 에게 전달


  - 매니져의 요청이 없더라도 agent 가 정보를 전달
  - 긴급상황 발생 시 trap 을 통해 인터럽트 활성화.

 


  
 • SNMP PDU(=data)


 - 3가지 클래스로 구분
 1) Internal(내부형) : 내부 SNMP통신을 위한 report 메시지 
 2) Confirmed(확인형) : GetRequest, GetNextRequest, GetBulkRequest , SetRequest
 
 3) Unconfirmed(비확인형) :  (v1) (Get)response, Trap, InformRequest(v3)

 


 
 • SNMP 기본 동작


 1) 매니저가 GetRequest 생성.
  - 사용자/프로그램의 요청에 따라서 필요로 하는 정보를 구성
  - 메시지 = 매니저가 원하는 MIB 객체의 이름
  
 2) 매니저에서 GetRequest 메시지 전달 ( 매니저의 랜덤포트로 출발 )
 3) agent 에서 요청 메시지 수신 후 처리. ( agent의 161번 포트에 도착 )
  - 요청 받은 MIB 객체명의 목록이 agent 가 가지고 있는 MIB객체가 맞는지 확인 후 , 변수의 값을 읽어서 처리.
 4) agent 가 Respose 메시지 생성 ( 받은 161번 포트로 응답 전송 )
  - 요청 받은 MIB 객체의 값과 에러 코드를 포함
 5) agent 가 Response 전달 ( 매니저의 랜덤포트로 들어감 )
 6) 매니저에서 Resonse 수신 후 처리


 
 agent 가 발신한 Trap 메시지의 경우는 도착지가 매니저 쪽의 랜덤포트가 아닌 162번 포트로 들어간다.

 

 

 

 

 

 

 

메시지의 종류
 
 • GetNextRequest / GetBulkRequest
  ( 매니저(주서버)가 만들어내서 에이전트(클라이언트)에게 정보 요청하는 메세지 )


 
 1) MIB 객체 테이블이 구성되어 있는 상황에서만 이용 가능.


 2) Next
  - MIB 테이블의 값을 요청할 때 객체 하나씩을 요청하고 응답 하게 되면 비효율적으로 동작하고 트래픽이 낭비됨
  - 매니저는 에어전트의 테이블에 몇 개의 항목이 있는지 알지 못하기 때문에 몇 번 요청해야 할지 정확하게 구분하지 못한다
  - v1 에서 MIB 테이블의 값을 하나의 요청으로 응답받을 때 사용.
  - 매니저는 테이블 변수의 이름과 테이블 내부의 특정 항목의 이름을 포함해서 요청을 전달하며 에어전트는 지정한 객체의 다음 값을 읽어서 GetResponse 로 응답 ( 테이블은 처음부터 만들어져 있다 )
  - 반복해서 동작 하다가 마지막 값까지 반환하고 다음 테이블의 객체 값을 전송하므로 매니저에게 지정된 테이블의 전송이 완료 됐음을 알려주게 된다. -> 네트워크 부하가 생길 수 있다.


  
 3) Bulk
  - Next 의 동작방식 중 응답을 하나씩 받아와서 트래픽이 낭비되는 문제를 해결하기 위해 사용.
  - v2, v3 에서 사용하며, 테이블 또는 일반 객체를 요청했을 때 하나의 응답 메시지로 정보를 전달. -> 네트워크 부하가 줄어든다.
  - 특별 인자
   § 비반복(Non repeater) : 일반 개체
   § 최대 반복(Max repeater) : 테이블 변수의 항목 개수
  - 주의 : Bulk를 이용 하려면 먼저 테이블의 항목 수를 알아야 함
  아니면 여러 번 물어서 모든 항목을 응답 받음.

 

 

 • SetRequest 


  1) 관리자가 수정해야 할 변수와 값을 지정.
  2) 설정 변경은 시스템에 중요한 내용이므로 에이전트는 요청된 설정 변경 메시지를 분석, 확인한 후 요청을 받아 들임
   - 변경할 객체의 객체명 확인
   - 객체의 접근권한 확인
   - 요청 메시지 값의 자료형( IP 는 숫자형이 아니라 자료형이다 ) 등의 크기가 맞는지 확인

 


   
 • Trap  / InformRequest : 통지 , 알림


  1) 인터럽트 클래스의 메시지 
  2) 긴급 상황이 발생한 경우 에이전트에서 매니저 쪽으로 정보를 먼저 전달할 때 사용 하게 된다.
  3) Trap
   - 모든 에이전트가 사용할 수 있는 기본 내장.
   - 설정 된 트랩 조건이 발생하면 trap 기능이 활성화되면서 trap 메시지를 생성 후 전달.
  4) Inform Request
   - 매니저가 다른 매니저로 정보를 전달하기 위해 사용.
   - 매니저 간 정보를 전달하여 전체 네트워크간 에이전트가 전달한 트랩 메시지를 동기화 하는 목적으로 사용

 

 


   
  
 * SNMP 의 보안 문제 / 보안 정책

 

1) v1 의 보안문제
 - 단 하나의 보안 정책/기술만 이용 -> Community String ( 비밀 번호 )
 - 원래 목적은 관리 영역을 묶어주기 위해 사용

 

2) v2 / v3

 1) Party 기반 보안 모델 ( 장비 자체에 고정세팅 )


  - SNMPv2p에서 채택한 보안 모델
  - 특정 인증 프로토콜과 암호화 프로토콜을 미리 정의하는 파티라는 논리적인 실체를 정의
  - 파티에 정의 된 인증 프로토콜에 의해 인증하며 메시지를 전송하는 양 쪽이 같은 암호화 방식을 사용한다는 것을 보장. 

 


  
 2) 사용자 기반 보안 모듈(USM, User-Based Security Model)


  - SNMPv2u 에서 개발되었으며 SNMPv2* 에서도 채택
  - SNMPv3 에서도 채택
  - 장비별로 보안 정책을 수립하지 않고 사용자별로 보안 정책을 수립
  - 다양한 인증 방식과 암호화 프로토콜을 통해 접근권한을 지키고 메시지 보호.
  - 타임스탬프, 클럭 동기화 등의 기술을 사용해서 공격에 대비.

 


  
 3) 뷰 기반 접근 통제 모델(VACM, View-Based Access Control Model)


  - SNMPv3 에서 개발
  - 한 장비의 각종 MIB 객체의 접근 권한을 개별적으로 정밀하게 정의.
  - 뷰 = 특정 상황에서 특정 그룹에 속한 사람들의 접근이 허용된 MIB 객체를 가상의 테이블에 정의 후, 접근을 구별하여 암호화.
  - 뷰를 생성, 통제하므로 관리자는 누가 어떤 정보에 접근할 수 있는지 정의.

 

 

 


  
  
 SNMP PDU
 
 • 일반 PDU형식


 • PDU 제어 필드 - PUD 타입을 설명하며 정보를 한 SNMP에서 다른 SNMP로 전송하는 필드 모음


 • PDU 변수 바인딩 : PDU 내의 MIB 객체 설명 모음이며 각 객체는 이름을 값에 바인딩한 구조
 


 


 SNMPv1 일반 메시지 형식


 버전 번호 = 0 | 커뮤니티 스트링 | PDU 제어 필드           |

= PDU 변수 바인딩        |   ---> 메시지 본문(PDU)
  ㄴ ( 실제 요청 객체의 정보 등이 들어있다 )


 

SMNPv2p 일반 메시지 형식

v1과 흡사

버전 번호 = 1 | 커뮤니티 스트링 | PDU 제어 필드(PDU 변수 바인딩)


 
 Trap 일반 메시지 형식

 

PDU 종류 | 엔터프라이즈(회사명) | 에이전트 주소 | 트랩 일반 코드 | 세부 트랩 코드
  | 타임 스탬프 ( 시간값 확인 )  -  PDU 변수 바인딩 

 

트랩 PDU Type : 특정 상황의 발생을 매니져에게 알린다.


 
 

 v2 형식 ( 커지고, 사장된 클래스풀 방식 )
 
 버전 번호 = 2
 받는 측
 보내는 측
 컨텍스트
 PDU 제어 필드
 PDU 변수 바인딩
 
  

 

 

 

 

 
 
 주로 사용되는 SNMP(NMS) 관리 프로그램

=> 아주 간단하게 말해서, SNMP 라는 규약하에 속한다면, 윈도우즈, 리눅스 어느 시스템이건 간에, SNMP 패키지, 프로그램을 설치하여, 환경설정을 해 주고, 통합 관리 프로그램에서 정상적인 모니터링을 수행할 수 있게 됩니다.


 
 주로 사용되는 기업의 장비
 
 1. 중규모 ( 몇 백대 이하 ) : opmanager
 http://www.manageengine.com/network-monitoring/
 -> 10대까지 무료 , what's up gold, solawinds 등
 
 2. 대기업 : MC, CA(spectrum), HP, IBM 등
 
 3. 기타 : EM7 , 인프라니스 시스마스터(국산), operview
 
 4. 장비별 성능 비교 :
 http://en.wikipedia.org/wiki/Comparison_of_network_monitoring_systems
 
 
 
 
 
 [ 테스트 #01 ]


 http://www.solarwinds.com/network-performance-monitor.aspx
 
 [ test drive demo ] 를 클릭하여 preview 가능.

 
블로그 이미지

늙은M군

개인 저장공간입니다. 해당 일부 과정들을 공인 인터넷 환경에서 악성적으로 응용할 시 피해가 발생할 수 있으며, 그에 대해 책임은 사용자에게 있습니다!! 주의해주세요.

,

Hacking?
컴퓨터 네트워크의 보안 취약점을 찾아내어 그 문제를 해결하고 이를 악의적으로 이용하는 것을 방지하는 행위를 말한다


유래
1950년대 미국의 MIT 동아리 hack에서 유래.


 

Hacking? Cracking?

긍정적인 해킹과 부정적인 해킹으로 구분
악의가 없는 해킹은 그래도 해킹이라고 한다.
악의적인 의도가 있는 시도는 크래킹이라고 한다.

    

해커의 분류

 

v화이트 햇(White hat)

§„착한 사람이라는 뜻으로 악의가 없는 해킹을 말한다. 예) 보안 전문가

 

v블랙 햇(Black hat)

§„악당이라는 뜻으로 정보 삭제, 용카드 도용, 해적판 제작 등 타인에게 피해를 주는 불법적 해킹을 말한다. 크래커와 동의어로 사용됨

 

v그레이 햇(gray hat)

§화이트 햇과 블랙햇을 섞어 놓은 해킹이다. 그레이햇 해커들은 해킹을 한 후 해당 관리자에게 이 사실을 알린다. 해당 취약점을 수정해주는 대가로 실비를 받으려는 속셈이다.

 

v블루 햇(blue hat)

§보안 분야의 베타테스터로 생각하면 된다. 특정 시스템을 본격적으로 구동하기 젂에 버그를 찾아내는 보안 컨설팅 회사를 블루 햇이라고 한다.

 

v아마추어 해커(script kiddie)

§컴퓨터 지식이 부족해 남이 만들어 놓은 프로그램을 이용하여 해킹을 시도하는 사람을 말한다.

 

v핵티비스트(hacktivist)

§해커와 정치운동가를 합성한 용어로 정치, 사회, 종교 등의 메시지를 알리는 것이 주목적인 해커들이다. 이들은 특정 목적을 위해 해당 기관의 시스템을 다운 시키거나 관련 이미지 또는 문구를 홈페이지에 걸어놓는다.

 

 

 

Haking History


태동기 ( 1960 ~ 1970 )
폰 프리킹이라고 하는 1960년대 말에 공짜로 전화를 걸던 히피 대학생으로부터 태동.

 


성장기 ( 1970 ~ 1980 )
컴퓨터의 보급이 확산되고 정보 통신망이 발달하자 많은 폰 프리커들이 해커로 변경됨.
1970년대 후반에 수많은 개인용 컴퓨터가 가정, 학교, 사무실에 보급되면서 컴퓨터 해커들의 활동이 본격화 됨

 


전환기 ( 1980 ~ 1990 )
1980년대 들어오면서 컴퓨터가 널리 보급되고, 해커들의 사회적 비행이 시작.


 

 

탄압기 ( 1990 ~ 2000 )
1990년대 들어서면서 크래커들의 사회적 비행이 국가 안보를 위협하는 존재로 발전하고 정치적 이념을 가진 핵티비스트(hacktivist)들이 등장.

 


발전기 ( 2000 ~  이후 )
2000년대 부터 인터넷이 대중화 되면서 해킹기술이 급속도로 발전

 

 

 

해킹에 사용하는 기술

 

1.취약점 검사

-  시스템에 침투하기 위한 구멍(취약점)을 찾아내는 프로그램 또는 행위


2.비밀번호 크래킹

- 시스템에 저장되어 있는 비밀번호를 알아낸다


3.루트킷

- 피해자가 알아채지 못하게 특정 시스템에 몰래 설치되어 있는 프로그램


4.키로거

- 피해자가 입력한 정보를 로그를 훔친 후 복원하는 기술


5.스푸핑 (패킷 변조)

- 공격자가 자신을 감추고 신뢰성 있는 장치/사람으로 변장하는 것을 뜻한다.

 

6.패킷스니퍼(패킷 가로채기)

- 네트워크를 통해 오가는 데이터 패킷을 가로채는 기술.


7.그 외 트로이 목마, 바이러스, 웜 등..의 사이버 테러도 넓은 의미로 범주에

넣을 수 있다.

 

 

 

 

Hacking Flow 과정 ( 상세 목록은 앞의 로드맵을 참조 )

   Target  -   Information gathering   -  Vulnearabillity Analyze   -   Attack

대상지정

      정보수집       

      정리 분석        

     공격     

 

블로그 이미지

늙은M군

개인 저장공간입니다. 해당 일부 과정들을 공인 인터넷 환경에서 악성적으로 응용할 시 피해가 발생할 수 있으며, 그에 대해 책임은 사용자에게 있습니다!! 주의해주세요.

,

 앞서서 기초해킹 과정에서는 내부단에서 여러가지 과거 해킹기법의 원리와 테스트를 해보았다고 한다면, 네트워크 해킹 파트에서는 이제 본격적으로 GNS3 에서 스위치-라우터를 모의 연결하여 DHCP-NAT-을 거친 외부 인터넷 환경을 구성해 두고, 내부의 사설아이피를 이용하여 내/외부 다양한 네트워크 보안과정을 거치게 됩니다.

CISCO 의 Packet Tracer 이외에 실제의 스위치와 라우터의 os 를 가상화하여 모의환경을 실습하는 유명한 프로그램으로 GNS3 라는 것이 있습니다.

 

 

[ 구성 내용 ]

가상머신들을 GNS3 의 토플로지를 구성하여, 스위치와 라우터에 연결하고, 그 라우터를 외부 인터넷(실제로는 자신의 로컬 컴퓨터의 랜카드가 되겠죠?) 에 연결하여 NAT - DHCP 처리를 거쳐서 최종적으로는 내부의 가상머신들 ( 10.0.0.x/24) 사설 대역대가 인터넷이 가능하도록 설정하는 환경 구성입니다.

 

[ 세팅 준비 ]

앞의 기초해킹과정과 아이피를 좀 다르게 설정할 것입니다.

기초해킹 과정에서는 내부단으로 모두 같은 네트워크 어댑터인 WMnet1을 썼지만

이번에는 스위치와 라우터로 각각 별도의 랜카드 구성을 합니다.

사전에 만들어 두었던 VMnet1 , 2 , 3 으로 각각 설정합니다.

Backtrack R3 - 10.0.0.3 - 네트워크 어댑터 VMnet3

CentOS Linux - 10.0.0.2 - 네트워크 어댑터 VMnet2

Windows XP - 10.0.0.1 - 네트워크 어댑터 VMnet1

Windows NT 2000 - 10.0.0.100 - 네트워크 해킹 과정에서는 거의 쓰지 않습니다.

 

GNS3의 토플로지는 다음과 같이 구성합니다.

( 클릭하면 크게 보입니다 )

 

 

GNS3의 기초 세팅법은 차후에 다루도록 합니다. 

각 머신들은 자신들의 VMnet 1,2,3 을 달고, 스위치에 연결된 상태이며, 구름 모양의

Internet 이라는 부분은 결국 외부 인터넷이 가능한 공인 아이피를 갖고 있는, 현 로컬 컴퓨터의 실제 랜카드 가 되겠습니다.

아무튼, 라인에 우클릭하면 Wireshark가, 장치를 더블클릭하면 SecureCRT 가 자동으로 뜨도록 세팅해주세요.

 

 

 

보시다시피 스위치는 정해진 포트로 뿌려주는 역할을 맡게 되는데, 도달할 지점이

라우터의 FA0/0 부분이지요? 즉, 라우터의 Default Route 설정을, 각 운영체제의 환경설정에서 지정해 주어야, 문제없이 라우터까지 도달할 수 있습니다.

물론 선행으로 라우터 관리자모드에서 해당 인터페이스에 아이피를 지정해 주어야지요.

 

윈도우즈에서는 마찬가지로 ncpa.cpl 로 아이피 설정하는 부분에 게이트웨이 지정이 있습니다.

리눅스에서는 route 명령어로 확인 후, 지정되어 있지 않다면

환경설정 파일에서 GATEWAY= 로 지정해 주시던지, 아니면 직접

route add default gw 10.0.0.254 라고 필히 입력해 주십시오.

 

[ 라우터와 스위치 설정 과정 ]

[1] 토플로지의 스위치는 라우터 기기이다.

= 라우터는 조건을 따지고, 모르는 패킷을 DROP 시켜 버리기 때문에, 저대로 냅두면

옆으로 보내지 못합니다. 조건없이 플러딩 수준으로 낮추기 위해서, 라우팅 기능을 끄면 됩니다.

Switch 더블클릭하여 시큐어CRT 창을 여신 후 글로벌 컨피그(전역 : 관리자모드 )로 갑니다.

다음의 입력으로 라우팅 기능을 꺼주면, 스위치 역할을 임시로나마 하게 됩니다.

no ip routing

 

[2] 라우터의 인터페이스에 아이피 할당.

패스워드는 알아서 나중에 지정하십시오.

설정을 마친 후 꼭 #copy run running-config startup-config 로 설정 내용을 저장해주세요

불러오기 : copy run start

 

라우터의 양 인터페이스 FA 0/0 과 0/1번에 각각 게이트웨이 주소 , DHCP 할당 임대 아이피를 지정해 주어야 합니다. 그래야  내부단 사설 아이피의 핑이 FA 0/0 을 디폴트 게이트웨이로 알고 찾아오겠죠?  라우터에 도착한 패킷이 이제 외부로 나가려면, 공인 NAT 을 거친 DHCP 랜덤 임대 아이피로 변환되어야 하는데, 외부로 나갈 FA 0/1 라인에 DHCP 임대 아이피를 설정하는 것입니다. 그러면 인터넷까지 나갈 수 있겠죠?

 

 

라우터의 fa0/0 에 게이트웨이 주소를 할당하고, 라인을 열어주었습니다.

핑을 넣어서 스위치를 거쳐 내부단에 핑이 도달하는지 확인합시다

처음에 . 으로 핑이 도달하지 않는 이유는 간단합니다.

처음에 테이블에 등록되어 있지 않기 때문이겠지요? 라우터는 학습했습니다!

이제 라우터의 fa0/1 부분을  dhcp 임대아이피를 받아와야 하는데, 굉장히 간단합니다.

이 쪽에서 DHCP 서버를 구성하는 것이 아니라, 그냥 외부에서 받아오는 것이기 때문이지요.

해당 인터페이스에 들어가서 입력해 줍니다. 

 

IP 주소 세팅을 그냥 DHCP 에서 받아오겠다고 선언하시면 끝납니다.

참 위에 그림이 하나 빠졌는데 반드시 인터페이스는 no shutdown 으로 열어주세요.

이제 show ip interface brief ( 줄여서 sh ip int bri 가능합니다 ) 로 확인해 봅시다.

 

알아서  ip를 DHCP 로 따왔음을 볼 수 있습니다.

하지만 여전히 외부로 인터넷을 할 수 없습니다. 핑이 통해도 안 됩니다.

이유는 간단 합니다. DHCP 로 받아온 192.168.31.X 단의 네트워크의 정보가

외부 로컬 실제 랜카드의 테이블 정보에 "없기" 때문입니다.

외부 랜카드가 내부단에서 올라온 새로운 사설 아이피를 알 리가 없죠.

라우터는 모르는 누가 쑤시면 핑까지는 받지만 다음으로 보내지 않고

그냥 "DROP" 해 버리죠? 결국 인터넷이 여전히 안 되게 됩니다.

 

 

해결 방법은 디폴트 스태틱으로 범위를 잡아준 후 NAT 설정으로 라우터가 DHCP 로 받아온 FA 0/1 부분의 아이피를 실제 로컬 랜카드의 네트워크 범위로 잡아주면 해결됩니다.

 

자신의 로컬 환경의 실제 게이트웨이를 확인해 봅니다.

저는 192.168.47.254 군요!

디폴트 스태틱을 설정하여, 내부단의 모든 네트워크를 라우터의 다음 hop인 실제 외부 랜카드의 첫 인터페이스... 즉 실제 외부 게이트웨이까지 연결해 줍니다.

( 일반적인 공유기의 게이트웨이는 호스트가 254지만 VMware 가상 어댑터의 경우는 2번입니다. 나중에 커스텀하실때 참조하세요 )

 

 

이제 NAT 을 설정해야 할 차례입니다.

NAT 을 설정하려면 ACL을 지정해야 합니다. 내부단의 사설 IP 전체가 대상이지요.

그 ACL 로 사설(내부)/공인(외부) 위치를 라우터에게 정확히 알려주면 됩니다.

NAT 의 일반적인 방법은

1. 공인 ip 대역 : pool ( 공유기에서 따온다 ) 이름 설정

2. 변경시켜줄 사설 IP 대역 지정 : ACL 묶기

3. 앞에서 지정한 사설 IP 공인 IP Mapping. (PORT 옵션 : overload)

4. 인터페이스에서 inside / outside 라우터에게 사설/공인 위치를 알려주기

 

입니다만, 지금 우리는 DHCP 임대된 아이피 위에는 랜카드 1개에 할당된 외부 공인아이피 하나만 가지고 있으므로 1번의 경우는 의미가 없습니다. 그래서 생략해도 됩니다.

 

 

 

[ ACL 지정 ]

 

access-list 1 permit 10.0.0.0 0.0.0.255

 

1이라는 넘버의 ACL 영역에 [허용] 합니다. 다음의 네트워크 영역 10.0.0.0 0.0.0.255 를.

 

이란 의미입니다. 뒤의 넷마스크는 서브넷이 아닌 와일드카드 마스크 입니다.

 

간단히 말해서 255.255.255.0 이라는 서브넷 마스크(/24)는 앞의 8/8/8 비트의 네트워크 영역을 "고정" 하고 호스트만 나누는 "네트워크 분리" 를 목적으로 하는 것이고, 와일드카드 마스크는 거꾸로 0.0.0(0~255)의 네트워크단의 영역을 "지정" 하겠다는 의미라고 보시면 되겠습니다.

 

 

다음은 이제 NAT 설정입니다

 

ip nat inside source list 1 interface fa 0/1 overload

=[내부단 안쪽의] [ACL 리스트 넘버 1] 을 라우터의 [인터페이스 FA 0/1] 영역에 NAT 를 걸겠다.

 

 

라는 의미가 됩니다.

중요한건 다 끝났구요. 이제 마지막으로 라우터에게

내부가 어디고, 외부가 어디냐? 를 알려주면 됩니다.

안쪽 / 바깥쪽의 기준은 Router 를 한 가운데에 두고 생각하시면 됩니다

당연히 왼쪽 fa 0/0 은 inside 내부단, dhcp 로 나가는 fa0/1 은 외부단이 되겠죠?

 

설정을 마쳤으면 이제 각 가상서버에서 ping www.google.co.kr 를 때려봅시다.

정상적으로 가지 않는다면, 무언가 잘못된 것!

단, 8.8.8.8 로는 외부 핑이 나가는데, 네임 google.co.kr 로 가지 않는다면, 그것은

자신의 가상머신이 외부의 DNS 서버에 연결되어 있지 않기 때문입니다.

 

윈도우즈 같은 경우는 아이피 설정 밑에 dns 서버 설정이라고 있는데

그곳에서 KT 의 수퍼DNS 인 168.126.63.1 을 입력해 줍니다.

리눅스에서는 /etc/resolve.conf 파일을 열어서

nameserver 168.126.63.1 을 추가해 주면 되겠습니다.

 

이상 끝!

 

ps. 토플로지에서 외부 인터넷 구름(랜카드)이 유선이 아닌, 무선 네트워크일 경우에는 GNS3 토플로지에서 무선 랜카드를 잡으면, 인터넷이 죽어도 안 됩니다. 무선 인터넷 환경에서 구성하시고 싶은 경우에는 Internet 부분의 랜카드를 VMnet8 (NAT) 로 잡으시고, 디폴트 스태틱 설정을 192.168.31.2 ( 게이트웨이 ) 로 잡아주시면 되겠습니다.

 

 

 

 

 

 

블로그 이미지

늙은M군

개인 저장공간입니다. 해당 일부 과정들을 공인 인터넷 환경에서 악성적으로 응용할 시 피해가 발생할 수 있으며, 그에 대해 책임은 사용자에게 있습니다!! 주의해주세요.

,

모의 해킹 전반적인 로드맵

 

기초해킹에 관련된 다양한 정보 수집과, 그 정보를 바탕으로 한 기본적 공격. 그리고 그 과정에서 다양한 경험을 습득할 수 있는 전반적인 흐름입니다.

당장 이해가 어려워도, 코스를 돌고 다시 이 글을 본다면, 거대한 흐름이 조금은 느껴지리라 생각합니다

 

 

1. FootPrinting ( 풋 프린팅 )

- 백과사전 : 해킹 시도 대상의 관련 정보를 수집하는 사전 작업. 침입하기 위한 보안상 취약점, 도메인 이름, IP 주소, 침입 탐지 시스템 설치 여부, 사용자 목록, 시스템의 하드웨어 사양, 사용 중인 네트워크 프로토콜, 인증 메커니즘 등의 정보 수집을 말한다.

 

해킹을 시도하려면, 시도할 대상. 목적지에 대한 정보를 수집해야 합니다.

대상의 서버 OS, 버젼, IP 정보 등을 통해, 해당 버젼에서 취약한 해킹 공격 방법 등의 목적을 수립할 수 있고, 해킹 성공 확률을 높여주게 됩니다.

 

비기술적 정보수집 - Social Engineering ( 사회적, 내부공모, 인맥, 대화 정보수집 )

기술적 정보수집 - Scanning 이라고 정의합니다.

 

 

가장 기초적인 정보수집 - 구글 해킹 기법

공격하고자 하는 서버의 종류/버전/네트워크 DNS 서버명 등을 탐지할 있습니다.

고급 검색 명령어를 통해, 기초적인 보안과정을 거치지 않은 다양한 사이트와 서버들의 정보를 습득할 수 있습니다.

 

해당 DNS 서버의 기본적인 구조 파악

Whois

Dig

Nslookup

 

그외

Zone transfer -> DNS Brute forcing 공격 기법  

 

2-1. 스캐닝 ( Scanning )

 

목표 네트워크에서 "실제로" 동작중인 시스템의

IP,OS,PORT,Service ,Version 등을 탐지하는 과정입니다.

 

  1.Active host scanning - 호스트(IP) 생사 유무를 탐지합니다.

Ping ( hping )

Nmap

Nmap 다용도 정보수집에 활용가능하다.

 

  2. 살아있는 호스트 탐지(Port 열려 있는지 유무) - 접근

 --> Port scanning

TCP Full Connect Scanning

TCP SYN Connect Scanning

TCP FIN Connect Scanning

X-Mas scanning

 

위의 방법은 공격자 직접접근이라 역추적 우려가 있습니다.

그럴 경우, IDLE Scanning 이용합니다.

 

3. Vulnerability Scanning : 취약점 스캐닝

  --> 시스템의 취약점을 찾고 공격합니다.  -

  --> Firewalking

( 방화벽 등의 설치로, 접근이 힘든 경우 )

  1) traceroute

  2) firework

  3) Banner grubbing

 

3. Enumeration ( 목록화, 권한 상승 단계 )

사용자 이름이나, 패스워드, 공유하고 있는 네트워크 자원이나 , 서비스 등을 알아내는 것을 의미.

주로 목적 타겟의 직접적인 연결을 통해 이루어집니다.

상대방의 권한을 습득하고, 원격으로 제어하거나 조작, 설치 등의 행위가 가능합니다.

 

(1). Null session ( Win 2000 이하에 통할 있는 기초적 개념 )

-> NetBios 라는 Windows 의 통신 프로토콜의 보안상 헛점 이용

 

(2). Brute Forcing ( 무차별 대입 ) - Cain & Abel Program

-> Dictionary Attack 등으로 병행.

 

(3). Tunneling ( SSH , HTTP )

-> 침투 후 원격 레지 조작으로 telnet을 위한 원격 service 등의 강제 구동이 필요.

 

SSH - 오리지널 패킷을 방화벽에 터널 뚫어서 다이렉트 연결

암호화된 패킷 직접전달이므로 악성코드 탐지에 걸리지 않습니다.

 

1) Local 터널링 - 피해자의 방화벽 안쪽에 SSH 서버역할을 하는 경유지 설치

공격자가 클라이언트 역할. SSH 서비스의 관리자 권한 요구.

방화벽에서 포트가 열려 있어야 합니다.

 

2) Remote 터널링 - 공격자가 서버역할, 방화벽 내부의 경유지 서버가

클라이언트 역할 -- 리버스 기법이라고 합니다.

( 내부에서 바깥으로 패킷을 내보낸다 )

내부 경유지 서버의 PC 제어해야 하는 선결조건.

( plink 등의 클라이언트측 설치가 필요 )

 

내부의 리버스 클라이언트에 설치하거나, 추후 연결통로를 위해

Backdoor 만들고, 설치하여, 차후 침입을 용이하게 만듭니다.

 

3) Backdoor -> SFX

MS08-014 ( 2003 이전 )

- 원격접속 프로그램류 -> RAT(Remote Administration Tools)

- R-Admin(로컬터널, 피해자 서버역할, 공격자 클라이언트, 피해자의 방화벽 포트 개방 요구) , VNC(리모트 터널류, 리버스 커넥션 기법, 방화벽이 있는 경우, callhome 의해 공격자의 흔적이 피해자의 내부에 남는다)-> Wollf ( 공격자가 웹서버 경유지를 만들어서 그곳에 자신에게 통하는 .txt 파일을 만들어, 피해자가 웹서버로 접속한 경유하도록 만들어, 자신의 정보가 직접 피해자의 서버에 남지않게 한다 )

 

4) 로그정보 지우기 - Covering track

 

 

윈도우즈

  • 감사정책 해제시키기 : secpol.msc
  • 로그 삭제 : eventvwr.msc
  • 감사정책 다시 활성화

 

백도어 은닉화 - ads 영역 ( Meta data - Binary ) - 실제동작 -> 링크

 

NTFS 4, 5 시스템은 ADS 영역이 존재합니다. ( 일반적으로 접근불가 )

용량 영역 검색불가 용량 비할당 영역

[ 일반 디스크 영역 ] [ 접근불가 ads 영역 ]

|----------- 링크 ----------------|

file : file

type 리다이렉트 : ads 영역 링크 가능

start 링크파일로 ads 영역 실행 가능.

ADSspy 등으로 영역 탐지 가능.

 

 

리눅스

  • 감사정책 해제 : syslog 서비스 데몬 비활성화
  • 로그정보 수정/삭제 : /var/log/messages , secure, lastlog
  • history 삭제작업 ( 히스토리 삭제 /dev/null 심볼릭 링크로 연결 )
  • 감사정책 다시 활성화.

 

 

이하의 방법들은 네트워크의 보안이 무력화된 , 또는 없는 상태에서

사용가능한 기법들입니다. 현재의 대부분의 간단한 백신에게도 탐지되는 툴들이 많습니다. 다만 지금까지 방법으로, 해킹의 전반적인 개념과 방식을 이해할 있었다면 훌륭한 기초해킹 과정을 마쳤다고 보시면 되겠습니다.

블로그 이미지

늙은M군

개인 저장공간입니다. 해당 일부 과정들을 공인 인터넷 환경에서 악성적으로 응용할 시 피해가 발생할 수 있으며, 그에 대해 책임은 사용자에게 있습니다!! 주의해주세요.

,

Vmware 의 기본 VMnet1 번 host-only 로 내부단 아이피를 구성한 후라도 언제든지 VMnet8 어댑터로 변경 후 네트워크 재시작 DHCP 할당으로 외부 인터넷을 연결가능합니다.

하지만 그렇게 NAT-DHCP 임대를 받아도 재부팅을 하면 원래의 네트워크 데몬의 환경설정 파일의 상태로 돌아가겠죠.^^

하지만 재부팅마다 초기화되는 네트워크 아이피 지정이나 설정을 환경설정 파일에서 지정하면 편리합니다.

 

백트랙 서버 : 172.16.1.2

CentOS 서버 : 172.16.1.53

winnt 2000 : 172.16.1.100

XP : 172.16.1.1

로 수동 설정해주시고 서로간 내부 Ping 이 통하는지 테스트도 거치시기 바랍니다.

반드시 가상머신 우측 하단의 트레이 아이콘에 네트워크 어댑터에 파워 들어와있는지 확인해 주시구요 ^^

 

[ Backtrack R3 서버의 네트워크 환경설정 ( Ubuntu ) ]

/etc/network/interfaces  를 편집기로 엽니다

첫 랜카드는 보통 eth0 입니다

auto eth0
iface eth0 inet static
address 172.16.1.2
netmask 255.255.255.0

dhcp 설정을 지우고

등의 내부단 아이피로 static 지정하시면 됩니다.

 

 

[ Cent OS 서버의 네트워크 환경설정 ( Redhot ) ]

/etc/sysconfig/network-scripts/ifcfg-eth0 을 편집기로 엽니다.

# Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE]
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=static
HWADDR=00:0c:29:b4:40:9e
IPADDR=172.16.1.53
NETMASK=255.255.255.0

비슷하게 dhcp 를 static 으로 바꿔주고 아이피와 넷마스크를 적으면 됩니다.

브로드캐스트나, IPV6 금지 설정이라던지 다양한 옵션이 많지만, 차후에 심화때 다루도록 합니다.

 

[ Windows 의 네트워크 환경 설정 ]

실행 - ncpa.cpl 입력하여 네트워크 환경 접속.

아이콘 오른쪽 클릭 - 속성 - TCP/IP 프로토콜의 속성 정보에 접속

IP를 직접 지정해 줍니다. 서브넷 마스크는 /24 (255.255.255.0)로 설정.

 

 

윈도우즈는 수동 설정시 기본적으로 바로 적용되지만, DHCP 등의 기타 경우에는

실행 - CMD - ipconfig /release 후 ipconfig /renew 로 다시 받아오시면 됩니다.

( 장치에서 수동으로 아이피 지정하신 경우는 다시 받아오기가 안 됩니다 ^^ )

 

 

리눅스는 설정후 네트워크 데몬 재시작을 잊으면 안 됩니다.

리눅스는 네트워크 뿐이 아닌, 환경설정 후의 데몬 재시작은 공통사항입니다.

service 가 아닌 직접접근 재시작

Backtrack = /etc/init.d/networking restart

Cent OS - /etc/rc.d/init.d/network restart

 

 

 

 

 

 

 

블로그 이미지

늙은M군

개인 저장공간입니다. 해당 일부 과정들을 공인 인터넷 환경에서 악성적으로 응용할 시 피해가 발생할 수 있으며, 그에 대해 책임은 사용자에게 있습니다!! 주의해주세요.

,

다양한 해킹툴을 내장한 백트랙 서버 설치입니다.

공식 및 다운로드 주소 : 

http://www.backtrack-linux.org/

 

 

VMware Station 의 전용 설정이 있습니다. VMware-Tools 라는 것인데요.

이를 설치하여야 풀 사이징 확대 및, 로컬에서 vm내부로 직접 파일 트랜스퍼 기능 등.. 다양한 설정을 지원하게 됩니다.

 

관련 세팅은 

http://www.backtrack-linux.org/wiki/index.php/VMware_Tools

 

에서 참조하실 수 있습니다.

 

 

 

의 페이지에 접속하면 됩니다.

 

다운로드 탭에서 이미지 파일을 다운로드 후,

가상머신 세팅 + 인스톨은 디폴트로 진행하면 됩니다.

 

설치 후 초기 관리자 계정은

ID : root

Pass : toor 입니다.

 

터미널 모드에서 GUI 환경으로 돌입하려면 startx 를 입력하면 됩니다.

 

그래픽모드 접속 후 터미널을 열고, VMtools 를 설치해야 합니다.

 

네트워크 어댑터를 VMnat8 ( NAT ) 으로 바꾸고 dhclient 를 입력하여, 외부 인터넷 연결가능 상태로 잠시 만드십시오. 그리고 커널 업데이트를 합니다.

 

root@bt:~# prepare-kernel-sources

 

업데이트 후 하단 아이콘의 CDROM 을 더블클릭하여 전원을 넣어 주신 후, Vmware station 이 설치된 디렉토리를 찾아가서 linux.iso 파일을 마운트 합니다.

(디폴트 설치경로 : C:\Program Files\VMware\Vmware station\)

 

그리고 다시 백트랙으로 돌아와서 웹 사이트에 적힌 과정을 수행합니다.

 

root@bt:~# mkdir /mnt/cdrom; mount /dev/cdrom  /mnt/cdrom
root@bt:~# cp /mnt/cdrom/VMwareTools-<version>.tar.gz /tmp/
root@bt:~# cd /tmp/
root@bt:~# tar zxpf VMwareTools-<version>.tar.gz
root@bt:~# cd vmware-tools-distrib/
root@bt:~# ./vmware-install.pl

 

 

실행후 묻는 질문은 무조건 엔터로 디폴트 설정하면 됩니다. 다 설치 후 리부트합니다.

재부팅 후 Ctrl + Alt + Enter 눌러서 풀 사이즈 화면이 된다면 설치 성공!

 

 

 

 

 

블로그 이미지

늙은M군

개인 저장공간입니다. 해당 일부 과정들을 공인 인터넷 환경에서 악성적으로 응용할 시 피해가 발생할 수 있으며, 그에 대해 책임은 사용자에게 있습니다!! 주의해주세요.

,

일단 기초해킹 모의환경의 기본 설정에서는

외부 현실의 공유기와 연결되어 인터넷이 되어서는 안됩니다.

내부단의 172.16.1.x ~ 로 시작하는 내부망을 구축할 것입니다.

VMnet 어댑터의 1번 Host-only 를 사용합니다.

( 차후 추가되는 VMnet 들은 DHCP 옵션을 끄십시오 )

모든 가상서버의 네트워크 어댑터는 VMnet1 의 같은 카드를 달아주세요!

 

 

그리고 인터넷이 필요할 때에만 해당 VMnet1 의 네트워크 어댑터를

NAT 의 WMnet 8 번을 선택하여 연결할 것입니다.

같은 설정으로 (DHCP 옵션 반드시 체크 해제 하십시오) WMnet2,3 번도 Add Network.. 해 줍니다.

( 연결후 해당 운영체제에서 네트워크 재시작 후 dhclient 명령으로 자동 아이피 할당받아야 인터넷이 가능합니다 ).

 

 

블로그 이미지

늙은M군

개인 저장공간입니다. 해당 일부 과정들을 공인 인터넷 환경에서 악성적으로 응용할 시 피해가 발생할 수 있으며, 그에 대해 책임은 사용자에게 있습니다!! 주의해주세요.

,