-2
몇일 동안 해결책을 찾고 있는데, ajax 호출에서 반환되는 취약한 Java 스크립트 변수를 수정하는 방법입니다.XSS - Ajax 호출 리턴 문자열이 jsp에서 자바 스크립트 변수에 할당
public String getDefaultCopyName(HttpServletRequest request, HttpServletResponse response,
Long serviceGroupId) {
MeoOptimizationSet set = service.find(serviceGroupId);
String name = set.getName() + getCopySuffix();
return name;
´}
var defaultName = '';
$.ajax({
url: "<c:url value='/MeoOptimizationSet-getDefaultCopyName.mvc'/>",
data: { serviceGroupId: selectedIds[0] },
success: function(data) {<b> defaultName = data</b>},
async: false
});
APP.confirm({
msg: "<br>"+label + "<br><br><input type='text' id='newName' size='40'
value='" + <b> defaultName </br> + "' />",
ok: function() {
//TODO
});
}
}
먼저 질문 형식을 지정하십시오. – BRjava
'async : false'가 더 이상 사용되지 않고 어쨌든 왜 필요한지 알 수 없으며 요청 중에 브라우저 UI를 잠그면 사용자 환경이 악화됩니다. 제거 할 수 있습니다. 귀하의 문제와 관련이 없으며 단지 일반적인 사항입니다. – ADyson
또한 예가 명확하지 않습니다. '성공 : 함수 (데이터) {defaultName = 데이터}'은 (는) 잘못된 자바 스크립트이므로 구문 오류가 발생합니다. 예제를 수정 한 다음 정확히 무엇이 문제인지 설명하고, 아약스 호출에서 반환되는 것이 무엇인지, 그리고 "취약한"것으로 간주되는 이유와 그 이유를 설명하십시오. – ADyson