나는 CreateUserWizard 컨트롤, Login 컨트롤 등의 다양한 ASP.NET 컨트롤을 사용하고 있습니다 ... 사용자 지정 컨트롤의 경우 예상 값과 일치하는지 확인하여 입력을 삭제했습니다. 그러나 CreateUserWizard 컨트롤과 같은 컨트롤에 필요하거나 내부에서 처리되는 것입니까? 이러한 컨트롤에 추가 서버 측 유효성 검사를 추가로 제공해야합니까? 그렇다면 "CreateUserWizardControl_CreatingUser"이벤트에서이를 수행하는 것이 가장 좋을까요? 감사합니다.ASP.NET MembershipProvider 컨트롤의 입력을 살균해야합니까?
답변
입력이 어떤 양식에서 왔을 경우, 용의자로 취급하십시오. 내가 당신을 도울 수 여기에 몇 가지 링크를 포함 시켰습니다 :
http://www.codersbarn.com/post/2008/11/01/ASPNET-Data-Input-Validation.aspx
감사합니다, IrishChieftain. 그 링크는 훌륭합니다. 잠재적으로 값 비싼 공격에 비해 약간의 오버 헤드가 증가 할만한 가치가 있다고 생각합니다. 저는 이미 util 클래스에서 몇 가지 Regex 메서드를 만들었으므로 MembershipProvider 컨트롤도 함께 전달할 것입니다. – Skoder
대부분의 사람들은 양식 이외의 다른 것을 고려하지 않습니다. 해커가 들어올 수있는 방법은 다양합니다. – IrishChieftain
당신이있는 경우 요청 유효성 검사가 자동으로 오류가 발생합니다 스크립트 태그 데이터를 형성 활성화.
입력 살균은 어떤 종류입니까? 즉, ASP.NET이 유효하다고 생각하는 입력 내용의 종류가 유효하지 않다고 생각합니까? – Eilon
저는 보안 전문가가 아니므로 불필요한 유효성 검사를 제공 할 수 있습니다. 그러나 예를 들어, 사용자가 'Username'으로 특정 스크립트를 삽입 한 경우 컨트롤이 자동으로 스크립트를 인코딩하고 ''자를 제거하겠습니까? 그렇지 않으면 그대로 데이터베이스에 포함됩니까? 출력 할 때, 나는 항상 그것을 인코딩 할 수 있지만, 우선 DB에 잠재적으로 위험한 코드를 갖고 싶지는 않습니다. – Skoder