크롤링·플랫폼 · 공식 문서

robots.txt 취약점, 관리자 경로 노출과 보호 순서

robots.txt 는 누구나 열어 보는 공개 파일이라, 적은 경로는 그대로 드러납니다. RFC 9309 는 이 규칙이 접근 권한 장치가 아니라고 적었고, 구글과 네이버는 민감한 페이지를 비밀번호나 로그인으로 보호하라고 적었습니다.

robots.txt 는 크롤러에게 어디를 차단할지 알리는 파일입니다. 관리자 화면을 검색에서 빼려고 그 경로를 적어 두는 경우가 많습니다.

그런데 이 파일은 로그인 없이 누구나 엽니다. 차단하려고 적은 줄이 곧 사이트의 민감한 경로 목록이 됩니다.

발견 01

robots.txt 에 적은 경로는 공개되고, 차단 줄이 경로 목록이 됩니다

The Robots Exclusion Protocol is not a substitute for valid content security measures. Listing paths in the robots.txt file exposes them publicly and thus makes the paths discoverable.

로봇 배제 프로토콜은 제대로 된 콘텐츠 보안 수단을 대신하지 못한다. robots.txt 에 경로를 적으면 그 경로가 공개되어 누구나 찾을 수 있게 된다.

IETF 「RFC 9309: Robots Exclusion Protocol」 3. Security Considerations

RFC 9309 는 robots.txt 의 국제 표준 문서입니다. 보안 항목 첫 줄에서 이 파일이 콘텐츠 보안 수단을 대신하지 못한다고 적었습니다.

같은 문서는 /robots.txt URL 자체가 늘 허용된다고 적었습니다. 크롤러가 읽는 파일이라 누구나 받을 수 있어야 하기 때문입니다.

물음robots.txt 가 하는 일공식 문서 원문
파일을 누가 읽는가누구나 읽습니다. 크롤러도, 사람도, 다른 프로그램도 같은 URL로 엽니다.The /robots.txt URI is implicitly allowed./robots.txt URL 자체는 늘 허용된 것으로 본다.
적은 경로는 어떻게 되는가공개됩니다. 차단하려고 적은 줄이 경로 목록이 됩니다.Listing paths in the robots.txt file exposes them publicly and thus makes the paths discoverable.robots.txt 에 경로를 적으면 그 경로가 공개되어 누구나 찾을 수 있게 된다.
크롤러가 꼭 따르는가따를지는 크롤러가 정합니다.The instructions in robots.txt files cannot enforce crawler behavior to your site; it's up to the crawler to obey them. While Googlebot and other respectable web crawlers obey the instructions in a robots.txt file, other crawlers might not.robots.txt 지침은 크롤러의 행동을 강제하지 못하고 따를지는 크롤러가 정한다. Googlebot 같은 크롤러는 따르지만 따르지 않는 크롤러도 있다.
네이버 크롤러는 모두 따르는가특수한 용도의 크롤러는 다를 수 있다고 네이버가 적었습니다.다만, 별도의 웹 마스터와의 수집 조건에 대한 협약이 있는 경우, 광고주 정보 취득, 링크 미리보기 생성 등 특수한 용도의 로봇 등은 robots.txt 내의 규칙을 참조하지 않거나 완벽하게 준수하지 않을 수 있습니다.
접근 권한을 주거나 빼는가권한 장치가 아닙니다.These rules are not a form of access authorization.이 규칙은 접근 권한을 주거나 빼는 장치가 아니다.
원문은 RFC 9309, 구글 「Introduction to robots.txt」, 네이버 「robots.txt 설정하기」입니다.

발견 02

규칙을 따를지는 크롤러가 정해서, 차단 줄은 보안 장치가 되지 못합니다

The instructions in robots.txt files cannot enforce crawler behavior to your site; it's up to the crawler to obey them. While Googlebot and other respectable web crawlers obey the instructions in a robots.txt file, other crawlers might not. Therefore, if you want to keep information secure from web crawlers, it's better to use other blocking methods, such as password-protecting private files on your server.

robots.txt 지침은 크롤러의 행동을 강제하지 못한다. 따르지 않는 크롤러도 있으므로, 정보를 지키려면 서버의 비공개 파일에 비밀번호를 거는 등 다른 차단 방법이 낫다.

Google Search Central 「Introduction to robots.txt」

구글은 robots.txt 가 크롤러의 행동을 강제하지 못한다고 적었습니다. 정보를 지키려면 서버의 비공개 파일에 비밀번호를 거는 편이 낫다고 덧붙였습니다.

