링크 url 직접 접근 막기

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!
링크 url 직접 접근 막기

QA

링크 url 직접 접근 막기

본문

현재 그누보드5나 영카트5에서 레벨제를 운영하고 있는데요...

 

권한이 없는 자가 내용을 보는 것 등은 일반적으로 잘되는데...

다운로드도 무난한 것 같습니다..

 

그런데 이미지도 중요 컨텐츠일텐데...

 

이미지 url이 노출되었을 경우 직접 주소창에 링크를 입력하고 접근하면 그냥 접근이 됩니다...

 

그래서 아래와 같이 한번 해봤는데 전혀 소용이 없네요...

 

===========================================================

.htaccess 화일작성후 설치 root에 업로드

 

RewriteRule \.(jpg|jpeg|png|gif)$ - [NC,F,L]
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?abc.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ - [NC,F,L]​

====================================

 

여기에 해법을 갖고 계시는 고수님들의 힌트를 부탁드립니다.. 

이 질문에 댓글 쓰기 :

답변 4

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} .*jpg$|.*gif$|.*png$|.*jpeg$ [NC]
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !abc\. [NC]
RewriteRule (.*) access_denied.png

네번째 abc는 url에 포함된 문자열입니다.
naver라면 abc 대신 naver이 들어가야겠죠.

위 처럼 시도해 보시죠 ^^

직접 테스트 해 보니 잘됩니다.

단, 맨 처음 불러 올때는 적용이 되지 않으나 새로고침하면 그때 부터

적용이 됩니다.

 

직접 주소창에 이미지 url을 넣고 접근하는 경우는 해당 사이트의 것으로 열리니 도리 없는 경우겠죠.

 

아래 내용은 타사이트의 페이지에서 이미지에 접근했을 때 이미지를 보이지 않는 경우입니다.

 

예를 들어 sir.co.kr 이라면

php_flag register_globals on

SetEnvIf Referer "sir\.co\.kr" link_allow
SetEnvIf Referer "www\.sir\.co\.kr" link_allow
Order Deny,Allow
Deny from all
Allow from env=link_allow

SetEnvIf Referer sir\.co\.kr go_in
SetEnvIf Referer www\.sir\.co\.kr go_in
SetEnvIf Referer ^$ go_in
Order Deny,Allow
Allow from env=go_in
Deny from all 

제가 적용해 본 사례로는
.htaccess 반영만으로는 안됩니다...
현재 위 내용이
http://nyjfc.365ok.kr에 적용되어 있지만
직접 이미지 url로 접근시 그대로 노출됩니다...
제가 볼 땐 별도의 php 함수를 만들어 직접 노출하는 것을 막는 방법을 해야 할 것으로 보입니다..

https://kldp.org/node/101802

여기 본문글이랑 댓글 참고해보세요~

리퍼러는 음.. 

우선은.. 질문글에 있는거에서는

RewriteEngine On

이게 먼저 들어가야 할거구요..

RewriteCond %{HTTP_REFERER} !^$

이건 빼주셔야 직접 주소창에 입력해서 접근시 막을수 있습니다. 저 구문이 리퍼러가 없는경우는 룰에서 제외하겠다는거니..

 

그리고 저도 보통은 rewrite보다는 네이비칼라님처럼 사용하는데

SetEnvIFNoCase Referer "^https?://(www.)?test.com" pass

<FilesMatch "\.([Gg][Ii][Ff]|[Jj][Pp][Ee]?[Gg]|[Pp][Nn][Gg]|[Bb][Mm][Pp])$">

Order deny,allow

deny from all

allow from env=pass

</FilesMatch>

이런식으로 썼습니다.

 

사이트를 직접 확인해봤더니

http://nyjfc.365ok.kr/img/banner01.jpg 이건 보여지고

http://nyjfc.365ok.kr/data/file/menu4/thumb-2040784209_1EuOvrpe_Hydrangeas_500x400.jpg​ 이건 막히는군요.

data디렉토리만 적용하신거라면 잘 적용된게 아닐까 싶은데요.. +_+

답변을 작성하시기 전에 로그인 해주세요.
전체 0
QA 내용 검색
  • 개별 목록 구성 제목 답변작성자조회작성일
  • 질문이 없습니다.

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT