나는 거의 모든 웹 브라우저 저장 기술에서 저장 작업을 수행하는 데 사용할 수있는 API를 제공하는 스크립트 개발을 거의 끝냈습니다.웹 브라우저 저장소 : 사용자가 제공 한 문자열을 평가할 수있는 보안 의미?
내가 작업하고있는 기능의 마지막 비트는 (물론) 조건부 표현식을 제공해야하는 조건부 검색 및 제거 작업입니다 (eval()을 사용하거나 webSQL, WHERE 뒤에 직접 삽입).
적어도 2 개의 완전한 파서 (webSQL 용, 하나는 indexedDB 용)가 필요합니다. 입력을 유효하게 확인하려면 입력을 구문 분석하거나 위생적으로 평가하는 것처럼 보이지만 불필요한.
나는 원시 문자열을 평가하는 보안 문제의 비트 확실 해요, 그래서 난 내 보안 평가에 대한 몇 가지 입력을 감사하겠습니다 :
사용자 : 입력을 평가
직접하거나 공급 또는 간접적으로 사용자가 이라는 저장소의 sanboxed 특성 (해당 출처에 대해서만 해당 사용자에게 액세스 할 수있는 데이터를 조작하려는 경우)과 아무 것도 할 수없는 사실 때문에 문제가되지 않아야합니다.로 끝내야합니다.브라우저에서 사용자가 직접 수행 할 수없는 API입니다.
타사 :
저장 기술은 할 수 없습니다, 따라서 접근을 동일 출처 정책을 준수하고, 다른 기원
내가했습니다 것처럼 내가 느끼는에 속하는 샌드 박스 저장 영역 내 평가에서 하나 이상의 가능한 보안 문제를 간과했다. 이게 맞습니까? 아니면 대부분의 평가가 맞습니까?
에 따라 다릅니다. 라이브러리를 사용하는 응용 프로그램이 타사에 도메인 간 인터페이스를 제공하는 경우 표현 문자열을 API로 보낼 수 있습니다.물론이 링크를 여는 부분 (여러분의 lib이 아닌)이 유효성 검사를 담당하지만 검증을위한 도구를 제공하는 것이 좋습니다. – Bergi