google hacking

21
구구 구구 ( 구구구구 구구 ) 12 구 구 구구구구 구구구 E-mail : [email protected] Writing by Ilsun Choi 1

Upload: ilsun-choi

Post on 10-Aug-2015

101 views

Category:

Technology


8 download

TRANSCRIPT

Page 1: Google Hacking

Writing by Ilsun Choi 1

구글 해킹( 검색엔진 악용 )

12 차 웹 모의해킹최일선

E-mail : [email protected]

Page 2: Google Hacking

Writing by Ilsun Choi 2

Index

1. 검색 엔진 악용 개요

2. 구글 검색 목록

3. 구글 검색 키워드

4. 모의실습• 1) 구글 해킹 키워드 검색• 2) 구글 해킹 키워드 자동검색• 3) 구글 해킹 키워드 검색 툴 제작

5. 대책

E-mail : [email protected]

Page 3: Google Hacking

Writing by Ilsun Choi 3

1. 검색 엔진 악용 개요 인터넷상에서 방대한 자료들 중 정보를 쉽게 찾을 수 있도록 도와주는 소프트웨어

검색 기능을 악용한 개인정보 및 다양한 기업정보 등이 무방비로 노출됨

E-mail : [email protected]

Page 4: Google Hacking

Writing by Ilsun Choi 4

2. 구글 검색 목록 [1/2] http://hackersforcharity.org/ghdb/

구글 해킹 저자의 사이트

E-mail : [email protected]

분류 내용

Advisories and Vulnerabilities 보안권고사이트 등에서 제공된 정보를 찾는 등의 취약한 서버를 검색

Error Messages 에러 메시지를 검색

File containing juicy info 사용자계정과 암호가 아닌 중요한 정보를 검색

Files containing passwords 사용자 비밀번호를 검색

Files containing usernames 사용자 비밀번호를 검색

Footholds 해킹을 위한 다양한 정보를 검색

Pages containing login portals 다양한 서비스의 로그인 페이지를 검색

Pages containing network or vulnerability data

방화벽 로그 , 팟 로그 , 네트워크 정보 , IDS 로그 등 네트워크 또는 취약한 데이터 검색

Sensitive Directories 민감한 디렉터리 검색

Sensitive Online Devices 프린터 , 비디오카메라 등 모든 종류의 장치를 검색

Vulnerable Files 특정 취약한 파일을 검색

Vulnerable Servers 특정 취약한 서버를 검색

Web Server Detection 웹 서버 및 버전정보를 검색

Page 5: Google Hacking

Writing by Ilsun Choi 5

2. 구글 검색 목록 [2/2] https://www.exploit-db.com/google-hacking-database/

취약한 웹 페이지 검색 등록

최신 정보를 확인할 수 있음

E-mail : [email protected]

Page 6: Google Hacking

Writing by Ilsun Choi 6

3. 구글 검색 키워드 [1/3] 구글검색에 사용되는 연산자는 다양하며 , 자주 사용되는 연산자는 아래 표와 같다 .

E-mail : [email protected]

고급연산자 내용

Intitile 페이지 제목에서 검색(intitle 뒤에 오는 단어나 구 하나만이 연산자의 영향을 받음 )( 예 ) intitle:index of페이지 제목에 “ index” 이 포함되어 있고 페이지 제목 및 내용 등 모든 부분에 of 가 포함되어 있는 페이지를 검색한다 .

Allintitle 페이지 제목에서 검색한다 .(allintitle 뒤에 오는 모든 단어와 구가 연산자의 영향을 받음 )( 예 ) allintitle:index of페이지 제목에 “ index of” 이 포함되어 있는 페이지를 검색한다 .

Inurl URL 에서 문자열을 검색한다 .( 예 ) inurl:admin memberURL 에 “ admin” 이 포함되어 있고 문서의 제목 및 내용 등 모든 부분에 “ member” 가 포함되어 있는 페이지 검색한다 .

Allinurl URL 에서 문자열을 검색한다 .( 에 )allinurl:admin memberURL 에 “ admin” 와 ” member” 이 포함되어 있는 페이지를 검색한다 .

Filetype 특정 종류의 파일을 검색한다 .( 예 ) filetype:hwp확장자가 “ hwp” 인 파일을 검색한다 .

Intext 페이지 본문에서 문자열을 검색한다 .(intext 뒤에 오는 단어나 구 하나만이 연산자의 영향을 받음 )( 예 ) intext:test페이지 내용에 “ test” 라는 문자열을 포함하는 페이지를 검색한다 .

Page 7: Google Hacking

Writing by Ilsun Choi 7

3. 구글 검색 키워드 [2/3]

E-mail : [email protected]

고급연산자 내용

