programing

iframe에서 'X-Frame-Options'를 설정하는 방법

projobs 2022. 9. 22. 22:09
반응형

iframe에서 'X-Frame-Options'를 설정하는 방법

내가 '만들기'를,iframe 이렇게요.

var dialog = $('<div id="' + dialogId + '" align="center"><iframe id="' + frameId + '" src="' + url + '" width="100%" frameborder="0" height="'+frameHeightForIe8+'" data-ssotoken="' + token + '"></iframe></div>').dialog({

오류 수정 방법:

" " " 를 했습니다.'https://www.google.com.ua/?gws_rd=ssl''으로 설정했기 에 'X-Frame-Options'를 'SAMEORIGIN'으로 설정했기 때문에 에서 사용할 수 .

JavaScript를 사용할 수 있습니까?

설정할 수 .X-Frame-Options iframe으로 설정된 」 header」).google.com.ua★★★★★★★★★★★★★★★★★★★★★」을 '다'로 했습니다.SAMEORIGIN합니다.iframe그들의 영역 밖입니다.자세한 내용은 MDN의 X-Frame-Options 응답 헤더를 참조하십시오.

에 Chrome 되어 있음)를퀵하면 ('Chrome'의 'Chrome'의 ''의 'Chrome'의 'Chrome'의 'Chrome'의 'Chrome'의 'Chrome'의 'Chrome'의 'Chrome'의 'Chrome'의 'Chrome'을 알 수 있습니다.X-Frame-Options이치노

여기에 이미지 설명 입력

X-Frame-Options는 요청된 도메인이 프레임 내에서 자신을 표시할 수 있는지 여부를 기술하는 요구에 대한 응답에 포함된 헤더입니다.javascript나 HTML과는 무관하며 요청 발신자가 변경할 수 없습니다.

웹 이가 이 an 되지 않도록 되어 있습니다.iframe클라이언트측 웹 브라우저에서는 이 동작을 정지할 수 없습니다.

X-Frame-Options에 대한 자세한 내용

의 할 수 있는 는, iframe 의 할 수 .X-Frame-Options을 사용하다

Apache 설정

모든 페이지에 대해 X-Frame-Options 헤더를 보내려면 사이트 구성에 다음을 추가합니다.

Header always append X-Frame-Options SAMEORIGIN

nginx 설정

X-Frame-Options 헤더를 송신하도록nginx 를 설정하려면 , 다음의 어느쪽인가를 http, 서버, 또는 로케이션의 설정에 추가합니다.

add_header X-Frame-Options SAMEORIGIN;

설정 없음

이 헤더 옵션은 옵션입니다.이 옵션이 전혀 설정되어 있지 않은 경우 다음 인스턴스(예: 방문자 브라우저 또는 프록시)에 이 옵션을 설정할 수 있습니다.

출처 : https://developer.mozilla.org/en-US/docs/Web/HTTP/X-Frame-Options

서버 측에서는 실제로 솔루션이 언급되지 않았기 때문에:

이러한 설정(apache의 예)이 필요합니다.이것은 모든 것을 가능하게 하는 최선의 옵션은 아니지만, 서버가 올바르게 동작하고 있는 것을 보면, 설정을 간단하게 변경할 수 있습니다.

           Header set Access-Control-Allow-Origin "*"
           Header set X-Frame-Options "allow-from *"

만약 아무것도 도움이 되지 않고, 그 웹 사이트를 iframe에 표시하고 싶다면, 프록시를 사용하는 X Frame Bypass 컴포넌트를 사용하는 것을 고려해 주십시오.

별로...나는 사용했다

 <system.webServer>
     <httpProtocol allowKeepAlive="true" >
       <customHeaders>
         <add name="X-Frame-Options" value="*" />
       </customHeaders>
     </httpProtocol>
 </system.webServer>

가 X-Frame-Options HTTP 의 할 수 수 .<frame>,<iframe> ★★★★★★★★★★★★★★★★★」<object>사이트에서는 이 기능을 사용하여 클릭잭킹 공격을 피할 수 있습니다.클릭잭킹의 콘텐츠는 다른 사이트에 삽입되지 않습니다.

상세한 것에 대하여는, https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options 를 참조해 주세요.

이 문제에 대한 대체 솔루션이 있습니다.이것에 대해서는, PHP 를 사용해 설명하겠습니다.

iframe.disples:

<iframe src="target_url.php" width="925" height="2400" frameborder="0" ></iframe>

target_url.syslog:

<?php 
  echo file_get_contents("http://www.example.com");
?>

또한 피싱 및 기타 보안 위협을 방지하기 위한 새로운 브라우저 보안 기능입니다.크롬의 경우 브라우저가 요청을 거부하는 것을 방지하기 위해 확장을 다운로드할 수 있습니다.WordPress를 로컬로 작업할 때 이 문제가 발생했습니다.

이 내선번호는 https://chrome.google.com/webstore/detail/ignore-x-frame-headers/gleekbfjekiniecknbkamfmkohkpodhe 입니다.

(이 문제를 해결하기 위해 작성한 회피책을 공유하고 싶기 때문에 이 답변을 부활시킵니다.)

웹 수 웹 페이지 할 수 있습니다.<iframe>요소에서는 할 수 있습니다.X-Frame-Options웹 서버(업스트림)에서 웹 페이지를 요구하여 최종 사용자에게 제공할 수 있는 CORS 대응 리버스 프록시를 사용하는 경우의 SAME ORIGIN 제약 사항.

다음은 개념의 시각도입니다.

여기에 이미지 설명 입력

발견한 CORS 프록시가 마음에 들지 않았기 때문에 스스로 CORSFlare라는 프록시를 만들었습니다.이 프록시는 Cloudflare Worker(서버리스 컴퓨팅)에서 실행되도록 설계되어 있기 때문에 하루에 100,000개 이상의 요청을 받아들일 필요가 없는 한 100% 무료 회피책입니다.

프록시 소스 코드는 GitHub에서 찾을 수 있습니다.설치 절차를 포함한 전체 문서는 제 블로그의 이 게시물에서 찾을 수 있습니다.

이를 위해서는 Apache 또는 사용 중인 다른 서비스의 위치를 일치시켜야 합니다.

apache를 사용하는 경우 httpd.conf 파일에 있습니다.

  <LocationMatch "/your_relative_path">
      ProxyPass absolute_path_of_your_application/your_relative_path
      ProxyPassReverse absolute_path_of_your_application/your_relative_path
   </LocationMatch>

해결책은 브라우저 플러그인을 설치하는 것입니다.

Header HTTP를 하는 웹 X-Frame-Options 「」으로DENY (오류)SAMEORIGIN이 동작을 변경하지 않는 , 해 이 주세요.이 플러그인은 「」를 무시합니다.X-Frame-Options헤더(예: Chrome의 X-Frame 헤더 무시).

이는 보안상의 이유로 권장되지 않습니다.

iframe에 로드하는 사이트의 웹 설정에서 x-frame-option을 다음과 같이 설정할 수 있습니다.

<httpProtocol>
    <customHeaders>
      <add name="X-Frame-Options" value="*" />
    </customHeaders>
  </httpProtocol>

x-iframe은 사이트 소유자가 제공해야 하고 서버 규칙 내에 있으므로 HTML 본문에 실제로 추가할 수 없습니다.

타겟 URL의 내용을 로드하는 PHP 파일을 생성하여 해당 php URL을 프레임화하면 원활하게 동작합니다.

tomcat instance level config 파일(web.xml)에서 web.xml config 파일에 filter와 filter-filter를 추가해야 합니다.[ X - frame - options = DENY ]가 글로벌 설정이기 때문에 모든 페이지에 추가됩니다.

<filter>
        <filter-name>httpHeaderSecurity</filter-name>
        <filter-class>org.apache.catalina.filters.HttpHeaderSecurityFilter</filter-class>
        <async-supported>true</async-supported>
        <init-param>
          <param-name>antiClickJackingEnabled</param-name>
          <param-value>true</param-value>
        </init-param>
        <init-param>
          <param-name>antiClickJackingOption</param-name>
          <param-value>DENY</param-value>
        </init-param>
    </filter>

  <filter-mapping> 
    <filter-name>httpHeaderSecurity</filter-name> 
    <url-pattern>/*</url-pattern>
</filter-mapping>

언급URL : https://stackoverflow.com/questions/27358966/how-to-set-x-frame-options-on-iframe

반응형