2009-08-31 4 views
2

SSL을 통한 HTTP에 관한 모든 게시물을 읽었습니다. 지금까지 웹에서 데이터를 안전하게 얻는 방법을 알고 있습니다. 그러나 나는 회복의 일부를 놓치고 같은 방식으로 데이터를 유지합니다. 나는 내 웹 사이트에서 고객으로부터 합리적인 가격의 데이터를 수집 할 수있는 양식 (예약을위한 신용 카드 번호 일 수도 있지만 신용 카드 승인 프로세스가 필요하지 않음)을 필요로하고 나중에 안전하게 보관하고 데이터를 읽습니다.HTTPS 및 암호화 된 데이터베이스는 실제로 공유 호스팅에서 보호됩니까?

그런 기본적인 보안 웹 응용 프로그램에 대해 내가 필요

A) SSL 도메인 인증 됨 (DV) 인증서와 웹 사이트 (I 고정 IP 주소 나 기본 공유하거나 호스팅 "가상"을 사용하지 않습니다. 서비스).

b) 간단한 보안 PHP &을 개발하여 모든 보안 PHP 응용 프로그램의 PHP 파일을 SSL 보안 폴더에 저장합니다.

c) 수집 된 모든 데이터는 서버 MySQL 데이터베이스에 저장됩니다.

이 내 메시지의 질문의 일부입니다 나중에 일반 호스팅 서비스를 통해 데이터베이스를 보면 취할에 phpMyAdmin을 사용하여 입력하면

1) (HTTP),이 불안하지 않습니다는?

2) 호스팅 관리자는 어떻습니까? 또한 데이터베이스에서 일반 텍스트를 사용하면 모든 합리적인 데이터를 읽을 수 있습니다. 그러나 SSL을 통한 전송뿐만 아니라 서버의 데이터 암호화 방법으로도 충분할 수 있습니까? 암호화 인코딩/디코딩 방법이 호스팅 관리자에 의해 가로 챌 수 있다는 것이 사실입니까? (이 방법은 동일한 서버의 응용 프로그램 내부에 있음). 자신의 서버의 편리 성과 보안 성을 지불 할 수 없습니다.

3) 이러한 것들을 고려하여 데이터베이스 암호화를 사용하면 사실임을 전제로합니다.

내가 놓친 것이 있거나 문제를 잘못 해석 한 것일 수 있습니다.

귀하의 도움과 인내심에 감사드립니다.

답변

1
  1. 입니다.

  2. 수 있습니다.

  3. 하지만 실제로는 좋은 아이디어 일 수 있습니다. 누군가가 PHP 소스 코드가 아닌 데이터베이스를 확보 할 수 있습니다. 그렇다면 데이터베이스의 암호화가 좋은 것입니다.

정확합니다. 유일한 방법은 자신의 서버를 실행하는 것입니다. 또한 Payment Card Industry Data Security Standard에 대해 알아야합니다.

1

1) 물론 HTTP를 통한 phpmyadmin으로 데이터를 보는 것은 안전하지 않습니다.

2)에 대해서는 물리적 보안이없는 경우 호스팅 사이트 외부에서 암호화하고 해독하는 암호화 된 데이터를 저장하는 것을 제외하고는 보안을 설정할 수 없습니다.

호스팅 회사에서 컴퓨터에 액세스 할 수 있으므로 모든 데이터를 읽을 수 있습니다.

내 경험에 따르면 호스팅 제공 업체는이를 수행하지 않고 데이터를 안전하게 유지하려고 노력하고 있습니다 (이므로 그 사업은 마찬가지입니다), 은행 업무는 돈을 유지하려고하는 것과 거의 같습니다. 당신을 위해 그것을 지키지 않고 지키십시오.

3) 백업을 유지하는 경우에만 데이터베이스 암호화를 수행하십시오. 라이브 버전을 실행하기 위해서는 보안 성이 조금 향상되고 상황이 더 복잡해집니다.

2
  1. 예. HTTP는 안전하지 않습니다.
  2. 예, 데이터베이스의 일반 텍스트는 안전하지 않습니다. Encrypted는 약간 더 "안전하다". 아무렇지도 않게 보이는 사람을 막을 수는 있지만 서버에 액세스 할 수있는 사람은 누구나 암호화/해독을 수행하는 스크립트에 액세스 할 수 있습니다.
  3. 나는 그렇다고 말하고 싶습니다. 귀하의 경우 암호화 전용 공격자에 일을하지 않을 것이다, 그러나 일부 시스템 관리자가 멍하니 즉시에 침입하기 위해 의도적으로 단계를하지 않고도 데이터를 않아도을 통해 검색되지 않도록하겠습니다.

내가 당신을 희망 신용 카드 또는 기타 민감한 데이터를 저장하지 않습니다. 특히 사법권의 개인 정보 보호 법률에 해당되는 경우. 공유 서버에 그런 종류의 물건을 저장하면 아마도 고소 당할 것이다. 이 방법으로 신용 카드 데이터를 저장하면 상인 계좌가 침해 될 수 있습니다. 카드를 사용하면 Visa와 MasterCard를 사용할 수 없게됩니다.

5

이러한 공유 호스팅 플랜은 실제로 신용 카드 번호를 모으는 일이 아닙니다. 지불 게이트웨이를 사용하여 베팅하고 직접 저장하지 않는 것입니다. 당신은, 단순한 난독을 의심하고 자체 안전하지로, 서버는 전체에 암호화/암호 해독 과정을 갖는 PCI

0

:

어떤이에 대한 규정을 참조하십시오. 공격자가 데이터베이스 (일반적으로 SQL 주입 구멍을 통해)에 대한 읽기 액세스 권한을 얻지 만 사이트 스크립트를 읽거나 임의 코드를 실행할 수는없는 부분적인 침해가 발생할 경우 도움이 될 수 있습니다.

서버가 다시 읽을 필요가없는 중요한 데이터 (정식 신용 카드 번호) 만 써야하는 경우 공개 키 암호화를 사용하여 데이터를 읽을 수 있습니다. 공개 키로 데이터를 암호화 한 다음 해당 개인 키가있는 보안이 안전한 알려진 컴퓨터에서만 데이터를 읽으십시오. 이렇게하면 스크립트가 읽을 수있는 곳에서 더 큰 손상이 발생하는 경우 과거 데이터를 보호 할 수 있으며 공격자가 스크립트에 대한 쓰기 액세스 권한을 얻은 경우 오래된 데이터가 아닌 새 들어오는 데이터 만 누출 될 수 있습니다. 바라건대 침입을 감지하고 재 구축 할 시간을 줄 수 있기를 바랍니다.

암호화 인코딩/디코딩 방법이 호스팅 관리자에 의해 차단 될 수 있다고 생각하지 않습니까?

예. 그러나 호스트는 머신에 물리적으로 접근 할 수 있기 때문에, 웹 앱이 모든 것을 가로 챌 수있는 루트킷을 강타 할 수 있습니다. 호스트를 신뢰하는 방법이 없으므로 신뢰할 수있는 시스템을 선택하고 공유 서버에서 민감한 시스템을 실행하지 마십시오.

1

나는 bobince가 완전히 맞다고 생각합니다. 공개 키 암호는 당신을 도울 수 있지만, PHPMyAdmin을 사용하여 데이터를 볼 수있는 편안함을 잊지 마십시오. - 어딘가에 암호 해독이 필요한 쓰레기가 보일 것입니다. PHP 및 공개 키 암호에 대한 자세한 내용은 http://www.php.net/openssl을 참조하십시오.

관련 문제