Google Hacking(또는 Google Dorking) 이란 구글 검색의 고급 연산자를 사용하여 웹사이트의 취약하거나 해킹된 페이지를 검색하는 기법임.
악의적인 검색 말고도 고급 자료를 찾기 위해서 구글 검색을 활용하여 찾기도 하며 타 포털사이트보다 결과값이 월등히 우수함.
네이버는 지식인 때문에 종종 이용했지만 요즘은 거의 광고성 유도글이라 이용하지도 않음. 거기다가 돈받고 맛집 광고까지 해주는 블로그로 인해서 맛집 검색도 못 믿겠음.
Google Dorking 을 활용하여 관제 사이트의 개인정보, 웹쉘, 불필요한 파일, 오류 페이지 등을 모니터링해서 찾아내는 방법은 아래와 같음.
좀더 디테일하게 찾고자 한다면 Exploit-DB 사이트의 Google Hacking Database (GHDB) 페이지를 참고하길 바람.
https://www.exploit-db.com/google-hacking-database/
참고로 악의적인 용도로 사용하지 말 것!
( 01 ) 구글 논리 연산자
공백 / and
| / or
+ -> 그 다음에 나오는 단어 반드시 포함
- / not -> 그 다음에 나오는 단어 반드시 제거
() -> 그룹화
"" -> 완전한 문구 포함
. -> 적어도 한 단어를 포함한 모든 단어 검색
* -> 모든 단어 검색
참고로 검색 옵션은 소문자이며 검색문자열 사이에 빈 공간이 없어야 함.
( 02 ) 구글 고급 연산자
intitle -> 페이지 제목 검색 (뒤에 오는 단어나 구 하나만이 연산자의 영향을 받음)
allintitle -> 페이지 제목 검색 (뒤에 오는 모든 단어와 구가 연산자의 영향을 받음)
inurl -> URL 검색 (뒤에 오는 단어나 구 하나만이 연산자의 영향을 받음)
-> URL의 프로토콜 부분(http://)을 검색하지 못함
-> URL에 포함되는 특수문자를 제대로 처리하지 못함
-> 고급 연산자 "site", "filetype"이 "inurl" 보다 URL 내부의 특정 위치를 더 구체적으로 찾을 수 있음
allinurl -> URL 검색 (뒤에 오는 모든 단어와 구가 연산자의 영향을 받음)
-> URL의 프로토콜 부분(http://)을 검색하지 못함
-> URL에 포함되는 특수문자를 제대로 처리하지 못함
-> 고급 연산자 "site", "filetype"이 "inurl" 보다 URL 내부의 특정 위치를 더 구체적으로 찾을 수 있음
intext -> 페이지 내용 검색
site -> 특정 사이트 검색
-> 참고로 구글은 오른쪽에서 왼쪽으로 읽음
filetype -> 특정 종류의 파일 검색
link -> 실제 URL을 링크하고 있는 페이지 검색
inanchor -> 링크 문자열 내에서 검색
cache -> 캐시로 저장된 페이지를 보여줌
참고로 검색 옵션은 소문자이며 검색문자열 사이에 빈 공간이 없어야 함.
( 03 ) 불필요한 파일 및 중요 파일 찾기 -> 가급적이면 조심해서 구글링해야 함 (타관제센터에서 연락올 수 있음)
filetype:asa
filetype:bak -> 백업 파일
* 위험, 사용 X filetype:bat -> MS-DOS 일괄처리 파일
filetype:bin -> 바이너리 파일
filetype:cer -> 보안 인증서
filetype:cf -> 설정이나 스크립트 파일
filetype:cfg -> 설정이나 스크립트 파일
filetype:cgi -> 웹페이지 출력물을 만들 수 있는 실행 스크립트 파일
filetype:conf -> 프로그램에서 사용되는 설정 파일
filetype:config -> 프로그램에서 사용되는 설정 파일
filetype:dat -> 데이터 파일, 어떤 종류의 MPEG에서는 확장자가 DAT로 되어 있는 경우도 있음
filetype:db -> 데이타베이스 파일
filetype:dbf -> dBase 파일, Oracle 8.1.x 테이블공간 파일
filetype:dbi -> Borland, 데이터베이스 탐색 정보
filetype:dbk -> dBase 데이터베이스 백업
* 위험, 사용 X filetype:dll -> Dynamic Link Library
filetype:dmp -> 화면이나 메모리의 덤프 파일
filetype:dsn -> ODBC 데이터 소스
* 위험, 사용 X filetype:exe -> 실행 파일
filetype:inc -> Include 파일 - 어셈블러 언어 또는 Active Server
filetype:inf -> 설치정보 파일
filetype:ini -> 초기화 파일, 환경설정 파일
filetype:log -> 로그 파일
filetype:mdb -> 마이크로소프트 액서스 데이터베이스
filetype:mdf -> 마이크로소프트, MS-SQL Master 데이터베이스 파일
filetype:old -> 백업 파일 들의 일반적인 총칭
filetype:pass
filetype:passwd
filetype:pcf -> mysql 데이터베이스 서버에서 table을 생성하기 위해 테이블에 들어갈 정보를 정의한 구조를 담고 있는 파일
filetype:pkr -> PGP의 공개키 파일
filetype:pl -> Perl 프로그램
filetype:prl -> Perl 스크립트
filetype:pwd
filetype:reg -> 윈도우 레지스트리 파일
filetype:skr -> PGP의 개인키 파일
filetype:sys -> 시스템 파일
filetype:sql -> mysql 데이터베이스 서버에서 table을 생성하기 위해 테이블에 들어갈 정보를 정의한 구조를 담고 있는 파일
filetype:tmp -> 윈도우 임시 파일
filetype:w44 -> dBase 임시 파일
( 04 ) 오류페이지 찾기
inurl:"*.php?*=*.php" intext:"Warning: include" -inurl:.html
intext:"Warning: include" -inurl:.html
intext:"Microsoft OLE DB Provider for SQL Server 오류"
-> 특히 오류 코드 중에 "80040e14" 는 Error Based SQL Injection 취약점 가능성 내포
intext:"java.sql.SQLException:"
( 05 ) 디렉토리 리스팅 찾기
intitle:"index of"
intitle:"Directory of"
intitle:"Directory Listing For"
( 06 ) 관리자 페이지 찾기
intitle:관리자 inurl:/admin
intitle:관리자 intext:"로그인"
( 07 ) 페이지 변조 찾기
intext:"hacked by"
intext:"해커 ID"
-> zone-h 에서 주로 올라오는 해커 ID로 검색
( 08 ) 이력서 찾기
intitle:이력서 "010-"
intitle:이력서 "011-"
( 09 ) 웹쉘 찾기
.jpg.php | .jpg.asp | .jpg.jsp <---> .php.jpg | .asp.jpg | .jsp.jpg
.gif.php | .gif.asp | .gif.jsp <---> .php.gif | .asp.gif | .jsp.gif
.png.php | .png.asp | .png.jsp <---> .php.png | .asp.png | .jsp.png
.bmp.php | .bmp.asp | .bmp.jsp <---> .php.bmp | .asp.bmp | .jsp.bmp
.php.txt | .asp.txt | .jsp.txt <---> .php.txt | .asp.txt | .jsp.txt
.php;*.jpg | .asp;*.jpg | .jsp;*.jpg
.php;*.gif | .asp;*.gif | .jsp;*.gif
.php;*.png | .asp;*.png | .jsp;*.png
.php;*.bmp | .asp;*.bmp | .jsp;*.bmp
.php;*.txt | .asp;*.txt | .jsp;*.txt
.php | .asp | .jsp
intext:execute filetype:php
intext:command filetype:php
intitle:r57shell
-> r57shell 찾기
intite:c99shell
-> c99shell 찾기
intext:shell.php
"첨부파일 download=*.php"
"첨부파일 download=*.asp"
"첨부파일 download=*.jsp"
"첨부파일 filename=*.php"
"첨부파일 filename=*.asp"
"첨부파일 filename=*.jsp"
( 10 ) 주요 정보 찾기
inurl:config.php
inurl:config.asp
inurl:config.jsp
inurl:config
inurl:fckeditor
inurl:editor
inurl:"upload.cfm | upload.asp | upload.php | upload.cgi | upload.jsp | upload.pl"
intitle:intranet
-> 인트라넷 전용 시스템의 로그인창 찾기
"access denied for user" "using password"
-> 에러메세지를 검색하여 ID, PW 등의 주요 정보와 SQL 삽입공격이 가능한 곳 찾기
intitle:"AppServ Open Project *" "AppServ is a merging open source software installer package" -phpbb
-> phpmyadmin 취약한 링크 정보와 pnpinfo 정보 찾기
inurl:dbconn.inc
inurl:connect.inc
inurl:globals.inc
intext:mysql_connect filetype:inc
password filetype:sql
pubring filetype:pkr
secring filetype:skr
createobject sa filetype:bak
inurl:"htaccess | passwd | shadow | htusers" filetype:bak
intext:"username | password | email" filetype:"hwp | doc | ppt | xls | pdf"
inurl:secring filetype:"skr | pgp | bak"
intext:mysqlconnect+pass
-> mysql 비밀번호 찾기
intext:mysql_connect+pass
-> mysql 비밀번호 찾기
intext:대외비 filetype:"hwp | doc | ppt | xls | pdf"
-> 대외비 검색
intext:confidential filetype:"hwp | doc | ppt | xls | pdf"
-> 비밀문서 검색
intitle:"Apache Status"
-> Apache Server Status 검색
intitle:"Apache Server Status for"
-> Apache Server Status 검색
============================================================
본 게시물은 KOROMOON 님께서 작성하였으며 CCL (Creative Commons License) 에서 "저작자표시-비영리-동일조건변경허락" 이용조건으로 자료를 이용하셔야 합니다.
댓글 없음:
댓글 쓰기