2010-01-29 5 views
0

C#이나 Java에서는 메소드를 private으로 표시하더라도 리플렉션을 사용하거나 클래스를 동적으로로드하여 액세스 할 수 있습니다. 물론 우리는 그것을 유지하기 위해 메소드 이름을 알아야합니다. 여전히, 리플렉션을 사용하여 해킹 당할 수있는 개인 데이터베이스, 은행 계좌 등을 안전하게하는 애플리케이션이 얼마나 안전한지 궁금합니다. 자바 리플렉션 API가 개인용이지만 변수/메소드에 액세스 할 수있는 이유는 무엇입니까?private 접근 가능

답변

3

리플렉션이없는 경우에도 가상 컴퓨터에서 데이터를 가져 오는 것은 결정적인 해커에게는 매우 사소한 일입니다. 성찰의 존재는 a) 특수한 경우에 매우 편리하고 b) 비공개 방법이 보안을 보장하지 않는다는 언어 작성자의 인정입니다. 대신 은행 계좌 정보와 같은 개인 데이터를 보호하려면 데이터를 원격 데이터베이스에 저장하고 공격 메커니즘에 공격적인 ACL을 제공하는 등의 간접적 인 수단을 사용해야합니다.

+0

ysimonson 주셔서 감사합니다. – Ravisha