신뢰할 수없는 개체를 오염 된 것으로 표시 할 가능성을 알고 있지만 근본적인 목적은 무엇이며 왜해야합니까?Ruby 객체를 오염시키는 목적은 무엇입니까?
답변
Perl에서 CGI를 작성할 때 상당히 일반적인 방법이었습니다. There is even a FAQ on it. 기본 아이디어는 런타임이 사용자가 암시 적으로 을 신뢰하지 않았 음을 보장 할 수 있다는 것입니다.은 오염 된 값입니다.
질문에 'ruby'태그가 붙어 있기 때문에 Ruby는 Perl에서이 기능을 복사했습니다. – ephemient
죄송합니다. 언급하지 않았습니다. 감사합니다. –
신뢰할 수없는 데이터가 실수로 계산, 트랜잭션 또는 코드로 해석되지 않도록 보안 예방 조치로 추적합니다.
내장 된 언어 기능을 통한 추적 문제는 코딩 규칙을 추적하거나 코드 검토에 의존하는 것보다 훨씬 명확하고 신뢰할 수 있습니다.
예를 들어, 사용자 입력은 일반적으로 데이터베이스에 삽입하기 위해 적절하게 위생 처리 될 때까지 '신뢰할 수 없음'으로 간주 될 수 있습니다. 입력을 오염 된 것으로 표시함으로써 Ruby는 만족스러운 위생을 보장하고 잠재적 인 SQL 주입 공격을 방지합니다. 더러움이 펄과 루비 모듈없이 추적 된 방법을 보여줍니다에 "고대"(2005 년) 코딩 연습의 예를 들어
은 좋은 오래된 조엘 읽기 :- 1. 레이크의 목적은 무엇입니까?
- 2. Ruby EventMachine, Python Twisted 또는 JavaScript Node.js의 요점/목적은 무엇입니까?
- 3. 마커 인터페이스의 목적은 무엇입니까?
- 4. ActionScript에서 ModelLocator Singleton의 목적은 무엇입니까
- 5. '신원 기능'의 목적은 무엇입니까?
- 6. 이벤트 호출자의 목적은 무엇입니까?
- 7. LoweredUserName의 목적은 무엇입니까?
- 8. 내부 클래스의 목적은 무엇입니까?
- 9. 예외의 목적은 무엇입니까?
- 10. 지점 폐쇄의 목적은 무엇입니까
- 11. 의도 카테고리의 목적은 무엇입니까?
- 12. System.Data.SqlClient.SqlParameter.IsNullable의 목적은 무엇입니까?
- 13. NSNotification의 목적은 무엇입니까
- 14. __cxa_pure_virtual의 목적은 무엇입니까?
- 15. _GLOBAL__I_의 목적은 무엇입니까?
- 16. 혼합 생성자의 목적은 무엇입니까?
- 17. RegisterGlobalFilters의 목적은 무엇입니까? MVC3에서
- 18. GetPrivateProfileString의 목적은 무엇입니까?
- 19. _never_executed()의 목적은 무엇입니까?
- 20. 익명 형식의 목적은 무엇입니까?
- 21. ThreadLocal의 목적은 무엇입니까?
- 22. webAppRootKey의 목적은 무엇입니까?
- 23. CreateSilverlight.js의 목적은 무엇입니까?
- 24. 경고 메시지의 목적은 무엇입니까?
- 25. eclipse에서 CDT의 목적은 무엇입니까?
- 26. WebExceptionStatus.Success의 주 목적은 무엇입니까?
- 27. Function.const의 목적은 무엇입니까?
- 28. 레 명령 목적은 무엇입니까?
- 29. ServiceSecurityContext.WindowsIdentity의 목적은 무엇입니까?
- 30. 내부 기능의 목적은 무엇입니까?
당신은 또한보고 할 수 있습니다 at $ SAFE –