2017-11-28 4 views
-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 
    }); 
    } 
    } 
+0

먼저 질문 형식을 지정하십시오. – BRjava

+0

'async : false'가 더 이상 사용되지 않고 어쨌든 왜 필요한지 알 수 없으며 요청 중에 브라우저 UI를 잠그면 사용자 환경이 악화됩니다. 제거 할 수 있습니다. 귀하의 문제와 관련이 없으며 단지 일반적인 사항입니다. – ADyson

+0

또한 예가 명확하지 않습니다. '성공 : 함수 (데이터) {defaultName = 데이터}'은 (는) 잘못된 자바 스크립트이므로 구문 오류가 발생합니다. 예제를 수정 한 다음 정확히 무엇이 문제인지 설명하고, 아약스 호출에서 반환되는 것이 무엇인지, 그리고 "취약한"것으로 간주되는 이유와 그 이유를 설명하십시오. – ADyson

답변

0

내 퀘스트는 그냥 내가 컨트롤러 방법은 JSPajax 발신자 방법에 어떤 값을 반환 JSP에서 자바 컨트롤러에 아약스 전화를 알고 싶어 내가 변수 자바 스크립트에 값을 할당하고, 매우 간단

var defaultName = ''; 
    $.ajax({ 
     url: "/abc.mvc", 
     data: { id: 1001}, 
     success: function (data) { 
     defaultName = data 
    } 
    }); 

크로스 사이트 스크립팅 (XSS)에서 dafalutName 할당을 어떻게 보호 할 수 있습니까?

관련 문제