저는 V8을 처음 사용하고 파이썬 웹 애플리케이션에서이 제품을 사용할 계획입니다. 목적은 사용자가 특정 JS 스크립트를 제출하고 실행하게하는 것입니다. 분명히 이것이 보안 위협이기 때문에 v8을 잠글 수있는 방법을 문서화 한 리소스를 찾고 있습니다. 예를 들어, 호출 할 수있는 함수의 흰색 목록을 만들 수 있습니까? 또는 도서관의 블랙리스트를 참조 할 수 없습니까?V8을 "잠그는"방법?
답변
V8 인스턴스를 잠그는 것 (예 : chroot에서 권한을 부여하지 않음)과 일정 시간이 지나도 프로세스가 종료되지 않으면 프로세스가 종료되지 않습니까?
일반 V8 (node.js와 같은 것이 아닌)을 사용하면 위험한 기능이 없습니다. JavaScript 자체에는 파일 시스템 함수 등이 포함 된 stdlib이 없습니다.
악의있는 사용자가 수행 할 수있는 유일한 작업은 무한 루프, 심한 재귀 및 메모리 돼지 생성입니다.
늦은 코멘트에 대해 유감스럽게 생각한다. 그러나 나는 이것에 대해서도 관심이있다. 사용자가 메모리/처리 할당량을 초과하지 못하게하려면 어떻게해야합니까? – slezica
잘 모르겠다. 제발 [새로운 질문을 게시] (http://stackoverflow.com/questions/ask). – ThiefMaster
방금이 새로운 질문을 게시했습니다 : http://stackoverflow.com/questions/11637075/how-do-i-prevent-malicious-javascript-in-v8-with-python – Gattster
- 1. 스레드에서 v8을 사용하려면 어떻게해야합니까?
- 2. Visual C++ 2010에서 v8을 임베드
- 3. armv7 용 V8을 만드는 방법
- 4. V8을 사용하는 Python과 유사한 JS 인터프리터
- 5. V8을 사용하는 Javascript의 파일 시스템 I/O
- 6. 노드 최적화 된 V8을 만드는 사람이 있습니까?
- 7. V8을 사용하는 Node.js가 제한된 메모리 장치에 적합합니까?
- 8. V8을 사용하여 JavaScript를 네이티브 코드로 컴파일
- 9. Google V8을 사용하여 C++ 코드에서 JavaScript 예외를 throw
- 10. IP * Works V8을 사용하여 FTP를 통해 필터링 된 파일 목록을 검색하는 방법
- 11. 내 프로젝트 (C2143, C2059, ..)에 V8을 추가 한 후에 컴파일 오류가 발생했습니다.
- 12. 자바 스크립트에 문자열 데이터를 보내려면 어떻게해야하나요? 내가 V8을 사용하고 그리고 난 다음 문제에 직면
- 13. 독립 실행 형 자바 스크립트 응용 프로그램, html5 캔버스 게임 ... 이상적으로 V8을 사용하거나 브라우저 기반 게임 조정
- 14. Google의 V8 엔진은 실제로 프로세스 당 1 개의 VM으로 제한됩니까?
- 15. V8에서 비동기 적으로 C++ 및 JS 코드 실행
- 16. WebKit + V8은 어디에 있습니까?
- 17. C++ Builder 2007에서 vs2005로 컴파일 된 lib를 연결할 수 있습니까?
- 18. Google의 V8 JavaScript 엔진은 iOS에서 사용할 수 있습니까?
- 19. 비트 집합 <8>을 정수의 문자 배열로 변환 할 수 있습니까?
- 20. 노드에서 덤프 v8 JIT 출력
- 21. working map 갑자기 십자가 표시
- 22. C 응용 프로그램에 JavascriptCore 포함
- 23. QTCreator C++ 콘솔 프로젝트에 Google의 V8 Javascript 엔진 포함
- 24. PyV8에서 nodejs 모듈을로드하는 방법은 무엇입니까?
- 25. ADT 지원 라이브러리를 다시 설치하라는 메시지
- 26. C++을 사용하는 교차 플랫폼 재귀 파일 목록?
- 27. VS 2008에서 VSS 충돌을 일으킬 수 있습니다.
- 28. 자바 스크립트 엔진을 찾고
- 29. 이미지 텍스처와 Android OpenGL ES 용 3D 오브젝트의 색상?
- 30. 노드 : 공유 라이브러리를로드하는 중 오류가 발생했습니다. libv8.so.3
왜 그들이 파이썬 스크립트를 제출하도록 허용하지 않습니까? 이렇게하면 아키텍처가 단순해질 것이라고 생각합니다. :-) (그것을 언급해야했다). 그리고 네, 그 스크립트들을위한 안전한 파이썬 샌드 박스를 만들 수 있습니다. – Kos
@Kos 어떻게? 나는 또한 흥미 롭다. 그러나 나는 어디에서나 파이썬이 거의 unsandboxable이라는 것을 계속 읽고있다. – slezica