검색엔진은 우리가 보는 것보다 훨씬 더 많은 일을 뒤에서 진행하고 있다.
1. Crawler
Crawler는 다양한 방법으로 콘텐츠를 검색한다. 하나는 Crawler가 URL을 방문하고 웹사이트의 콘텐츠 유형에 대한 정보가 검색엔진에 반환되는 순수한 방법이고 다른 하나는 이전에 크롤링된 웹사이트에서 찾은 모든 URL을 추적하는 것이다. 바이러스가 할 수 있는 모든 것을 가로지르고/전파하기를 원한다는 점에서 바이러스와 매우 유사하다.
1. mywebsite.com은 키워드가 "Apple", "Banana", "Pear"인 것으로 스크랩되었다.
2. 이러한 키워드는 Crawler가 사전에 저장한 다음 검색 엔진(예: 구글)에 반환한다.
3. 구글은 이제 mywebsite.com에 "Apple", "Banana", "Pear"라는 키워드가 있음을 알게 되었다.
4. 하나의 웹사이트만 크롤링 되었으므로 사용자가 "Apple"을 검색하면 mywebsite.com이 나온다.
2. Robots.txt
site map과 Robots.txt는 웹사이트를 방문할 때 Crawler가 가장 먼저 index를 생성하는 파일이다.
Robots.txt는 Crawler가 웹사이트에 가지는 권한을 정의하는 파일로 웹 서버에서 지정한 루트 디렉토리에 있다.
Robots.txt의 기본적인 마크업
User-agent: *
Disallow: /owner
Disallow: /manage
Disallow: /admin
Disallow: /oldadmin
Disallow: /search
Disallow: /m/search
Disallow: /m/admin
Disallow: /like
Allow: /
User-agent: Mediapartners-Google
Allow: /
User-agent: bingbot
Crawl-delay: 30
- User-agent: 사이트 인덱스를 지정할 수 있는 Crawler 유형(*은 모든 user agent)
- Allow: Cralwer가 인덱스를 생성할 수 있는 파일이나 디렉토리(/는 전체 콘텐츠를 허용)
- Disallow: Cralwer가 인덱스를 생성할 수 없는 파일이나 디렉토리(/not/but은 /not/but은 제외하고 /not/1,/not/2..은 가능)
- Sitemap: Sitemap이 있는 위치에 대한 참조(https:1000sj.tistory.com/sitemap.xml에 sitemap이 위치)
3. Sitemap
Sitemap은 Crawler가 도메인에서 콘텐츠를 찾는데 필요한 경로를 지정해주는 XML형식의 리소스이다.
검색엔진은 처리해야 할 데이터가 많다. 그렇기 때문에 데이터를 수집하는 방법에 대한 효율성이 중요하다. Sitemap에서 콘텐츠에 대한 필수 경로를 제공하므로 Crawler는 수동으로 찾아서 스크랩하는 프로세스를 거치지 않고 Sitemap에서 제공하는 콘텐츠를 스크랩하면 된다.
4. Google dorking
검색쿼리 구체화
- 검색 쿼리의 범위를 좁히려면 ""로 감싸주면된다. Google은 ""안의 문장을 정확한 것으로 해석한다.
- site: 특정 사이트내에서 검색
- filetype: 확장자로 검색
- cache: 지정 url에 google 캐시된 버전
- intitle: 제목으로 검색
#1000sj.tistory.com 사이트의 pdf파일 찾기
site:1000sj.tistory.com filetype:pdf
#login page찾기
intitle:login
'네트워크 보안 > 보안' 카테고리의 다른 글
[Pentesting] Metasploit (01) (0) | 2021.12.28 |
---|---|
[Pentesting] MetaSploit (00) (0) | 2021.12.27 |
[Pentesting] Burp Suite 설치하고 Openvpn 설정 (0) | 2021.12.26 |
[Linux🐧] Shell Scripting (0) | 2021.09.20 |
[Linux🐧] Virtual Machine 설치 (0) | 2021.09.20 |