2013-03-21 3 views
2

gwt-maven-plugin을 사용하여 GWT 앱을 빌드하면 .war 파일이 생성됩니다. 현재이 .war 파일에는 쿼리 매개 변수 gwt.codesvr=...이 지정되면 개발 (네이 호스팅) 모드로 실행하는 데 사용되는 hosted.html이라는 파일이 포함되어 있습니다.GWT 앱의 .war 파일에서 hosted.html을 삭제해야하나요? 방법?

.war 파일을 프로덕션 환경에서 사용하는 데 보안 위험이 있습니까? 아니면이 파일이 .war 파일로 끝나지 않는 또 다른 이유가 있습니까?

그렇다면 가장 간단한 방법은 무엇입니까?

감사합니다.

답변

3

GWT dev 플러그인은 host +.h의 webserver + codeserver 쌍을 허용 목록으로 만들어야 만 hosted.html을 배포 할 때 보안 위험이 전혀 없습니다. 배포의 이점은 프로덕션 서버로 응용 프로그램을 디버깅 할 수 있다는 것입니다.

참고 : "허용되는 간단한 쿼리 문자열 매개 변수로 트리거 된 XSS"를 허용하려면 허용 목록을 만들어야합니다. 그렇지 않으면 공격자가 자신의 코드 서버로 신뢰할 수있는 GWT 앱을 실행하게 할 수 있습니다.

+0

고마워요! 조금 더 명확히 할 수 있습니까? (그리고/또는이 시점에서 문서를 가리키고 있습니까?) 어떤 호스트 + 포트가 화이트리스트에 있어야합니까? 어디에 GWT dev 플러그인을 사용할 때 어디에서 네트워크 연결이 설정 되었습니까? http://example.com/bank/gwtapp?gwt.codesvr=127.0.0.1:9997 (내 브라우저가 해당 사이트의 hosted.html을 실행하도록)로 이동하고 로컬 '코드 서버'를 실행하면 추가 정보 나는 그 사이트에서 갈거야? –

+0

이렇게하면 GWT Dev Plugin이 실제로 시작하기 전에 "example.com:80 → 127.0.0.1:9997"허용 목록을 표시합니다. 이렇게하면 공격자가 코드 서버와 함께 신뢰할 수있는 웹 응용 프로그램 (간단한 쿼리 문자열 매개 변수에 의해 트리거되는 XSS와 동일)을 사용할 수 있습니다. –

+0

확인해 주셔서 감사합니다. 그러나 여기에 대한 우려는 실제로 반대 방향입니다 : 나는 GWT-Java 코드를 통해 디버깅하기 위해 bank/gwtapp에 디버거를 부착하거나 GWT 앱에서 다른 추가 정보를 얻을 수 없어야합니다. '? gwt.codesvr = ...'는 나를 (공격자로서) 그렇게 할 수있게합니까? –