저는 ZAP (자동 보안 검색 도구)를 사용하여 Meteor 응용 프로그램에서 보안 검사를 실행했습니다. 많은 보안 문제를 해결할 수 있었지만 여전히 응용 프로그램의 일부에 대한 경고가 표시됩니다. 예를 들어, 다음 오류 :
웹 브라우저 XSS 보호가 활성화되지 않았거나 웹 서버의 'X-XSS-Protection'HTTP 응답 헤더 구성에 의해 비활성화되었습니다.
이러한 경고는 HTTP 헤더와 관련이 있습니다.
다음 코드는 모든 일반 페이지에서 위의 헤더 보안 문제를 해결합니다.
WebApp.rawConnectHandlers.use(function(req, res, next) {
res.setHeader('X-XSS-Protection', '1; mode=block');
next();
});
그러나 모든 / sockjs / info? cb = XXX 호출 (예 : / sockjs / info? cb = 4yiv7ncev4)에서 res.setHeader ()로 추가 된 일부 헤더는 포함되지 않습니다. 내가 올바르게 이해한다면 이것은 구독이나 Meteor 메서드에 대한 호출과 같은 서버와 클라이언트 간의 호출이며 사용되는 프레임 워크는 SockJS입니다.
이러한 웹 소켓 연결에 추가 헤더를 포함하는 방법이 있습니까?
도와 주셔서 정말 감사합니다!
이 시도:
const oldHttpServerListeners = WebApp.httpServer.listeners('request').slice(0);
WebApp.httpServer.removeAllListeners('request');
const newListener = function(request, response) {
const args = arguments;
response.setHeader('X-XSS-Protection', '1; mode=block');
_.each(oldHttpServerListeners, function(oldListener) {
oldListener.apply(WebApp.httpServer, args);
});
};
WebApp.httpServer.addListener('request', newListener);
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다