2009-11-15 4 views

답변

5

Perl에서 CGI를 작성할 때 상당히 일반적인 방법이었습니다. There is even a FAQ on it. 기본 아이디어는 런타임이 사용자가 암시 적으로 을 신뢰하지 않았 음을 보장 할 수 있다는 것입니다.은 오염 된 값입니다.

+3

질문에 'ruby'태그가 붙어 있기 때문에 Ruby는 Perl에서이 기능을 복사했습니다. – ephemient

+0

죄송합니다. 언급하지 않았습니다. 감사합니다. –

6

신뢰할 수없는 데이터가 실수로 계산, 트랜잭션 또는 코드로 해석되지 않도록 보안 예방 조치로 추적합니다.

내장 된 언어 기능을 통한 추적 문제는 코딩 규칙을 추적하거나 코드 검토에 의존하는 것보다 훨씬 명확하고 신뢰할 수 있습니다.

예를 들어, 사용자 입력은 일반적으로 데이터베이스에 삽입하기 위해 적절하게 위생 처리 될 때까지 '신뢰할 수 없음'으로 간주 될 수 있습니다. 입력을 오염 된 것으로 표시함으로써 Ruby는 만족스러운 위생을 보장하고 잠재적 인 SQL 주입 공격을 방지합니다. 더러움이 펄과 루비 모듈없이 추적 된 방법을 보여줍니다에 "고대"(2005 년) 코딩 연습의 예를 들어

은 좋은 오래된 조엘 읽기 :

http://www.joelonsoftware.com/articles/Wrong.html

관련 문제