모의 해킹 전반적인 로드맵

 

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

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

 

 

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군

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

,