2012-06-22 5 views
1

webform 또는 winform을 사용하여 질문 할 수 있습니다.db에 액세스하는 소프트웨어 보안?

나는 db에 액세스해야하는 .net 프로그램 (exe)이 있습니다. (인터넷을 통해)

ofcourse이 db는 비밀번호와 로그인이 필요합니다.

피들러, 반사기 등으로 볼 수없는 db에 액세스하는 가장 좋은 방법은 무엇입니까?

내가

어떤 더 나은 솔루션이 ... 유일한 해결책은 SSL + 연결 문자열 섹션을 암호화를 사용하여 런타임 동안 암호를 해독 할 생각?

+1

RDBMS가 인증서 기반 인증을 지원하는 경우 좋은 옵션 일 수 있습니다. – HackedByChinese

+0

@HackedByChinese 인증서가 클라이언트 측에 배치됩니까? –

+0

서버는 클라이언트에게 자신을 인증해야합니다. – Gumbo

답변

2

공격자가 실행중인 .exe 인 경우 디버거를 사용하여 사용자 이름/암호를 얻을 수 있습니다. 이 .exe가 신뢰할 수있는 시스템에서 실행 중이며 공격자 이 네트워크에만 존재할 경우 SSL이 완벽합니다.

Defense In Depth 접근 방식은 꼭 필요한 경우가 아니라면 응용 프로그램의 일부를 신뢰해서는 안됩니다. 공격자가 응용 프로그램을 해킹하면 응용 프로그램을 기능적으로 사용하게됩니다.

이 작업을 수행하는 방법은 데이터 저장소에 액세스하기위한 RESTful 또는 SOAP API와 같은 API를 만드는 것입니다. SQL 주입과 같은 취약점은 항상 심각한 문제가되지만 공격자에게 원시 데이터베이스 연결을 제공하는 것은 더욱 심각합니다.

+0

그는 실시간으로 decrpyt되는 암호를 볼 수 있습니까? (exe 파일) –

+0

@Royi Namir 프로그램이 런타임에이를 볼 수 있으면 디버거가 런타임에이를 볼 수 있습니다. 클라이언트에서 실행되는 코드는 결코 신뢰할 수 없습니다. – rook

+1

오케이. 그렇다면 소프트웨어가 db에 어떻게 연결될 것입니까? 그 API는 무엇입니까? 당신은 링크 또는 뭔가를 제공 할 수 있습니까? 또한 소프트웨어가 API를 통해 연결되면 해커도이를 수행 할 수 있습니다. –

관련 문제