몇시간 전에 제가 보안이 중요한 홈페이지는 seo모듈을 끄라고 올렸습니다.

왜 그런지 알려드립니다.

일단

bandicam 2017-07-10 13-07-42-356.jpg

모든 권한을 관리자한테 할당한 게시판을 하나 만들었습니다.

당연히 관리자로 로그인 안하면 글을 쓸수도 볼수도 없습니다.

그리고

bandicam 2017-07-10 13-08-49-510.jpg

 seo모듈 설정은 검색엔진 최적화 기능을 켜놓습니다.

게시글을 하나 쓰고 나서 보면은

bandicam 2017-07-10 13-10-05-739.jpg

당연히 보입니다.

(내용에 사심이 많이 들어갔네요.)

로그인한 관리자 니깐 보입니다.

로그아웃을 하고 게시글을 보면

bandicam 2017-07-10 13-10-37-789.jpg

뜨는건 저렇게 뜨는데

F12를 누르고 html원본 문서로 받아서 보면

bandicam 2017-07-10 13-11-54-132.jpg

이렇게 메타테그로 내용이 전부 유출이...............

(다수가 쓰는 홈페이지면 진짜 큰일이 나겠죠)

다시 seo 모듈가서

bandicam 2017-07-10 13-12-37-774.jpg

검색엔진 최적화 기능을 끄고 나서

똑같이 로그인을 안하고 html 원본 내용을 보면

bandicam 2017-07-10 13-13-42-632.jpg

 안보입니다.

메타테그가 다 빠졌기 때문입니다.

웬만한 검색엔진은 메타테그를 통해서 게시글 내용을 상위로 검색하는편 입니다.

하지만 보안이 중요하다면은 반드시 끄셔야 합니다.

모듈명만 알면 문서번호 무작위 대입으로 내용이 유출될수 있기 때문입니다.

(이미 프로그램 나와있어요.)

  • profile
    설명에 사심이 많이 들어가네요,비와서 그런가
  • profile
    필요하다면 비밀글인 경우 모듈 자체를 멈춰버리면 해결할 수 있긴 하겠네요.
  • ?

    사이트에 따라 문제가 생길 수도 있겠네요. 좋은 정보 감사합니다.

     

     

    modules/seo/seo.controller.php

     

    if (!$oDocument->isSecret()) {

     

    부분을 찾아 아래와 같이 변경.

     

    if (!$oDocument->isSecret() && Context::get('grant')->view) {

     

     

  • ? profile
    해결책 좋습니다.
  • ? profile
    list도 해야죠..
    Context::get('grant')->list
  • profile

    이런 문제는 XE 개발팀에게 보안취약점 신고를 하시거나 깃허브에 이슈를 등록하시는 것이 좋겠습니다. 요즘 XE 개발이 많이 침체되어 있기는 하지만, 보안상 문제가 될 수도 있는 이슈는 비교적 빨리 처리해 주거든요. 코어에 정식으로 패치가 반영되어야 더 많은 사람들이 혜택을 보지요.

  • profile profile
    xe에 등록 해놨으니 수정되기를 기대하고 있습니다
  • profile profile
    이미 다른 분이 발빠르게 이슈를 등록하셨네요 ㄷㄷㄷ
  • profile profile
    보자마자 등록 하신듯 합니다.
  • profile
    3개월전부터 알고 있던거 공개했는데 난리가.........