Robots Txt 취약점 | Korean Webmaster Office Hours (웹마스터 묻고 답하기) – Robots.Txt 관련 질문 96 개의 가장 정확한 답변

당신은 주제를 찾고 있습니까 “robots txt 취약점 – Korean Webmaster Office Hours (웹마스터 묻고 답하기) – robots.txt 관련 질문“? 다음 카테고리의 웹사이트 you.tfvp.org 에서 귀하의 모든 질문에 답변해 드립니다: you.tfvp.org/blog. 바로 아래에서 답을 찾을 수 있습니다. 작성자 Google Search Central 이(가) 작성한 기사에는 조회수 1,075회 및 좋아요 15개 개의 좋아요가 있습니다.

침해사고를 예방하기 위해 취약점 점검을 받으면 robots.txt 파일이 없기 때문에, 대형검색엔진의 크롤러 봇들에 의해 개인정보가 노출될 가능성이 있다는 진단 결과를 받을 수도 있다.

robots txt 취약점 주제에 대한 동영상 보기

여기에서 이 주제에 대한 비디오를 시청하십시오. 주의 깊게 살펴보고 읽고 있는 내용에 대한 피드백을 제공하세요!

d여기에서 Korean Webmaster Office Hours (웹마스터 묻고 답하기) – robots.txt 관련 질문 – robots txt 취약점 주제에 대한 세부정보를 참조하세요

웹마스터를 위한 구글의 묻고 답하기, 파일럿 프로그램으로 진행하고 있는 첫 번째 시간입니다.
이번 시간에는 robots.txt 대한 주제를 다루어 보았습니다.
– robots.txt란 무엇입니까?
– robots.txt는 는 꼭 필요한가요?
– 잘 못 적용된 사례/ 잘 적용된 사례
– robots.txt 적용확인 방법
향후 웹마스터 및 검색 관련 질문은 아래의 댓글을 활용하시거나 구글의 웹마스터 커뮤니티를 활용해 주시기 바랍니다.
구글 웹마스터 도움말 커뮤니티 : https://support.google.com/webmasters/community?hl=ko
구글 서치 콘솔 : https://search.google.com/search-console

robots txt 취약점 주제에 대한 자세한 내용은 여기를 참조하세요.

robots.txt 정보 노출 취약점 – Guluem

개요 ” Security Misconfiguration “즉 잘못된 보안설정 오류라고하며하며 말 그대로 설정의 오류로 인해 발생되는 웹 취약점입니다.

+ 여기에 자세히 보기

Source: guleum-zone.tistory.com

Date Published: 1/1/2022

View: 528

검색엔진 정보 노출 취약점 (robots.txt) – SecurityCareer

검색엔진 정보 노출 취약점 (robots.txt) … 웹사이트URL/robots.txt 로 검색 시, 해당 파일이 없는 경우, 검색엔진 접근제어가 미적용된 상태.

+ 여기에 더 보기

Source: isc9511.tistory.com

Date Published: 10/17/2021

View: 4484

티스토리

robots.txt 파일에 디렉터리가 노출되는 취약점입니다. Q : robots.txt 가 그럼 뭔가요? 사이트에 웹 크롤러같은 로봇의 접근을 막기 위한 약속이라 …

+ 자세한 내용은 여기를 클릭하십시오

Source: godhaword.tistory.com

Date Published: 1/22/2022

View: 511

웹 취약점 – robots.txt – 네이버 블로그

– robots.txt는 로봇 배제 표준으로 알려진 규약으로서 해당 웹사이트에 대한 크롤링 지침을 전달하기 위한 용도로 사용된다. 쉽게 말해 접근 가능/ …

+ 여기에 자세히 보기

Source: m.blog.naver.com

Date Published: 10/9/2021

View: 5079

티스토리 – 레이피엘의 블로그

… 중에 프로젝트에대한 보안성 진단을 받았는데 취약점 리스트에 robots.txt가 … robots.txt는 로봇 배제 규약(robots exclusion protocol) 혹은 …

+ 여기를 클릭

Source: reiphiel.tistory.com

Date Published: 9/27/2022

View: 9356

[Day 100] 검색엔진 정보노출 취약점 – Daily Security

