본문 바로가기
MAKESITE

점검 항목 · 보안

CMS 버전 노출 · 취약 버전 사용

버전이 적혀 있다는 것 자체는 취약점이 아닙니다. 문제는 그 한 줄이 공격 준비를 「어디가 약한지 찾기」에서 「목록에서 골라 오기」로 바꾼다는 데 있습니다.

심각도 치명 보안 무료 스캔 판정 항목 /check/cms-version

01DEFINITION

한 줄로 말하면

사용 중인 프로그램의 종류와 버전이 응답 어딘가에 적혀 있으면, 공개된 취약점 목록과 대조하는 것으로 공격 준비가 끝납니다. 버전을 숨기는 것이 해결은 아니지만, 최신 패치가 적용되지 않은 채 버전까지 드러나 있는 상태는 표적이 되기에 충분한 조건입니다.

02RISK

없으면 무슨 일이 생기나

공격자는 취약한 사이트를 찾는 것이 아니라 특정 버전을 쓰는 사이트를 찾습니다. 새 취약점이 공개되면 그날부터 인터넷 전체를 훑어 그 버전을 쓰는 주소를 모으는 도구가 돕니다. 우리 응답에 버전이 적혀 있으면 그 목록에 자동으로 들어갑니다. 사람이 우리 사이트를 고른 것이 아니라 조건에 맞아서 걸린 것이라, 규모가 작다는 것은 방어가 되지 않습니다.

노출되는 자리가 한 곳이 아니라는 점이 이 항목을 성가시게 만듭니다. 서버 헤더를 지워도 메타 태그가 남고, 메타 태그를 지워도 스타일시트 주소 끝에 붙은 버전 문자열이 남습니다. 오류 화면 한 장에 스택 트레이스와 함께 프레임워크 버전이 통째로 찍히기도 합니다. 한 자리를 막고 「했다」로 넘어가면 나머지가 그대로 남습니다.

진짜 위험은 노출과 미패치가 겹칠 때 생깁니다. 최신 버전이라면 버전이 적혀 있어도 공격자가 쓸 것이 없습니다. 반대로 패치가 밀려 있는데 버전까지 적혀 있으면 표적이 되기에 충분한 조건이 갖춰집니다. 그래서 이 항목의 조치는 「지우기」가 아니라 「올리고 나서 지우기」 순서여야 합니다.

03CHECK IT YOURSELF

직접 확인하는 방법

아래는 저희를 거치지 않고 지금 해 보실 수 있는 방법입니다. 결과를 저희에게 보내실 필요도 없습니다.

  1. 01
    응답 헤더를 본다

    Server 와 X-Powered-By 가 가장 흔한 자리입니다. 버전 번호까지 적혀 있는지 보십시오. 솔루션에 따라 X-Generator 나 자체 헤더를 쓰기도 합니다.

    $ curl -sI https://example.com/ | grep -iE "server|x-powered-by|x-generator"
    server: Apache/2.4.52 (Ubuntu)
    x-powered-by: PHP/8.1.2

나머지 확인 방법 2단계는 셀프수리 가이드에 있습니다.

04HOW TO FIX

고치는 방법

서버 환경에 따라 적을 자리가 다릅니다. 아래는 가장 흔한 구성 기준이고, 적용 전에 현재 설정을 백업하십시오.

먼저 올린다 — 이것이 본체다

패치가 밀려 있는 상태에서 버전만 지우면 위험은 그대로이고 우리만 상태를 모르게 됩니다. 쓰는 솔루션과 플러그인의 현재 버전을 적어 두고 공개 취약점 목록과 대조하십시오. 올릴 수 없는 사정이 있다면 그 사실과 대신 둔 방어를 문서로 남기십시오.

서버가 붙이는 것을 줄인다
메타와 자산 주소를 정리한다
조치 코드는 셀프수리 가이드에 있습니다. 서버 구성별 설정 원문 3단계와, 귀사 사이트에서 실제로 관찰된 값이 함께 실립니다 — 무엇을 어디에 적어야 하는지가 정해집니다.
가이드 안내 보기 · 먼저 무료로 진단받기
이미 열람권을 구매하셨다면 안내 메일의 가이드 링크로 바로 열립니다 — 링크를 잃으셨다면 문의 주시면 다시 보내 드립니다.
주의. 버전을 감추는 것은 자동화 도구의 1차 선별에서 빠지는 효과가 있을 뿐입니다. 실제로 취약한 버전이라면 요청 몇 번으로 판별됩니다. 감추기를 조치의 전부로 적어 두면 다음 사람이 패치를 끝난 일로 읽습니다.

05FAQ

자주 묻는 질문

버전을 감추면 진짜로 공격이 줄어드나요

넓게 훑는 자동화 공격에서는 줄어듭니다. 그 도구들은 조건에 맞는 주소만 모아 두고 나중에 한꺼번에 시도하기 때문입니다. 반대로 우리를 특정해서 노리는 상대에게는 거의 의미가 없습니다. 그래서 이 항목의 효과는 「표적 목록에 안 들어가는 것」까지이고 그 이상을 기대하면 안 됩니다.

최신 버전이면 노출돼도 괜찮은가요

위험은 크게 줄지만 두 가지가 남습니다. 하나는 새 취약점이 공개되는 날 바로 목록에 드는 것이고, 다른 하나는 어떤 솔루션을 쓰는지가 알려지면서 그 솔루션에만 있는 설정 실수를 함께 노려 볼 수 있게 된다는 것입니다. 최신을 유지하면서 굳이 적어 둘 이유는 없습니다.

플러그인 버전도 봐야 하나요

오히려 그쪽이 더 자주 문제입니다. 본체는 자동 업데이트가 되는데 플러그인은 손이 안 가는 경우가 많고, 공개 취약점도 플러그인 쪽이 훨씬 많습니다. 자산 주소 끝에 붙은 버전 문자열이 대개 플러그인의 것이므로 그 목록부터 뽑아 보십시오.

헤더를 지웠는데도 이 항목에 걸립니다

자리가 여럿이라 그렇습니다. 메타 태그, 자산 주소의 버전 문자열, 오류 화면, RSS 피드의 generator, 그리고 솔루션이 만드는 readme 나 changelog 파일이 흔히 남습니다. 위 확인 세 가지를 모두 돌려 보고, 그래도 남는다면 어떤 문자열이 잡혔는지가 유료 진단 리포트에 근거로 적힙니다.
여기까지는 항목 일반론입니다. 무엇이고 왜 문제이며 어떻게 고치는지는 감출 이유가 없어 그대로 적었습니다. 리포트에 들어가는 것은 귀사 사이트에서 실제로 어떤 값이 나왔는지 — 어느 주소의 어느 응답인지, 그 환경에서 어떤 순서로 적용해야 하는지, 예상 공수가 얼마인지입니다. 이 페이지만 보고 직접 고치셔도 되고, 실제로 그러시라고 적어 두었습니다.

GET STARTED

내 사이트는
이 항목을 통과할까요

주소만 넣으시면 이 항목을 포함해 58가지를 판정해 점수와 실패 개수를 보여 드립니다. 로그인도, 소유 확인도 필요 없습니다 — 전부 밖에서 관찰만 하는 항목이기 때문입니다.

무료 스캔 문의하기 로그인