본문 바로가기

Learning/└◆Metasploit

metasploit 13. 메타스플로잇 업데이트(msfupdate CMD)

[실습] 메타스플로잇 업데이트(msfupdate CMD)

 

이 작업은 진행하지 않는다. -> 시간이 오래 걸린다.

만약 이 작업을 진행한다면 OS snapshot을 뜨고 작업한다.-> 나중에 에러 생기는 경우를 대비한다.

(업데이트 하다가 문제가 발생경우가 많이 있다.)

msfupdate 명령어를 통해 업데이트 하는 경우 metasploit-framework 관련 된 파일이 not found 에러메세지를

발생하면서 실행이 되지 않는다면 아래와 같은 절차를 통해 업데이트가 가능하다.

 

(20160106: KaliLinux 2.0 - kali scna repository 사용하는 경우)

() 미러 사이트 확인

# curl sI http://http.kali.org/README

() /etc/apt/sources.list 파일에 미러 사이트 추가

# vi /etc/apt/sources.list

deb http://kali.mirror.garr.it/mirrors/kali sana main non-free contrib

deb-src http://kali.mirror.garr.it/mirrors/kali sana main non-free contrib

() 다시 업데이트# apt-get update# msfupdate

(20160106: kaliLinux 2.0 - kali rolling repository 사용하는 경우)

# apt-get update# msfupdate-> 20분정도의 업데이트 시간이 걸린다.

 

 

KaliLinux 2.0 kali scna repository 사용하는 경우의 에러 해결 문서이다.

 

MSF 업데이트 작업

 

외부 통신이 가능한지 확인

# nslookup www.daum.net

Server: 168.126.63.1

Address: 168.126.63.1#53

 

Non-authoritative answer:

www.daum.net canonical name = www.g.daum.net.

Name: www.g.daum.net

Address: 117.52.2.238

Name: www.g.daum.net

Address: 117.52.2.237

 

KaliLinux 2.0 버전의 초기 버전을 사용하는 경우 미러사이트 확인

만약 초기버전을 사용하고 있다면 http.kali.org 사이트에서 제공하는 Metadata 파일안에 Metasploit-framework 패키지에 관련된 부분이 존재하지 않는다.

따라서, msfupdate 명령어를 수행하면 file not found 에러메세지를 출력하고 업데이트가 되지 않는다.

이 문제는 "# apt-get update ; apt-get upgrade" 작업을 하는 경우에도 문제가 발생이 된다.

20160106일 현재 해결하는 방법은 이 문제가 해결된 미러 사이트를 지정하여

msfupdate 명령어를 수행하거나 또는 apt-get upgrade 명령어를 수행하는 방법이다.

 

# curl -sI http://http.kali.org/README

HTTP/1.1 302 Found

Date: Fri, 08 Jan 2016 16:58:18 GMT

Server: Apache/2.4.10 (Debian)

X-MirrorBrain-Mirror: kali.mirror.garr.it

X-MirrorBrain-Realm: other

Link: <http://http.kali.org/README.meta4>; rel=describedby; type="application/metalink4+xml"

Link: <http://kali.mirror.garr.it/mirrors/kali/README>; rel=duplicate; pri=1; geo=it

Link: <http://archive-3.kali.org/kali/README>; rel=duplicate; pri=2; geo=de

Link: <http://ftp.halifax.rwth-aachen.de/kali/README>; rel=duplicate; pri=3; geo=de

Link: <http://ftp.belnet.be/kali/kali/README>; rel=duplicate; pri=4; geo=be

Link: <http://ftp2.nluug.nl/os/Linux/distr/kali/README>; rel=duplicate; pri=5; geo=nl

Location: http://kali.mirror.garr.it/mirrors/kali/README

Content-Type: text/html; charset=iso-8859-1

-> kali.mirror.garr.it 사이트는 이 문제가 해결되어 있다는 정보를 인터넷에서 확인했다.

-> 따라서, kali.mirror.garr.it 사이트에서는 metasploit-framework 업데이트 파일을 제공한다.

 

미러사이트 APT Repository 목록에 추가

# vi /etc/apt/sources.list

#

 

# deb cdrom:[Debian GNU/Linux 2.0 _Sana_ - Official Snapshot i386 LIVE/INSTALL Binary 20150811-09:06]/ sana contrib main non-free

 

#deb cdrom:[Debian GNU/Linux 2.0 _Sana_ - Official Snapshot i386 LIVE/INSTALL Binary 20150811-09:06]/ sana contrib main non-free

 

deb http://http.kali.org/kali sana main non-free contrib

deb-src http://http.kali.org/kali sana main non-free contrib

 

deb http://security.kali.org/kali-security/ sana/updates main contrib non-free

deb-src http://security.kali.org/kali-security/ sana/updates main contrib non-free

 

deb http://kali.mirror.garr.it/mirrors/kali sana main non-free contrib

deb-src http://kali.mirror.garr.it/mirrors/kali sana main non-free contrib

-> 위 파란색 부분의 내용을 sources.list 파일에 추가한다.

 

msfupdate 명령어 수행

# apt-get update

-> 출력 내용 생략

-> 에러메세지는 발생되지 않는다.

 