… 로봇배제표준 : 검색로봇에 대한 웹사이트의 디렉터리 및 파일들에 대한 검색조건을 명시해놓은 표준 규약으로 접근제한 설정을 “robots.txt”파일 …

+ 여기에 자세히 보기

Source: remybaek.tistory.com

Date Published: 1/14/2021

View: 1769

검색엔진 정보 노출 취약점(robots.txt) – 222tistory

불충분한 세션 관리 취약점 동일한 세션 ID(일정한 패턴이 존재)를 발급하거나 세션 타입아웃을 너무 길게 설정하였을 경우 공격자가 다른 사용자의 세션 …

+ 자세한 내용은 여기를 클릭하십시오

Source: 222tistory.tistory.com

Date Published: 6/22/2021

View: 9500

robots.txt 파일에 접근하는 클라이언트를 차단 … – Infosec Ledger

침해사고를 예방하기 위해 취약점 점검을 받으면 robots.txt 파일이 없기 때문에, 대형검색엔진의 크롤러 봇들에 의해 개인정보가 노출될 가능성이 있다는 …

+ 여기에 표시

Source: infosec-ledger.tistory.com

Date Published: 2/11/2021

View: 1317

5. 정보노출 취약점

또한 robots.txt 설정 상태 및 에러 페이지에 정보가 노출되는 경우가 있음. robots.txt 파일에 디렉토리 정보가 노출 되기도 합니다. 예시를 들어보자면 …

+ 여기에 보기

Source: whitesnake1004.tistory.com

Date Published: 10/10/2021

View: 1398

주제와 관련된 이미지 robots txt 취약점

주제와 관련된 더 많은 사진을 참조하십시오 Korean Webmaster Office Hours (웹마스터 묻고 답하기) – robots.txt 관련 질문. 댓글에서 더 많은 관련 이미지를 보거나 필요한 경우 더 많은 관련 기사를 볼 수 있습니다.

Korean Webmaster Office Hours (웹마스터 묻고 답하기) - robots.txt 관련 질문
Korean Webmaster Office Hours (웹마스터 묻고 답하기) – robots.txt 관련 질문

주제에 대한 기사 평가 robots txt 취약점

  • Author: Google Search Central
  • Views: 조회수 1,075회
  • Likes: 좋아요 15개
  • Date Published: 2019. 8. 16.
  • Video Url link: https://www.youtube.com/watch?v=GLwUQVR-XUE

robots.txt에 대한 해커에 관점과 보안의 관점의 차이

robots.txt란?

robots.txt는 로봇 배제 표준(robots exclusion protocol)으로 알려진 규약으로서 해당 웹사이트에 대한 크롤링 지침을 전달하기 위한 용도로 사용된다. 쉽게 말해 접근 가능/불가능한 페이지, 디렉토리, 크롤러를 명시함으로서 크롤러를 제어 할 수있는 파일이다. 하지만 robots.txt 파일에 페이지, 디렉토리, 크롤러를 명시한다고 해도 접근이 불가능한 것은 아니다. 파일에 명시한 내용은 단순 ‘규약’ 일뿐, 이를 어긴다고 문제가 될 건 없기 때문이다. 또한, 일반적인 웹 브라우저를 통해서 접근하는 클라이언트는 제어 할 수 없다.

해커관점의 robots.txt

민감한 정보를 포함하고 있는 ‘/wp-admin’라는 페이지가 존재하고, 이 페이지의 경로는 관리자만 알고 있다고 가정해보자. 그럼 무차별 대입(Brute force)과 추측(Guessing) 방법 이외에는 이 페이지의 존재여부를 알 수 없을 것이다. 하지만 악의적 목적을 가진 해커가 robots.txt 파일에 접근하여 ‘/wp-admin’페이지가 Disallow로 설정 된 것을 확인한다면, ‘/wp-admin’ 페이지에 흥미로운 정보가 있다고 추측 할 것이고, 해당 페이지에 접근하여 민감한 정보를 획득하려고 할 것이다. 하지만 접근제어 설정이 적용되어 있어서 ‘/wp-admin’ 페이지에 접근하지 못해도, 해커가 정보를 취할 수 있는 여지는 남아있다. 서버 운영자의 접근제어 설정 실수를 노리고 해당 페이지에 매일 접근 시도를 할 수도 있고, Disallow 설정이 되 있지만, 접근 제어 설정은 되 있지 않은 다른 페이지에 접근해서 주석처리 된 id/password를 운 좋게 획득할 수도 있다. 또한 robots.txt 파일의 내용을 통해 해당 서버의 디렉토리 구조도 어느 정도 파악하는 등 해커에게 정보를 제공할 수 있다. 이러한 이유 때문에 일부 취약점 스캐너들은 robots.txt 파일을 점검 항목에 포함한다.