네이버도 같은 결론입니다. 원문: 그러므로 개인 정보를 포함하여 외부에 노출되면 안 되는 콘텐츠의 경우 이 설정 외에 로그인 기능 등 다른 방법을 통하여 보호하거나 다른 차단 방법을 사용해야 합니다.

차단한 URL도 다른 사이트가 링크하면 URL과 링크 글자가 검색 결과에 나올 수 있습니다. 경로를 숨기는 일과 검색에서 빼는 일은 다른 일입니다.

As a result, the URL address and, potentially, other publicly available information such as anchor text in links to the page can still appear in Google Search results.

차단한 URL도 다른 곳에서 링크되면 URL과 링크 글자 같은 공개 정보가 구글 검색 결과에 나올 수 있다.

Google Search Central 「Introduction to robots.txt」

발견 03

민감 경로는 인증으로 보호하고, 검색에서 빼는 일은 noindex·삭제로 합니다. 순서는 6단계입니다

순서할 일공식 문서 원문
1브라우저에서 도메인 뒤에 /robots.txt 를 붙인 URL로 지금 파일을 엽니다. 하위 도메인마다 따로 엽니다.The /robots.txt URI is implicitly allowed./robots.txt URL 자체는 늘 허용된 것으로 본다.
2Disallow 줄마다 경로 이름이 무엇을 알려 주는지 적습니다. 관리자 화면, 백업 파일, 내부 문서 이름이 여기서 드러납니다.Listing paths in the robots.txt file exposes them publicly and thus makes the paths discoverable.robots.txt 에 경로를 적으면 그 경로가 공개되어 누구나 찾을 수 있게 된다.
3그 경로를 로그인하지 않은 시크릿 창에서 엽니다. 내용이 보이면 지금 누구에게나 열려 있는 상태입니다.Therefore, if you want to keep information secure from web crawlers, it's better to use other blocking methods, such as password-protecting private files on your server.정보를 크롤러로부터 지키려면 서버의 비공개 파일에 비밀번호를 거는 등 다른 차단 방법을 쓰는 편이 낫다.
4열리는 경로에 로그인이나 HTTP 인증을 겁니다. 관리자 화면은 접속 IP 제한을 함께 둡니다.To control access to the URI paths in a robots.txt file, users of the protocol should employ a valid security measure relevant to the application layer on which the robots.txt file is served -- for example, in the case of HTTP, HTTP Authentication as defined in [RFC9110].robots.txt 에 적은 경로의 접근을 통제하려면 그 파일이 제공되는 계층에 맞는 보안 수단을 쓴다. HTTP 라면 HTTP 인증이다.
5검색 결과에 이미 나온 페이지는 인증을 건 뒤 noindex 를 쓰거나 페이지를 지웁니다.This will also prevent that content from appearing in Google Search, or if it already appears, it will eventually remove that content from our search results. Removing content from your site is the best way to ensure that it won't appear in Google Search and anywhere else on the Internet.비밀번호 보호는 그 콘텐츠가 구글 검색에 나오지 않게 하고, 이미 나왔다면 결국 검색 결과에서 빠지게 한다. 사이트에서 지우는 것이 구글 검색과 인터넷 어디에도 나오지 않게 하는 가장 확실한 방법이다.
6robots.txt 에는 크롤링을 아낄 경로만 남깁니다. 남길 때는 이름을 하나씩 적기보다 폴더 단위나 패턴으로 적습니다.관리자 페이지, 개인 정보 페이지와 같이 검색로봇 방문을 허용하면 안 되는 웹 페이지는 수집 비허용으로 설정해주세요. Disallow: /private*/
인증을 건 페이지는 크롤러도 내용을 받지 못합니다. 구글은 비밀번호 보호가 검색 결과에서도 그 콘텐츠를 빼 준다고 적었습니다.
If you have confidential or private content on your site, you need to password protect it to ensure only authorized users can access it. This will also prevent that content from appearing in Google Search, or if it already appears, it will eventually remove that content from our search results.

기밀·비공개 콘텐츠는 승인된 사용자만 볼 수 있게 비밀번호로 보호해야 한다. 그러면 구글 검색에도 나오지 않고, 이미 나왔다면 결국 검색 결과에서 빠진다.

Google Search Central 「Control what you share with Google Search」

네이버는 관리자 페이지를 수집 비허용으로 두라고 적었습니다. 그 예제는 경로를 하나씩 적지 않고 패턴 한 줄(Disallow: /private*/)로 썼습니다.