(업데이트 내용이 없는 경우의 출력 내용)

# msfupdate ( # dpkg -l | grep metasploit / # apt-get install metasploit-framework )

[*]

[*] Attempting to update the Metasploit Framework...

[*]

 

[*] Checking for updates via the APT repository

[*] Note: expect weekly(ish) updates using this method

[*] No updates available

-> 최신 업데이트가 미리 되어 있는 상태이기 때문에 업데이트할 내용이 없다.

-> 에러메세지는 발생되지 않는다.

 

(업데이트 되는 경우의 출력 내용)

# msfupdate

[*]

[*] Attempting to update the Metasploit Framework...

[*]

 

[*] Checking for updates via the APT repository

[*] Note: expect weekly(ish) updates using this method

[*] Updating to version 4.9.3-2014071601-1kali2

패키지 목록을 읽는 중입니다... 완료

의존성 트리를 만드는 중입니다

상태 정보를 읽는 중입니다... 완료

다음 패키지를 업그레이드할 것입니다:

metasploit metasploit-framework

2개 업그레이드, 0개 새로 설치, 0개 제거 및 110개 업그레이드 안 함.

249 M바이트 아카이브를 받아야 합니다.

이 작업 후 5,627 k바이트의 디스크 공간을 더 사용하게 됩니다.

받기:1 http://http.kali.org/kali/ kali/main metasploit-framework i386 4.9.3-2014071601-1kali2 [68.4 MB]

받기:2 http://http.kali.org/kali/ kali/non-free metasploit i386 4.9.3-2014071601-1kali2 [180 MB]

내려받기 249 M바이트, 소요시간 348(1,086 k바이트/)

Reading changelogs... Done

(데이터베이스 읽는중 ...현재 337773개의 파일과 디렉터리가 설치되어 있습니다.)

metasploit-framework 4.9.2-2014052101-1kali1 패키지를 대체할 준비하는 중입니다

(.../metasploit-framework_4.9.3-2014071601-1kali2_i386.deb 사용) ...

대체되는 metasploit-framework 패키지를 푸는 중입니다 ...

metasploit 4.9.2-2014052101-1kali1 패키지를 대체할 준비하는 중입니다

(.../metasploit_4.9.3-2014071601-1kali2_i386.deb 사용) ...

[ ok ] Stopping Metasploit worker: worker.

[ ok ] Stopping Metasploit web server: thin.

[ ok ] Stopping Metasploit rpc server: prosvc.

'/usr/bin/msfbinscan/usr/bin/msfbinscan.framework()로 전환, metasploit 패키지'에서 나갑니다

'/usr/bin/msfcli/usr/bin/msfcli.framework()로 전환, metasploit 패키지'에서 나갑니다

'/usr/bin/msfconsole/usr/bin/msfconsole.framework()로 전환, metasploit 패키지'에서 나갑니다

'/usr/bin/msfd/usr/bin/msfd.framework()로 전환, metasploit 패키지'에서 나갑니다

'/usr/bin/msfelfscan/usr/bin/msfelfscan.framework()로 전환, metasploit 패키지'에서 나갑니다

'/usr/bin/msfencode/usr/bin/msfencode.framework()로 전환, metasploit 패키지'에서 나갑니다

'/usr/bin/msfmachscan/usr/bin/msfmachscan.framework()로 전환, metasploit 패키지'에서 나갑니다

'/usr/bin/msfpayload/usr/bin/msfpayload.framework()로 전환, metasploit 패키지'에서 나갑니다

'/usr/bin/msfpescan/usr/bin/msfpescan.framework()로 전환, metasploit 패키지'에서 나갑니다

'/usr/bin/msfrop/usr/bin/msfrop.framework()로 전환, metasploit 패키지'에서 나갑니다

'/usr/bin/msfrpc/usr/bin/msfrpc.framework()로 전환, metasploit 패키지'에서 나갑니다

'/usr/bin/msfrpcd/usr/bin/msfrpcd.framework()로 전환, metasploit 패키지'에서 나갑니다

'/usr/bin/msfupdate/usr/bin/msfupdate.framework()로 전환, metasploit 패키지'에서 나갑니다

'/usr/bin/msfvenom/usr/bin/msfvenom.framework()로 전환, metasploit 패키지'에서 나갑니다

대체되는 metasploit 패키지를 푸는 중입니다 ...

metasploit-framework (4.9.3-2014071601-1kali2) 설정하는 중입니다 ...

metasploit (4.9.3-2014071601-1kali2) 설정하는 중입니다 ...

insserv: warning: current start runlevel(s) (empty) of script `metasploit' overrides LSB defaults (2 3 4 5).

insserv: warning: current stop runlevel(s) (0 1 2 3 4 5 6) of script `metasploit' overrides LSB defaults (0 1 6).

[ ok ] Starting PostgreSQL 9.1 database server: main.

[ ok ] Starting Metasploit rpc server: prosvc.

[ ok ] Starting Metasploit web server: thin.

[ ok ] Starting Metasploit worker: worker.

-> 위와 비슷한 내용이 출력된다.

-> 에러메세지는 출력되는지를 반드시 확인한다.