보안관점에서의 robots.txt

침해사고를 예방하기 위해 취약점 점검을 받으면 robots.txt 파일이 없기 때문에, 대형검색엔진의 크롤러 봇들에 의해 개인정보가 노출될 가능성이 있다는 진단 결과를 받을 수도 있다. 하지만 앞서 살펴 봤듯이 robots.txt는 누구나 접근가능하고, 해커에게 정보를 제공할 수도 있는 파일이므로 접근제어 설정과의 적절한 조화가 필요하다. 먼저 로봇 배제 표준보다 접근제어 설정이 우선시 되어야하며, 클라이언트에게 [403]Forbidden 페이지보다는 [404]Not Found 페이지를 보여주도록 함으로써, 해커에게 정보를 주지 않도록 한다. 또한, 로봇 배제 표준은 크롤러의 접근을 제어하는 것이 목적이므로, Disallow 설정보다 User-agent 설정을 우선시하여, Disallow 설정으로 보여지는 디렉토리와 페이지 정보를 최소화 해야한다.

robots.txt 정보 노출 취약점

개요

” Security Misconfiguration “즉 잘못된 보안설정 오류라고하며하며 말 그대로 설정의 오류로 인해 발생되는 웹 취약점입니다. 해당하는 범위는 굉장히 넓기 때문에 웹 서버, DB, 프레임워크, 사용자의 코드, Pre-installed VM, 컨테이너, 저장소 발생될 여지가 굉장히 넓은 취약점 입니다.

어떤 피해가 발생하는가

(1) 숨겨진 관리자 페이지 경로

(2) 불필요한 서비스 및 기능을 설치하였거나 활성화 (PORT, 불필요하게 높은 권한, http Method, WebDav)

(3) 서버의 디렉토리 구조 노출

(4) 웹 서버의 종류 및 상세 버전 노출

보안이 필요한 내용이 검색엔진에 유출되지 못하도록 웹 페이지를 작성하는 방법을 기술한 국제 기술 표준으로 보안성을 위해 만들어져 있지만 내부적인 설정에 신경을 쓰지 않는다면 2차 공격 또는 정보수집에 필요한 정보를 해커에게 제공 해줄 가능성이 존재합니다.

User-agent : * –> 검색로봇을 설정, *은 모든 로봇을 의미

Allow:/폴더명/ –> 지정된 폴더에 대한 접근을 허용

Disallow:/폴더명/ –> 지정된 폴더에 대한 접근을 거부

robots.txt 파일내부를 확인해보면 admin과 passwords라는 디렉토리만 보아도 중요한 정보가 담겨 있을 것이라는 걸 쉽게 확인할 수 있습니다.

하단에 있는 passwords 디렉터리에는형식의 파일과 백업 파일로 확인되는 것들이 몇 개보입니다. wget 명령을 통해 다운을 받아서 내용을 확인해 보겠습니다.

wp-config.bak이라는 파일 내부를 확인해 본 결과 대상 서비스에 대한 DB정보가 노출되어 있습니다.

Metasploit 을 활용한 robots.txt 수집

msfconsole msf5 > use auxiliary/scanner/http/robots_txt msf5 auxiliary(scanner/http/robots_txt) > set RHOSTS 192.168.0.131 RHOSTS => 192.168.0.131 msf5 auxiliary(scanner/http/robots_txt) > set THREADS 20 THREADS => 20 msf5 auxiliary(scanner/http/robots_txt) > run

robots.txt 에 민감한 정보가 담겨있다거나 외부 사용자들에게 노출되지 말아야 할 경우 서치 엔진을 통해 발견되지 않게끔 설정해두는 경우도 있습니다. 그럴 땐 Metasploit을 활용하여 강제적으로 열거를 시도할 수 도있습니다.

보안설정 오류로 실제 서비스에서 발생한 취약점입니다. 해당 문제는 기관에 전달하였고 접근 제한 조차 없었기 때문에 외부의 모든 사용자가 접근하여 열람할 수 있었습니다.