Allintext 페이지 본문에서 문자열을 검색한다 .(allintext 뒤에 오는 모든 단어와 구가 연산자의 영향을 받음 )( 예 ) allintext: test search페이지 내용에 “ test”, “search” 라는 문자열을 포함하는 페이지를 검색한다 .

Site 특정 사이트로 검색 범위를 제한한다 .( 구글은 오른쪽에서 왼쪽으로 읽음 )( 예 ) site:”cafe.naver.com/sec””cafe.naver.com/sec” 라는 지정한 사이트로 한정하여 검색한다 .

Link 페이지로의 링크를 검색한다 .( 예 ) link:cafe.naver.com/sec“cafe.naver.com/sec” 로 링크되고 있는 페이지 검색한다 .

Inanachor 링크 문자열 내에서 검색한다 .( 예 ) inanchor:cafe.naver.com/sec“cafe.naver.com/sec” 을 포함하고 있는 페이지를 검색한다 .

Daterange 특정 날짜 사이에 배포된 페이지를 검색한다 .( 두 날짜를 대시 “ -“ 기호로 연결된 값을 인자로 받아들임 )( 예 ) daterange:2452164-2452164 “osama bin laden”2452164 는 율리우스력으로 2001 년 9 월 11 일이 된다 . 2001 년 9 월 11 일에 발간되었고 “ osama bin laden” 이 포함된 페이지를 검색한다 .

Numrange 숫자 범위를 검색한다 .(“-“ 기호로 연결된 작은 숫자와 큰 숫자를 인자로 받아들임 )( 예 ) numrange:12344-1234612344 에서 12346 사이의 숫자를 포함하는 페이지를 검색한다 .

Page 8: Google Hacking

Writing by Ilsun Choi 8

3. 구글 검색 키워드 [3/3]

E-mail : [email protected]

고급연산자 내용

Cache 캐시로 저장된 페이지를 검색한다 .( 인자값으로는 완전한 URL 이나 호스트이름을 입력 )( 예 ) cache:www.xxx.xxx캐시로 저장된 www.xxx.xxx 페이지를 검색한다 .

Info 사이트에 대한 요약 정보를 출력하며 사이트와 관련된 다른 구글 검색으로의 링크를 제공한다 .( 인자값으로 완벽한 URL 이나 호스트 이름을 입력 )( 예 ) info:www.xxx.xxx“www.xxx.xxx” 와 링크 또는 연관된 사이트를 검색한다 .

Related 특정 사이트와 관련되어 있다고 판단되는 사이트를 출력한다 .( 인자값으로 유효한 사이트 이름이나 URL 을 입력 )( 예 ) related:www.xxx.xxxwww.xxx.xxx와 링크 또는 연관된 사이트를 검색한다 .

Author 뉴스그룹 게시물의 작성자를 검색한다 .( 인자값으로 이름이나 메일 주소를 입력 )( 예 ) author:Anonymous뉴스그룹 게시물 작성자가 “ Anonymous” 인 것을 검색한다 .( 구를 검색할 때 Double Quater(“) 를 사용하지 않고 Dot(.) 을 사용한다 )

Group 뉴스그룹 이름을 검색한다 .( 예 ) group:hacker뉴스그룹 이름에서 “ hacker” 이 페이지를 검색한다 .

Insubject 뉴스그룹 게시물의 주제를 검색한다 .(intitle 연산자와 동일한 정보를 검색해 준다 )( 예 ) intitle:Hacking페이지 제목이 “ Hacking” 인 페이지를 검색한다 .

Define 용어의 정의를 검색한다 .( 예 ) define:hacker“hacker” 의 정의를 검색한다 .

Page 9: Google Hacking

Writing by Ilsun Choi 9

4. 모의실습 > 1) 구글 해킹 키워드 검색 [1/2]

I. 디렉터리 노출 검색intitle:index.of "parent directory" inurl:admin

admin 대신에 member, backup 사용 가능

E-mail : [email protected]

Page 10: Google Hacking

Writing by Ilsun Choi 10

4. 모의실습 > 1) 구글 해킹 키워드 검색 [2/2]

II. 특정파일 검색 ( 로그 , 백업 , 소스코드 등 )

E-mail : [email protected]

확장자 설명bak 백업파일cgi cgi 스크립트 파일log 로그파일mdb 마이크로소프트 액세스 데이터베이스mdf 마이크로소프트 , MS-SQL Master 데이터베이스 파일

요청문 작성 예

intitle:index.of bakintitle:index.of php.bakintitle:index.of admin.phpintitle:index.of passwdintitle:index.of .bash_historyintitle:index.of htpasswdintitle:”index of” .sh_historyintitle:”index of” master.passwdintitle:inc intext:mysql_connect

Page 11: Google Hacking

Writing by Ilsun Choi 11

4. 모의실습 > 2) 구글 해킹 키워드 자동검색 [1/3]

