본문으로 바로가기
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

1. 패스워드 크래킹


5)패스워드 크래킹 방법론


▣ 레인보우 테이블 (Rainbow Table) 공격


- 레인보우 테이블은 최초 패스워드마지막 해시 값으로 생성

- 내가 훔쳐온 해시값이랑 해당 해시(BFE4D570E9301V)랑 같다해서 패스워드가 123456은 아님.

- 대신 그 과정속에는 반드시 패스워드가 있음.


▣ 레인보우 테이블로 패스워드 찾기


- 해시 값 "87XCVB48CVB6S6"의 패스워드를 찾아보자

① Rainbow Table에 존재 하지 않음

② 87XCVB48CVB6S6를 R함수에 적용.

☞ 결과 : 874866

☞ 결과 874866 을 다시 MD5 적용

☞ 결과 : D4353281BA01F

③ Rainbow Table에 존재한다 해서 87XCVB48CVB6S6에 해당하는 패스워드가 874866은 아님.

☞ 과정 속에 존재한다는 뜻.

④ Rainbow Table에 존재시 초기 패스워드 값으로 MD5->R함수 체인 반복으로 찾고자하는 해시값의 패스워드를 찾을 수 있음.

87XCVB48CVB6S6에 해당하는 패스워드 : 541921


Q. 체인 2000개 사용하는 해시 값을 10000개 저장하고 있다면?

A. 2000 * 10000 개의 패스워드를 확인 가능함.


▣ 레인보우 테이블 생성

- 다운로드 : winrtgen.exe - www.oxid.it/projects.html


- Hash : 해시 함수 종류

- Min Len ~ Max Len : 패스워드 길이

- Chain Len : R 함수의 길이

- Chain Count : 체인의 수

☞ 큰 수 : 파일크기 ↑, 크랙하는데 걸리는 시간 ↓ 

☞ 작은 수 : 파일크기 ↓, 크랙하는데 걸리는 시간 ↑ 

- N of tables : 테이블 수


▣ 레인보우 테이블 다운로드

- 구글에서 rainbow table download를 치면 여러 사이트가 나오며 그 중에서 다운로드 받을 수 있음.


▣ 패스워드 크래킹 종류

(1) OS(운영체제) 계정

- 윈도우 7 / 윈도우 xp

- 리눅스

- MAC

(2) 특정 서비스

- FTP

- TELNET

- SSH

- HTTP


▣ 패스워드 크래킹 실습


(1) OS 계정 - 윈도우 7

- 카인과 아벨(Cain and Abel) 종합해킹 툴 사용.

- Rainbow Table 공격


- window 7 은 NTLM Hash 를 사용.

- 파란색 + 버튼을 눌러 local system에서 계정들을 불러옴.


- 크랙할 계정들을 선택 후 위의 선택 사항들을 눌러준 후 add table을 선택 후 만들어 뒀던 레인보우 테이블을 이용하여 크랙함.


(2) OS 계정 - 리눅스

- 존 더 리퍼(John the Ripper) 툴 사용 : /etc/shadow 파일을 해석해 줌. (shadow 파일만 입수가능하다면 해킹 가능)

- 사전 대입 공격


- 명령어 순서

wget http://openwall.com/john/j/john-1.8.0.tar.gz       -> john the ripper 툴을 인터넷이서 다운.

tar zxvf john-1.8.0.tar.gz                               -> 원하는 디렉토리에 압축해제.

cd john-1.8.0

cd src

make                                      -> 3줄의 make 명령어는 현재 리눅스 버전에 맞게끔 알아서 setting 해줌.

make clean SYSTEM                        -> 리눅스 버전은 여러개가 존재하는데 그 버전에 맞게 일일이 툴을 만들 수는 없으니 설정으로 해결.

make clean generic

cd ../run

./john --test

./john /etc/shadow


- 결과 화면


(3) 특정서비스 - FTP

- Unsecure v1.2 툴 사용

- 사전 대입 공격,  Brute Force attack 도 가능은 하나 시간이 너무 걸림.

- ID를 미리 알고 있어야 사용가능.









i2sec 대구지점 23기 수료생.

'해킹&보안 > 시스템해킹&보안' 카테고리의 다른 글

쉘 프로그래밍  (0) 2017.03.16
[D+5] Backdoor (백도어) (2)  (0) 2017.03.08
[D+4] Backdoor (백도어) (1)  (0) 2017.03.07
[D+3] Setuid (권한상승)  (0) 2017.03.06
[D+1] 패스워드 크래킹 (1)  (0) 2017.03.02