2013-04-06 3 views
2

민감한 입력 값을 Jquery 변수에 할당하는 것이 안전합니까? 예를 들어 ,민감한 입력 값을 Jquery 변수에 할당하는 것이 안전합니까?

var creditcardnum = $("input#cardNumber").val(); 
//do some things 
$("input#abc").val(creditcardnum); 

I는 서버에 민감한 데이터를 송신하고 있지 않다 I은 상기 코드 JQUERY 변수에 민감한 값을 할당하고있다. (즉, 다른 페이지에서는 변수를 호출하지 않습니다.) SSL을 사용하지만 안전 연습인지 확실하지 않았습니다.

+1

네, 괜찮습니다. CC#가 이미 페이지 (또는 숨겨진 필드 또는 다른 것)의 어딘가에 표시된 경우 CC 번호로 다른 변수 값을 설정해도 실제로 차이가 없습니다. – highwingers

+1

물론입니다. SSL과 보안 서버없이 신용 카드 정보를 요구하지 않고 고객 측의 한 요소에서 다른 요소로 값을 복사하는 것만으로도 사이트의 보안에는 아무런 영향을 미치지 않습니다. – adeneo

답변

1

입력 값을 설정하기 위해 jQuery를 사용하면 보안 구멍이 추가되지 않습니다. 값은 jQuery 오브젝트로 설정되지 않습니다. jquery 메소드를 사용하여 입력으로 설정됩니다.

다른 스크립트는 jQuery를 사용하여이 입력 값을 볼 수 있습니다. jQuery.valHooks.input 객체에 추가 할 수있는 val 필터를 사용하여 jQuery val 메소드의 입력을 수신 대기 할 수도 있습니다.

iframe없이 상업용 위젯에서이 페이지에 추가 할 다른 스크립트는 신뢰할 수 있어야합니다.

위험은 서버로 데이터를 보내는 데 있지만 SSL을 사용하는 것입니다.

1

jQuery를 사용하여 클라이언트 쪽 조작 만하고 서버에 데이터를 보내지 않는다고 가정하면 안전해야합니다. 클라이언트와 서버간에 데이터가 전송 될 때 위험이 따릅니다.

작성한 객체를 모두 삭제해야 할 수도 있습니다. 따라서 creditcardnum 변수를 명시 적으로 null로 설정 했으므로 변수를 범위 지정하는 경우에는 자동으로 해제됩니다. 기능이 수행됩니다. 변수 범위를 유지하는 접근법을 보여주는 Module Pattern을 살펴보십시오.

+0

답변 해 주셔서 감사합니다! 나 같은 멍청한 놈에 대해 이해하기가 더 쉽기 때문에 나는 다른 대답을 선택했다. –

관련 문제