노출된 DB 계정을 통해 직접 접근이 가능했으며 몇 가지 민감정보(주민등록번호)는 암호화되어 있었지만 모든 테이블을 수정할 수 있는 권한이 존재했기에 위험할 수 있습니다.

대응 방안

robots.txt 보안성을 위해 구글 검색에 노출되는 것을 회피하는 데 사용되지만 잘못된 보안설정이 되어있을 경우 중요정보가 쉽게 노출이 됩니다.

하지만 그렇다고 모든 디렉터리 검색을 비 허용시키면 마케팅 차원에서는 효율적이지 않기 때문에 우선적으로 해당 디렉터리에 대한 ” 접근권한 ” 및 웹 애플리케이션의 대응방안을 함께 적용한 후 고려해보는 것이 좋습니다.

검색엔진 정보 노출 취약점 (robots.txt)

반응형

URL/robots.txt 검색 시, 내용 확인 가능

* 검색엔진 정보 노출 취약점 : 검색 엔진에 의해 각종 정보(시스템, 개인정보 등)이 검색되어 중요 정보가 제공, 노출되는 취약점

– 웹사이트URL/robots.txt 로 검색 시, 해당 파일이 없는 경우, 검색엔진 접근제어가 미적용된 상태

로봇배제표준 : 검색로봇에 대한 웹사이트의 디렉터리 및 파일에 대한 검색 조건을 명시해놓은 국제 규약

– 접근 제한에 대한 설정을 robots.txt에 기술함(ASCII 또는 UTF-8 텍스트)

검색로봇 : 검색엔진이 웹사이트를 검색, 정보를 가져오는 프로그램으로, 로봇배제표준 설정파일(robots.txt)을 확인, 이를 준수한 컨텐츠 수집을 진행

– 악성 검색엔진의 경우 로봇배제표준을 무시하고 컨텐츠를 수집하는 등의 행위를 할 수 있음

* 로봇배제표준 설정파일(robots.txt) 설정 방법

– User-agent(로봇 이름 명시) 및 Allow 또는 Disallow(해당 URL의 접근 허용 여부 명시)로 구성

* 설정 예시

robots.txt 허용/차단 내용 User-agent: *

Disallow: / – 모든 검색로봇(*)에 대해 웹사이트 전체(/)에 대한 접근(크롤링) 차단 User-agent: Googlebot

User-agent: Yeti

Disallow:

(또는 Allow: /) – Googlebot, Yeti 검색 로봇에 대해 웹사이트 전체 접근 허용

– [Disallow: 공백]의 경우 웹사이트 전체 허용 (Allow: / 와 동일) User-agent: *

Disallow: /cgi-bin/

Disallow: /private/p.html – 모든 검색로봇(*에) 대해 /cgi-bin 디렉터리 및 /private/p.html 페이지 접근을 차단 User-agent: Googlebot-image