SiteDigger : 구글검색 자동화 툴

다운로드 : http://www.mcafee.com/kr/downloads/free-tools/sitedigger.aspx

관련메뉴

E-mail : [email protected]

구성요소 설명

FSDB 및 GHDB 검색패턴을 선택하는 부분으로 , 전체 혹은 특정 키워드만 선택하여 검색할 수 있다 .

Site/Domain 검색 범위를 제한하기 위해 해당 사이트 및 도메인을 입력한다 .

( 단 , 도메인을 입력하지 않을 경우 모든 도메인을 대상으로 검색 )

( 예 ) www.xxx.co.kr, xxx.co.kr, co.kr

Queries Scanned 및 Selected Entry Info

쿼리 스캔의 과정 및 선택 옵션에 관한 설명을 출력한다 .

Results 검색 결과를 출력한다 . 검색 결과를 더블 클릭할 시 웹 브라우저에 링크로 연결되어 해당 웹 페이지를 볼 수 있다 .

Page 12: Google Hacking

Writing by Ilsun Choi 12

4. 모의실습 > 2) 구글 해킹 키워드 자동검색 [2/3]

SiteDigger : 사용 예 ( 백업파일 , 대상사이트 : cafe.naver.com/sec) FSDB : Backup Files Site : cafe.naver.com/sec

E-mail : [email protected]

Page 13: Google Hacking

Writing by Ilsun Choi 13

패턴 저장 경로 : C:\Program Files (x86)\Foundstone Free Tools\SiteDigger v3.0\

패턴 저장 파일 : fsdb.xml, ghdb.xml

E-mail : [email protected]

4. 모의실습 > 2) 구글 해킹 키워드 자동검색 [3/3]

Page 14: Google Hacking

Writing by Ilsun Choi 14

4. 모의실습 > 3) 구글 해킹 키워드 검색 툴 제작 [1/4]

검색 프로그램 흐름 ( 웹 모의해킹 및 시큐어코딩 진단가이드 p417)

E-mail : [email protected]

PAT-TERN

1

2

3

4

5사이트 입력

패턴 로드

질의

응답 (JSON 파일 )

결과 정리 및 출력

Page 15: Google Hacking

Writing by Ilsun Choi 15

4. 모의실습 > 3) 구글 해킹 키워드 검색 툴 제작 [2/4]

질의 구성 방식

조합된 쿼리

E-mail : [email protected]

google API Link site:co.kr intitle:index.of

사용자 입력

LoadPat-ternFile

http://ajax.googleapis.com/ajax/services/search/web?v=1.0&rsz=large&start=0&h1=ko&newwindow=1&q=site:co.kr+intitle:index.of

Page 16: Google Hacking

Writing by Ilsun Choi 16

4. 모의실습 > 3) 구글 해킹 키워드 검색 툴 제작 [3/4]

JSON Python Dictionary 와 같은 구조

E-mail : [email protected]

Page 17: Google Hacking

Writing by Ilsun Choi 17

4. 모의실습 > 3) 구글 해킹 키워드 검색 툴 제작 [4/4]

Python Dictionary key 를 사용하여 value 를 인덱스 고유한 성질을 가진 key:value 쌍

데이터 접근 방법

E-mail : [email protected]

Page 18: Google Hacking

Writing by Ilsun Choi 18

5. 대책 [1/3] 인터넷 검색엔진배제표준

검색엔진에 중요정보가 노출되는 것을 방지 로봇 제한 기준 (standard for robot exclusion) 파일 robots.txt 를 통해 검색엔진을 제한 최상위 디렉터리 (/) 에 생성

백안관 robots.txt

E-mail : [email protected]

Page 19: Google Hacking

Writing by Ilsun Choi 19

5. 대책 [2/3] 항목별 설명

E-mail : [email protected]

주요 항목 설명

User-Agent : [ 검색엔진이름 ] 검색 엔진 유형* : 모든 검색엔진Googlebot : 구글봇이라는 특정검색엔진( 검색엔진이름은 http://www.robotstxt.org/db.html에서 확인 )

Disallow : [ 디렉터리이름 ] 검색을 허용하지 않을 디렉터리 명시공백 : 모든 디렉터리 허용/ : 모든 디렉터리 금지/admin: admin 디렉터리 금지

http://www.robotstxt.org/db.html

Page 20: Google Hacking

Writing by Ilsun Choi 20

5. 대책 [3/3] 웹 소스의 <head> 내부에 위치시켜야 함

기타 자세한 내용은 http://www.robotstxt.org를 참고

E-mail : [email protected]

Page 21: Google Hacking

참고문헌 웹 모의해킹 및 시큐어코딩 진단 가이드 , 최경철 외 1 명 지음

E-mail : [email protected] Writing by Ilsun Choi 21