그래서 robots.txt 줄은 크롤링을 아끼는 용도로만 두고, 지키는 일은 인증이 맡습니다. 둘을 나누면 파일이 공개되어도 화면은 로그인 뒤에 남습니다.

발견 04

같은 점검이라도 B2B·B2C·B2G 는 먼저 볼 경로가 다릅니다

예시 ① 견적 문의를 받는 산업 장비 제조사 사이트(B2B)

문의형 기업 사이트는 견적 요청서 파일과 담당자 화면이 민감합니다. robots.txt 에 견적 파일 폴더 이름이 적혀 있다면 그 폴더부터 시크릿 창으로 엽니다.

열리면 파일을 로그인 뒤로 옮기고, 이미 검색에 나온 파일은 지운 뒤 삭제를 요청합니다.

예시 ② 주문 관리 화면을 직접 운영하는 쇼핑몰(B2C)

쇼핑몰은 관리자 화면과 주문 내역 화면이 있습니다. 두 경로가 robots.txt 에 이름 그대로 적혀 있으면 경로를 찾는 수고를 덜어 주는 셈입니다.

관리자 화면은 접속 IP 제한과 로그인을 함께 두고, robots.txt 에는 장바구니처럼 크롤링을 아낄 경로만 남깁니다.

예시 ③ 민원 첨부 파일을 받는 공공기관 누리집(B2G)

공공기관 누리집은 민원 첨부 파일과 내부 결재 화면이 민감합니다. 수행사가 바뀌며 남은 옛 관리자 경로가 robots.txt 에만 남아 있는 경우도 있습니다.

유지보수 과업에 robots.txt 경로 점검과 인증 확인을 줄로 넣으면, 사업이 바뀌어도 같은 점검이 이어집니다.

그럼 지금 사이트는 어떤 순서로 점검하나요?

  1. 브라우저에서 도메인 뒤에 /robots.txt 를 붙인 URL로 지금 파일을 엽니다. 하위 도메인마다 따로 엽니다.
  2. Disallow 줄마다 경로 이름이 무엇을 알려 주는지 적습니다. 관리자 화면, 백업 파일, 내부 문서 이름이 여기서 드러납니다.
  3. 그 경로를 로그인하지 않은 시크릿 창에서 엽니다. 내용이 보이면 지금 누구에게나 열려 있는 상태입니다.
  4. 열리는 경로에 로그인이나 HTTP 인증을 겁니다. 관리자 화면은 접속 IP 제한을 함께 둡니다.
  5. 검색 결과에 이미 나온 페이지는 인증을 건 뒤 noindex 를 쓰거나 페이지를 지웁니다.
  6. robots.txt 에는 크롤링을 아낄 경로만 남깁니다. 남길 때는 이름을 하나씩 적기보다 폴더 단위나 패턴으로 적습니다.
  7. robots.txt 문법과 위치는 「robots.txt 설정」 편에, 검색 결과에서 빼는 절차는 「구글 색인 삭제」 편에 자세히 적었습니다.

조사 방법

  • IETF 「RFC 9309: Robots Exclusion Protocol」 (문서 수정일 2022-09) · 최종 확인일 2026-10-25 · https://www.rfc-editor.org/rfc/rfc9309
  • Google Search Central 「Introduction to robots.txt」 (문서 수정일 2025-12-10) · 최종 확인일 2026-10-25 · https://developers.google.com/search/docs/crawling-indexing/robots/intro
  • Google Search Central 「Control what you share with Google Search」 (문서 수정일 2026-10-21) · 최종 확인일 2026-10-25 · https://developers.google.com/search/docs/crawling-indexing/control-what-you-share
  • 네이버 서치어드바이저 「robots.txt 설정하기」 · 최종 확인일 2026-10-25 · https://searchadvisor.naver.com/guide/seo-basic-robots
  • 보호 순서 6단계는 위 문서들이 robots.txt 의 한계와 보호 수단으로 적은 내용을 점검 순서로 묶은 것입니다. 묶는 방식은 편집 판단입니다.
  • 이 편은 공개 파일의 성질과 우리 사이트를 지키는 보호 수단만 다룹니다.
  • 예시 ①②③은 이해를 돕기 위해 만든 가상 상황이며, 실제 기업·기관의 사례가 아닙니다.
  • 원문은 영어판(hl=en)이고, 도구·보고서 이름은 같은 문서 한국어판(hl=ko) 표기를 따랐습니다. RFC 원문 속 "--" 는 원문 표기 그대로입니다.