Disallow: /*.pdf$

Disallow: /*? – Googlebot-image 검색 로봇에 대해 .pdf로 끝나는 URL 및 ?가 포함된 모든 URL 차단

* robots.txt 작성 시 유의 사항

파일명 – 반드시 robots.txt으로 설정 파일 위치 – 반드시 루트 디렉터리(/)에 위치 (아니면 효력 없음) 파일 내용 – 대/소문자를 구분함 띄어쓰기 주의 – User-agent, Allow, Disallow 등의 필드와 콜론(:)은 붙어야함

– 콜론(:) 이후 공백이 하나 추가되고 내용이 이어짐 줄 바꿈 – 다중 검색로봇 지정 시, 한 줄을 띄워야함

User-agent: 로봇명1

Disallow: /

User-agent: 로봇명2

Disallow: /

반응형

robots.txt 란?

728×90

반응형

네 안녕하세요. Godhaword 입니다.

문제를 풀다가 bot이나 로봇 같은 힌트가 나오면 주소창에 아무 생각 없이 /robots.txt를 쳐보는 습관이 생겼습니다. 그렇게 하면 문제는 풀리더라고요. 하지만 그 원리나 robots.txt 가 무엇을 뜻하는 지는 아직도 몰라 이렇게 공부하며 글을 남겨봅니다.(ctf 기준 50~100점 문제에 로봇 문제가 있고, 그 문제는 그냥 robots.txt 넣으면 문제는 풀립니다.)

목차는

1. 정보노출 취약점이란?

2. 정보노출 취약점이 발생하는 이유

3. 정보노출 취약점을 공격하는 방법

4. 정보노출 취약점 공격 예제 (3번과 4번은 한 번에 설명해드리겠습니다.)

5. 정보노출 취약점을 보완하는 방법

순으로 가겠습니다.

1. 정보노출 취약점이란?

robots.txt 파일에 디렉터리가 노출되는 취약점입니다.

Q : robots.txt 가 그럼 뭔가요?

사이트에 웹 크롤러같은 로봇의 접근을 막기 위한 약속이라 합니다.

(이것 외에도 개발자 소스 창에 mysql 이나 flashplayer 버전 노출 같은 것도 있지만 이번 글에서는 robots.txt 위주로 설명하겠습니다.)

User-agent: * Disallow:/

형식을 대충 이런 식으로 되어있는데, 모든 로봇에게 문서 접근을 불허한다는 뜻입니다.

User-agent: * Allow:/

이건 모든 로봇에게 문서접근을 허가한다는 것이고

User-agent: googlebot Disallow:/godhaword/

위 같은 형식은 googlebot에게 godhaword라는 특정 디렉토리의 접근을 차단한다는 뜻입니다.

2. 정보노출 취약점이 발생하는 이유

대부분의 robots.txt 에는 중요한 정보가 없지만 만약 robots.txt에 관리자가 관리자 웹페이지 같은 정보를 띄우두게 올려두게 되면, 공격자는 쉽게 /robots.txt라는 공격문으로 관리자 웹페이지에 중요 정보를 볼 수 있게 됩니다.

3,4. 정보노출 취약점 공격 방법 및 예제

hackctf의 /라는 문제입니다. 다른 사이트에선 이런 유형의 문제를 bot이나 robot 같이 쉽게 유추 가능한 이름을 넣어서 짓습니다. hackctf의 / 라는 이름은 최상의 경로라는 것을 담은 힌트라고 생각 됩니다. 일단 대놓고 로봇이라는 힌트가 이렇게 있네요. 뒤도 돌아보지 않고, /robots.txt를 쳐봅니다.

모든 로봇의 /robot_flag/ 접근을 불허한다 합니다. flag네요. 제가 접근해 보겠습니다. 크으… EZ 초보자 분들도 robots.txt 라는 개념만 있으면 간단한 ctf 의 기본문제는 하나 풀 수 있게 됩니다.

참고로 각 사이트 대표 봇 이름은 google 은 googlebot naver 는 Yeti Daum은 Daumoa google image는 googlebot-image 등이 있습니다. 다른 봇들은 그 때 그 때, 검색해보심이 좋을 것 같습니다.

5. 정보누출 취약점을 보완하는 방법

1. 만약 관리자 웹 페이지가 있다면, 해당 웹 페이지는 특정 ip나 특정 권한 없이는 접근이 불가능 하게 막으면 robot.txt로 관리자 웹페이지를 획득해도 접근 못하게 막는 것도 방법입니다.

저도 tistory 블로그 운영하면서 메타태그나 googlebot 관련 단어를 좀 본 적 있는데 이게 이렇게 연관되어 있을지는 몰랐네요.

혹시 궁금하시거나 모르겠는 점은 댓글로 부탁드립니다.

728×90

반응형

웹 취약점 – robots.txt

오늘 robots.txt이라는 취약점을 알아봅시다.

robots.txt란?

– robots.txt는 로봇 배제 표준으로 알려진 규약으로서 해당 웹사이트에 대한 크롤링 지침을 전달하기 위한 용도로 사용된다. 쉽게 말해 접근 가능/불가능한 페이지, 디렉터리, 크롤러를 명시함으로써 크롤러를 제어할 수 있는 파일이다.

그렇다면 robots.txt 파일이 어떻게 이루어졌는지 알아봅시다.

robots.txt 위치

robots.txt를 적용할 웹사이트의 최상위 디렉터리에 적용하시면 됩니다

ex) https://www.test.com/robots.txt(O)

ex) https://www.test.com/admin/robots.txt(x)

robots.txt 형식

User-agent: <= 검색 봇 이름 Disallow: <= 접근 설정 Crawl-delay: 다음 방문까지의 딜레이(초) 모든 검색 봇 차단 User-agent: * Disallow: / '*'(와일드카드)는 모든 로봇을 뜻하며, '/'슬래시는 모든 디렉터리를 뜻합니다 ex) 구글 봇(Googlebot)만 허용하고 나머지는 모두 차단 User-agent: Googlebot Disallow: User-agent: * Disallow: / 해커 관점 robots.txt - 만약에 민감한 정보를 포함하고 있는 'robot'라는 페이지가 존재하고, 이 페이지의 경로는 관리자만 알고 있다고 가정해봅시다. 그렇다면 이 robot라는 페이지에는 있는지 알수가 없다. 하지만 악의적 목적을 가진 해커가 robots.txt 파일에 접근하여 'robot' 페이지가 Disallow로 설정 된 것을 확인한다면, 페이지에 흥미로운 정보가 있다고 추측하여 해당 페이지에 접근하여 민감한 정보를 획득하려고 할 것이다. 실습을 통해 알아봅시다. ---------------------------------------------------------------------------------- HackCTF -Web 문제를 풀어보도록 하겠습니다. hidden flag를 찾는 문제인데 사진에 로봇이 있습니다. 즉, robots.txt를 이용한 문제 풀이입니다.

[Day 100] 검색엔진 정보노출 취약점

User-agent : *

Disallow: / 모든 검색로봇(*)에 대해 웹사이트 전체(/)에 대한 접근(크롤링) 차단

User-agent: Googlebot

User-agent: Yeti

Disallow:

(또는 Allow: /) Googlebot, Yeti 검색로봇에 대해 웹사이트 전체 접근허용

Disallow 항목에 아무런 명시도 하지 않으면 웹사이트 전체 허용 의미. “Allow: /”과 동일

User-agent: *

Disallow: /cgi-bin/

Disallow: /private/ 모든 검색로봇(*)에 대해 /cgi-bin, /private 디렉터리 접근 차단

User-agent: Googlebot-image

Disallow: /admin/

Disallow: /*.pdf$ Googlebot-image 검색로봇에 대해 /admin 디렉터리 접근차단

.pdf로 끝나는($) URL 접근 차단

검색엔진 정보 노출 취약점(robots.txt)

검색엔진에 의해 웹사이트 해킹에 필요한 정보(시스템 정보, 개인정보 등) 검색되어 해킹의 빌미가 제공되는 취약점

이런 중요한 정보가 웹사이트에 올라가 있는게 문제임

로봇배제표준은 검색로봇에 대한 웹사이트의 디렉터리 및 파일들에 대한 검색조건을 명시해놓은 국제규약으로 접근제제한에 대한 설정을 robots.txt 파일(ASCII 또는 UTF-8 텍스트)에 기술한다.

일반적으로 검색로봇은 사이트 방문시 가장 먼저 웹사이트의 로봇배제표준 설정파일(robots.txt)을 확인하고 이를 준수하여 컨텐츠를 수집한다.

ㄱrobots.txt 설정방법

User-agent: 로봇의 이름을 적는 부분

Allow: /

Disallow:

# /하나 있는건 전체에 대한 접근(크롤링)을 차단한다는 것

Disallow:가 비어있으면 모두 허용

URL의 접근허용 여부를 적는 부분(Allow/Disallow)으로 구분된다.

robots.txt 파일은 반드시 웹사이트의 최상위 주소(루트디렉터리)에 저장해야한다.

http://www.hello.com웹사이트에 검색엔지 접근을 제어하려면 robots.txt 파일이 http://www.hello.com/robots.txt에 위치해야함.

http://www.google.com/robots.txt

robots.txt 파일에 접근하는 클라이언트를 차단 하는것이 적절한가

1. 서론

포스트리뷰중에 ‘robots.txt 파일에 접근하는 클라이언트를 차단 하는것이 적절한가’ 라는 주제로 얘기했던게 생각나서, 해킹과 보안 관점에서 robots.txt를 정리해봤다.

사진출처 : harcoder

2. robots.txt란?

robots.txt는 로봇 배제 표준(robots exclusion protocol)으로 알려진 규약으로서 해당 웹사이트에 대한 크롤링 지침을 전달하기 위한 용도로 사용된다. 쉽게 말해 접근 가능/불가능한 페이지, 디렉토리, 크롤러를 명시함으로서 크롤러를 제어 할 수있는 파일이다. 하지만 robots.txt 파일에 페이지, 디렉토리, 크롤러를 명시한다고 해도 접근이 불가능한 것은 아니다. 파일에 명시한 내용은 단순 ‘규약’ 일뿐, 이를 어긴다고 문제가 될 건 없기 때문이다. 또한, 일반적인 웹 브라우저를 통해서 접근하는 클라이언트는 제어 할 수 없다.

3. 해킹 관점에서의 robots.txt

민감한 정보를 포함하고 있는 ‘juicy’라는 페이지가 존재하고, 이 페이지의 경로는 관리자만 알고 있다고 가정해보자. 그럼 무차별 대입(Brute force)과 추측(Guessing) 방법 이외에는 이 페이지의 존재여부를 알 수 없을 것이다. 하지만 악의적 목적을 가진 해커가 robots.txt 파일에 접근하여 ‘juicy’ 페이지가 Disallow로 설정 된 것을 확인한다면, ‘juicy’ 페이지에 흥미로운 정보가 있다고 추측 할 것이고, 해당 페이지에 접근하여 민감한 정보를 획득하려고 할 것이다. 하지만 접근제어 설정이 적용되어 있어서 ‘juicy’ 페이지에 접근하지 못해도, 해커가 정보를 취할 수 있는 여지는 남아있다. 서버 운영자의 접근제어 설정 실수를 노리고 해당 페이지에 매일 접근 시도를 할 수도 있고, Disallow 설정이 되 있지만, 접근 제어 설정은 되 있지 않은 다른 페이지에 접근해서 주석처리 된 id/password를 운 좋게 획득할 수도 있다. 또한 robots.txt 파일의 내용을 통해 해당 서버의 디렉토리 구조도 어느 정도 파악하는 등 해커에게 정보를 제공할 수 있다. 이러한 이유 때문에 일부 취약점 스캐너들은 robots.txt 파일을 점검 항목에 포함한다. 아래 그림은 취약점 스캐너 Nikto의 점검 결과이다.

4. 보안 관점에서의 robots.txt

침해사고를 예방하기 위해 취약점 점검을 받으면 robots.txt 파일이 없기 때문에, 대형검색엔진의 크롤러 봇들에 의해 개인정보가 노출될 가능성이 있다는 진단 결과를 받을 수도 있다. 하지만 앞서 살펴 봤듯이 robots.txt는 누구나 접근가능하고, 해커에게 정보를 제공할 수도 있는 파일이므로 접근제어 설정과의 적절한 조화가 필요하다. 먼저 로봇 배제 표준보다 접근제어 설정이 우선시 되어야하며, 클라이언트에게 [403]Forbidden 페이지보다는 [404]Not Found 페이지를 보여주도록 함으로써, 해커에게 정보를 주지 않도록 한다. 또한, 로봇 배제 표준은 크롤러의 접근을 제어하는 것이 목적이므로, Disallow 설정보다 User-agent 설정을 우선시하여, Disallow 설정으로 보여지는 디렉토리와 페이지 정보를 최소화 해야한다.

5. 결론

이 글을 작성한 이유인 ‘robots.txt 파일에 접근하는 클라이언트를 차단 하는것이 적절한가’에 대한 나의 주장은 ‘당연히 차단해야 한다’ 였다. 하지만 스캐닝성으로 robots.txt 파일에 접근하는 모든 IP의 웹로그를 일일히 분석하여 차단 근거를 확인 할 수는 없으므로, 개발자와 서버 운영자들이 정보보안에 관심을 가지고 적극적으로 협조하려는 자세가 동시에 수반되어야 할 것이다.

참고

https://en.wikipedia.org/wiki/Robots_exclusion_standard#About_the_standard

http://www.hacoder.com/2015/10/what-exactly-is-robots-txt-file/

5. 정보노출 취약점

정보노출 취약점이란?

코드 IL 점검항목 정보노출 개요 웹 어플리케이션의 민감한 정보가 개발자의 부주의로 인해 노출되는 것으로 중요 정보(관리자 계정 및 테스트 계정 등)을 주석 구문에 포함시켜 의도하지 않게 정보가 노출되는 취약점. 또한 robots.txt 설정 상태 및 에러 페이지에 정보가 노출되는 경우가 있음.

robots.txt 파일에 디렉토리 정보가 노출 되기도 합니다.

예시를 들어보자면 백악관의 홈페이지인 http://whitehouse.gov 에 /robots.txt를 입력하면 워드 프레스 관리자 페이지가 노출됩니다.

노출됬다고 해도 취약한 정보가 담겨져 있지는 않기 때문에 큰취약점은 아니지만 원래는 robots.txt 자체가 노출되어서는 안됩니다.

robots.txt에 대해 이야기를 해보자면 각각의 의미가 담겨 있습니다.

1. 모든 로봇에게 문서 접근을 허가할 경우

User-agent : *

Allow : /

2. 모든 로봇을 차단할 경우

User-agent : *

Disallow : /

3. 구글 로봇에 다음 특정 디렉토리(admin) 접근을 차단할 경우

User-agent : googlebot

Disallow : /admin/

=> 홈페이지 소스보기시 정보 노출 사례

– 개발자들의 주석처리

– 테스트 및 관리자 계정 노출 : 예) admin, test 계정 생성

– 데이터 베이스 정보 노출 : my sql버전 명시

웹 실습 페이지인 testphp.vulnweb.com 사이트에서 마우스 우클릭으로 소스보기를 하면 플래쉬 버전이 적혀있다.

물론 엄청 중요한 정보는 아니지만 플래쉬 취약점을 이용하기에 공격자 입장에서는 시간을 절약할수 있다.

간간히 소스코드에 개발자들이 서버 ip나 계정및 암호를 노출시키는 실수를 하기도 합니다.

– 노출된 정보 : swflash version = 6.0.29.0

정보노출 취약점 대응방안 으로는 다음과 같습니다.

– 최종 사용자에게 스택 추적정보 및 디버그 정보 제공을 금지

– html 소스에 기록되는 내용은 일반 사용자들도 쉽게 접근할수 있기 때문에 중요 내용은 hidden값이나 주석값으로 기입하지 않는다.

– 에러 메시지를 바로 표시하지 않고 특정 URL로 리다이렉트 하도록 수정한다.

– http 헤더에 서버 정보가 보이지 않도록 설정을 수정한다.

– apache http 헤더 정보 숨기기

httpd.conf 파일에서 ServerTokens의 설정 값이 ‘Min/OS/Full’일경우 ‘Prob’로 변경한다.

– IIS 에러 페이지 설정

인터넷 정보 서비스 관리자의 [속성] – [사용자 정의 오류] 탭에서 에러 페이지를 지정할수 있습니다.

웹 취약점 스캐닝이라고 해서 자동화 프로그램을 이용해서 웹 사이트의 여러가지의 정보를 수집하고 정보를 바탕으로 취약점이 있는지 알아내는 툴입니다.

칼리리눅스에 기본으로 설치되어있는 웹 스캐닝 프로그램 중에 nikto라는 프로그램이 있습니다.

이렇게 필요에 따라서 옵션을 부여해서 사용할수 있습니다.

키워드에 대한 정보 robots txt 취약점

다음은 Bing에서 robots txt 취약점 주제에 대한 검색 결과입니다. 필요한 경우 더 읽을 수 있습니다.

이 기사는 인터넷의 다양한 출처에서 편집되었습니다. 이 기사가 유용했기를 바랍니다. 이 기사가 유용하다고 생각되면 공유하십시오. 매우 감사합니다!

사람들이 주제에 대해 자주 검색하는 키워드 Korean Webmaster Office Hours (웹마스터 묻고 답하기) – robots.txt 관련 질문

  • robots.txt
  • 웹마스터 묻고답하기
  • Korean Webmaster QnA

Korean #Webmaster #Office #Hours #(웹마스터 #묻고 #답하기) #- #robots.txt #관련 #질문


YouTube에서 robots txt 취약점 주제의 다른 동영상 보기

주제에 대한 기사를 시청해 주셔서 감사합니다 Korean Webmaster Office Hours (웹마스터 묻고 답하기) – robots.txt 관련 질문 | robots txt 취약점, 이 기사가 유용하다고 생각되면 공유하십시오, 매우 감사합니다.

Leave a Comment