Q&A

_rx_csrf_token의 쓰임새

2020.04.02 12:26
361
0
CMS/프레임워크 Rhymix 1.9
개발 언어 PHP 7.0

문득 소스개발자도구를 보니  _rx_csrf_token 라는 게 눈에 들어오더군요.

 

혹시 이걸로 ajax 호출 대상이 되는 외부 php 파일의 직접 액세스를 막을 수 있는 건가요?

만약 그렇다면 외부 php 파일에서는 어떻게 불러올 수 있나요?

 

윤삼 Lv. 19
아무래도 중급 초반 수준의 코딩 오타쿠인 것 같습니다.

댓글 4

  • 2020.04.02 12:43 #1371424

    간단하게 설명하자면 외부에서 직접 요청을 막는 용도입니다.
    예를들어 procMemberLogin(맞나..?) 에 바로 요청을 꽂아넣어서 로그인 처리하는게 안된다는거지요.

    ./modules/module_name/conf/module.xml
    파일에 선언된 act 들에게 csrf_check="false" 속성을 주면 csrf확인을 하지 않아요.
    꼭 필요한 부분이 아닌 이상, 해당 옵션을 추가하는게 좋은 선택은 아닌듯 하지만요.

  • 2020.04.02 13:51 #1371444

    다름이 아니라 어제 질문했던 내용과 관련해서 https://stackoverflow.com/questions/6287903/how-to-properly-add-csrf-token-using-php 이런 걸 발견해서요.
     

    이외에도 찾아보니까 세션에 토큰을 저장했다가 ajax를 통해 외부 페이지에 POST로 넘기고 거기서 다시 세션값을 비교하는 방식을 추천하더라구요.

     

    그나저나 외부페이지에서는 $_SERVER['HTTP_X_CSRF_TOKEN'] 이걸로 _rx_csrf_token를 불러올 수 있군요.

  • 2020.04.03 01:15 #1371676

    아하. 본문 내용을 제대로 안읽었네요ㅠ
    외부에서 토큰 처리를 하는 방법이 필요한거였네요ㅋㅋㅋ;;;

  • 2020.04.03 01:38 #1371715
    아녜요. 글 제목이 쓰임새를 물어보는 것이어서요ㅎㅎㅎ
    덕분에 자료 탐색하면서 XE에서 그동안 있어왔던 csrf 보안 취약점 문제도 볼 수 있었고 많이는 아니더라도 조금이나마 공부의 시간이었어요.