[NGINX] block download from bad-referer (Deny all but specific domains)

2020-03-16 KENNETH 0

개요 nginx 운영중 이미지 외부링크와 관련되어 문제 발생시 이를 해결하는 방법이 좀 나오는데, 그 중, 간단하면서도 나름 상위에 나오는 설정인 이 설정을 해놓고 나서, 본인의 사이트에는 이미지 출력이 잘 되고 있으며 (문제가 없으며) 도메인이 다른 다른 사이트에 <img src> 태그를 이용해서 불러들일 시 “fobidden” 출력 결과가 나오기 때문에 “음… 잘 되었구나… “를 판단할 수 있으나 정작 운영시에는 외부에서 퍼가고 있음을 알 수 있다. 물론, 내가 운영하는 jirak.net 에는 이런 문제가 없다. 외부에서 퍼갈일이 없거든… 각설하고…ㄷ ㄷ ㄷ   상황가정 사용중인 자신의 도메인 (또는 거부하지 않고 허용해줘야 하는 도메인) jirak.net google.com     거부해야 하는 도메인 (자꾸만 이미지를 퍼가는 도메인) hahaha.com hohoho.com     설정 nginx.conf server{} 섹션 내부에 사용 하시라는 의미를 전달합니다…   block_referer_check.conf referer 를 확인해서 “$bad_referer” 로 지정 1. 원하는 도메인만 차단 하는 경우   2. 특정 도메인을 제외하고는 모두 차단 하는 경우   block_referer_deny.conf “$bad_referer”에 대한 액션 [ more… ]

[CVE-2020-1938] apache tomcat 취약점에 따른 업데이트시 참고 사항

2020-03-10 KENNETH 0

CVE-2020-1938 취약점 CVE : http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-1938 KISA : https://www.krcert.or.kr/data/secNoticeView.do?bulletin_writing_sequence=35292APACHE : http://tomcat.apache.org/security-7.html#Fixed_in_Apache_Tomcat_7.0.100   취약점 해결을 위해서는 tomcat 을 최신버전으로 업데이트 해줘야 한다. 2020.03.10 기준 tomcat7 의 경우 7.0.100 버전 으로 tomcat8 의 경우 8.5.51 버전 으로 tomcat9 의 경우 9.0.31 버전 으로 업데이트를 해줘야 한다.   발단 tomcat7 을 사용중인 서버가 있어 기존 : tomcat-7.0.64 변경 : tomcat-7.0.100 으로 계획후 작업을 진행 별다른 이슈가 없을것으로 보였고, 작업을 진행했으나 문제 발생   발생한 문제점 1. 에러로그 발생 The AJP Connector is configured with secretRequired=”true” but the secret attribute is either null or “”. 기존에 존재하지 않았던 로그   2. 503 오류 발생 jsp 페이지 자체가 로딩되지 않는 문제가 있었다.     해결 1. secretRequired=”true” 참조 : https://tomcat.apache.org/tomcat-7.0-doc/changelog.html Rename the requiredSecret attribute of the AJP/1.3 Connector to secret and add a new attribute secretRequired that defaults to true. When secretRequired is true the AJP/1.3 [ more… ]

인증기관 허가(CAA, Certificate Authority Authorization)

2020-01-30 KENNETH 0

인증기관 허가(CAA, Certificate Authority Authorization) 참조URL(한글) : https://letsencrypt.org/ko/docs/caa/ 참조URL(영문) : https://letsencrypt.org/docs/caa/   개요 (letsencrypt 사이트 발췌… 귀챦아서.. ㅎ) CAA는 사이트 소유자가 도메인 이름을 포함한 인증서를 발급할 수 있는 CA (인증 기관)를 지정할 수 있도록 하는 DNS 레코드 유형입니다. CA가 의도하지 않은 인증서 오용의 위험을 줄이기 위해 RFC 6844에 의해 2013년에 표준화되었습니다. 기본적으로 모든 공용 CA는 공용 DNS의 모든 도메인 이름에 대한 인증서를 발급할 수 있습니다 (단, 해당 도메인 이름의 제어를 확인한 경우). 즉 많은 공용 CA의 유효성 검사 프로세스 중 하나에 버그가 있는 경우, 모든 도메인 이름이 잠재적으로 영향을 받습니다. CAA는 도메인 소유자가 이 위험을 줄일 수 있는 방법을 제공합니다.   설명하는것은 여기 까지고.. ㅎ 좀 극단적으로 표현하자면 내 사이트의 인증서는 “여기(발급업체)” 에서 발급하는거야(여기 것만 유효한거야) 라는 표현정도랄까…   적용방법 DNS에 직접 작업을 진행하는 형태이고 만약 사용중인(또는 발급예정인) 인증기관이 “letsencrypt.org”라고 한다면 이러한 형태로 레코드를 추가하면 되겠다. 보다 정확한 레코드 생성을 [ more… ]

nginx 에서 이미지 직접 접근 차단

2019-08-22 KENNETH 1

내 사이트에 업로드된 이미지를 외부로 부터 차단하는 방법은 대략 2가지가 있다고 하자.* 전통적인 이미지 무단링크(hotlink) 방지* 이미지 파일 직접 접근 자체를 제한 1. 이미지 무단링크 방지 1.1 개요도메인 : jirak.net원하는 것 : 타사이트에서 무단으로 이미지를 퍼가는 것을 방지 하고자 한다.(설명을 위한 상황 설정인 것이고, 나는 딱히 필요는 없다.. ㅋㅋㅋㅋ) 1.2 설정 nginx.conf 기본 설정 block_img.conf 설정꼭 이렇게 나눠야 하나??싶지만 나눠놓으면 그건 그것대로 편하다 access_log off 설정은 절실한것은 아니고 쓸데없이 로그를 안남기도록 하는것 뿐 2. 이미지파일 직접 다운로드 제한 2.1 개요도메인 : jirak.net원하는 것 : 사이트에 들어와서 이미지를 보는것이 아니라 이미지주소만 어딘가에 뿌려져서 마구 접속이 발생하는 상황을 막는것 2.2 설정 nginx.conf 기본 설정 위와 동일 block_img.conf 설정 ㅇㅇ 이정도면 될듯…

[openssl] “Mac verify error: invalid password?” when Changing from pfx to pem certificates

2019-05-29 KENNETH 0

1. 목적 윈도우용으로 발급되었던 인증서 PFX 파일을 아파치 환경에서 사용하기 위해 PEM 형태로 변환 해야 함   2. 문제점 Mac verify error: invalid password? 이미 사용중인 인증서 패스워드도 정확히 인지 하고 있는 상태에서 변환 시도를 하면 “패스워드가 맞지 않는다” 라고 나옴… (패스워드는 “정확함” 을 가정)   3. 원인 현재 찾는중….     4. 해결법 “-password” 옵션 사용 -password 옵션 사용시 정상 처리 됨을 확인 가능   보통 인증서 변환에 대해 찾아보면 인증서 추출 openssl pkcs12 -in choilha.pfx -clcerts -nokeys -out choilha.crt 키파일 추출 openssl pkcs12 -in choilha.pfx -nocerts -nodes -out choilha.key 이런 형태로 소개가 되어 있음… 혹, 패스워드 이슈가 발생 한다면 인증서 추출 openssl pkcs12 -in choilha.pfx -clcerts -nokeys -out choilha.crt -password pass:lovechoilha 키파일 추출 openssl pkcs12 -in choilha.pfx -nocerts -nodes -out choilha.key -password pass:lovechoilha   이렇게 해보시면 되겠다…