브라우저 API 조작을 통해 Chrome 확장 프로그램에서 X-Frame-Options DENY 우회
많은 웹사이트에서 X-Frame-Options 헤더를 사용하여 방지합니다. 콘텐츠가 iframe에 삽입되지 않습니다. 이는 연결된 콘텐츠를 인라인으로 표시하기 위해 iframe을 사용하는 Intab과 같은 Chrome 확장 프로그램에 문제를 제기합니다.
이 문제를 해결하기 위해 확장 프로그램은 Chrome에서 제공하는 webRequest API를 활용하여 HTTP 요청을 가로채고 수정할 수 있습니다. 하위 프레임(iframe)을 대상으로 하고 X-Frame-Options 헤더를 제거하면 확장 프로그램이 이 제한을 우회할 수 있습니다.
이를 달성하는 방법을 보여주는 코드 조각은 다음과 같습니다.
chrome.webRequest.onHeadersReceived.addListener( function(info) { // Remove the X-Frame-Options header for (var i = info.responseHeaders.length - 1; i >= 0; --i) { if (info.responseHeaders[i].name.toLowerCase() === 'x-frame-options' || info.responseHeaders[i].name.toLowerCase() === 'frame-options') { info.responseHeaders.splice(i, 1); } } // Return the modified headers return { responseHeaders: info.responseHeaders }; }, { // Intercept all subframes urls: ['*://*/*'], types: ['sub_frame'] }, [ 'blocking', 'responseHeaders', // Extra headers are required for modern Chrome versions chrome.webRequest.OnHeadersReceivedOptions.EXTRA_HEADERS ].filter(Boolean) );
활성화하려면 이 기능을 사용하려면 확장 프로그램의 매니페스트에서 확장 프로그램이 가로채는 URL과 함께 webRequest 및 webRequestBlocking 권한을 선언해야 합니다(예: 모든 URL은 ":///*").
위 내용은 Chrome 확장 프로그램은 webRequest API를 사용하여 X-Frame-Options DENY를 어떻게 우회할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!