2016-06-17 13 views
4

메소드 set_UserActiveEnvironments()에 저장된 객체 직렬화가 손상 될 수 라인 (47)에 HttpSessionState 속성으로 비 직렬화 객체 저장 어플리케이션 안정성HP 포티 : ASP.NET 부정 행위 : HttpContextHelper.cs 세션에서

기본적으로 ASP.NET 서버는 HttpSessionState 개체, 해당 특성 및 참조하는 모든 개체를 메모리에 저장합니다. 이 모델은 활성 세션 상태를 단일 시스템의 시스템 메모리가 수용 할 수있는 것으로 제한합니다. 이러한 제한을 초과하여 용량을 확장하기 위해 서버는 지속적 세션 상태 정보로 구성되는 경우가 많습니다.이 정보는 용량을 확장하고 여러 시스템에서 복제를 허용하여 전반적인 성능을 향상시킵니다. 세션 상태를 유지하려면 서버가 HttpSessionState 객체를 직렬화해야합니다.이 객체에는 저장된 모든 객체가 직렬화 가능해야합니다.

왜 취약점으로 보입니까? 어떻게 수정합니까?

답변

1

Mohanraj는, 어쩌면 당신은 이미 해결책을 찾았지만, 아래의 그럴듯한 설명입니다했습니다

가 HP 포티 파이가 나타내는 몇 가지 위양성이 있고, 당신이 모든에 사례별로 분석해야 할 이유가있다 이 취약점은 사용자를 나타내며, 이것이 바로 발견 된 취약성이 실제 위협인지 아니면 거짓 긍정인지를 분석하는 분류 목록이있는 이유입니다.

이 취약점을 악용하려면, 세션에 전송/전송하려고 시도하는 클래스를 [Serializable]로 꾸미기 만하면됩니다. 이는 세션을 사용하여 응용 프로그램에 데이터를 저장할 때 유용합니다.

Piet Obermeyer와 Jonathan Hawkins가 this article을 확인하면 직렬화를 더 잘 설명합니다.

희망이 도움이됩니다.