source

은행 정보를 데이터베이스에 저장하는 모범 사례

factcode 2023. 1. 9. 21:13
반응형

은행 정보를 데이터베이스에 저장하는 모범 사례

변변: :
입니다.적,,, 재적적영영영영 것것것것것것것확립된 서드파티 솔루션을 찾거나 전문가를 고용합니다.중요한 정보를 공유 서버에 저장하지 마십시오.가장 적절한 암호화 메커니즘을 조사합니다.

고객님의 은행정보(루팅+계좌번호)를 db에 저장하여 직접 입금할 필요가 있는 고객용 웹사이트를 개설하고 있습니다.자세한 내용은 다음과 같습니다.

1) 웹사이트는 처음에는 공유 호스팅 서버에 있습니다(이것이 저의 첫 번째 관심사입니다).
PHP2) PHP/MySQL을 .
3) mcrypt를 사용할 입니다.
는 웹됩니다.4) 키는 웹 루트 외부에 됩니다.

당신의 생각을 알려주세요.가능하다면 ACH 처리에 관한 자료를 제공해 주세요.

감사합니다!

EDIT: 저는 밖에서도 보안 문제가 두려워서 그런 반응을 기대했습니다.저는 고객에게 우려를 표명했고, 이것이 좋은 지원이 될 것입니다.

편집 2: 여기서 벗어나겠습니다.애초에 그 생각이 마음에 들지 않았어!PayPal의 Mass Payment API를 조사합니다.

Paypal의 Mass Payment API 같은 것을 사용하면 은행 정보를 직접 저장하지 않고도 이 문제를 해결할 수 있다고 생각합니다.그러면 당신의 고객은 사람들에게 돈을 지불할 수 있고, 페이팔은 모든 정보를 저장하기 때문에 당신은 그럴 필요가 없습니다.

고객의 중요한 재무 데이터를 보호하기 위해 필요한 모든 절차를 읽고 싶다면 'PCI 컴플라이언스'를 검색하십시오.

재무 데이터를 온라인에 저장하는 것이 두렵지 않다면, 당신은 끔찍할 정도로 순진한 사람이다.

1) 웹사이트는 처음에는 공유 호스팅 서버에 있습니다(이것은 저의 첫 번째 우려사항입니다). --REALLY BAD.서버에 대한 절대적인 관리 권한이 없고, 다른 사람이 들어오지 못하게 하는 것은 정말 큰 문제입니다.

프런트 엔드 웹 서버에서 직접 데이터베이스에 액세스하는 것이 매우 우려됩니다.재무 데이터는 절대 안 됩니다.

아무리 강력한 암호화 알고리즘을 사용하더라도 다른 사용자가 시스템을 탈취하여 데이터를 해독하는 데 사용하는 것을 방지할 수 있는 방법은 무엇입니까?열쇠는 필요 없습니다.고객님의 어플리케이션으로 작업을 할 수 있습니다.이는 단일 키를 사용하여 데이터를 암호화 및 복호화하거나 DB에서 데이터를 검색하여 시스템 사용자에게 표시하는 경우를 가정한 것입니다.

좋아, 문제는 이거야.이러한 질문을 해야 하는 경우 이를 올바르게 수행할 수 있는 기술적 전문지식이 없습니다.못되게 굴려는 게 아니라 그냥 사실이에요.이런 프로페셔널을 먼저 하는 노련한 사람들과 함께 일하겠어요.여기에 언급되지 않은 많은 사항을 고려해야 합니다.보안에 관한 많은 것들이 기록되지 않았습니다.책을 읽으면 이해할 수 없는 것들.금융 시스템에 침입한 사람들에게 큰 보상이 있기 때문에 이것은 구축하기가 매우 어렵습니다.

하지 마세요.

Bu, 필요하다면 공개/비밀키 암호화를 사용하세요.데이터베이스로 전송되는 데이터를 암호화하려면 공용 키만 저장하고 사용하십시오.개인 키를 안전한 장소(호스트 서버가 아닌 적절한 액세스 제어가 있는 "안전한" 로컬 머신)에 저장합니다.필요에 따라 데이터를 로컬머신에 다운로드하고 개인 키를 사용하여 암호를 해독한 후 다른 곳으로 이동합니다.

하지만 진지하게, 가능하면 이런 일을 피할 방법을 찾아봐.

계속하기 전에 당신의 잠재적인 부채에 대해 변호사와 상의하세요.개인 뱅킹 데이터를 공유 호스팅 서버에 저장하면 위험 요소가 곳곳에 표시됩니다.최종적으로 누가 데이터를 입수할 수 있는지 제어할 수 없습니다.

또 다른 문제는 고객의 데이터가 아니라 고객의 데이터라는 것입니다.귀하는 고객과의 계약을 통해 귀하를 면책할 수 있지만, 고객의 고객이 관여하고 있는 경우에는 그럴 수 없습니다.일단 데이터가 유출되면, 그들은 당신에게로 되돌아올 것이고, 클라이언트는 엄청난 노력을 기울일 것입니다.

은행 정보의 경우 서버가 공유가 아닌 관리 하에 있어야 합니다.

또한, 맥크립트는 안전하지 않습니다.기본 제공은 알지만 RSA와 같이 해킹이 쉽지 않은 것을 제안합니다.누군가 정보를 입수했다면 비밀키 없이는 해킹할 수 없을 것이다.

나는 다른 사람들의 의견에 동의한다 - 이것은 매우 나쁜 생각이다.

전용 서버는 한 달에 79달러에서 99달러로 구입할 수 있습니다.그것이 경제적이지 않다면 왜 은행 정보를 처리하고 있는지 정말 궁금하네요.이 경우에도 데이터베이스를 웹 상자에서 분리하는 것이 좋습니다.방화벽과 그 사이에 다른 보호가 있는 것이 바람직합니다(즉, 2개의 방화벽, 1개는 웹 서버 앞에, 1개는 웹 서버와 데이터베이스 사이에 있습니다).

하지만 공유 호스팅을 사용하는 것보다 어떤 것이든 더 나을 것입니다.SQL Server에 바로 접속하여 사용 가능한 모든 데이터베이스를 볼 수 있습니다.최소한의 해킹으로 바로 접속하는 것이 얼마나 쉬울까요?

또, 사이트명을 가르쳐 주세요.가입하지 않고 은행정보도 기재하지 않도록!!!:)

또한 공유 호스팅을 진행하기 전에 오류 및 커미션 보험이 있는지 확인하십시오.

저도 당신과 비슷한 상황에 처해있었고, 이렇게 해결했습니다.

  1. ACH 처리를 하지 않기 때문에 ACH 처리 API에 고객 생성 기능이 있는지 확인합니다.
  2. 이 경우 이 고객 오브젝트는 보통 계정 번호, 라우팅 번호 등을 포함하여 토큰을 데이터베이스에 저장합니다.(따라서 사용자가 정보를 제공하면 HTTPS를 통해 ACH 프로세서에 직접 전달하고 토큰을 저장합니다).
  3. 계좌이체가 필요할 때마다 이 토큰을 프로세서에 전달하면 끝!!

이렇게 하면 데이터베이스에 계정 및 라우팅 번호를 저장하지 않고, 누군가가 DB를 해킹하더라도 토큰만 볼 수 있습니다. 토큰은 ACH 프로세서에 따라 다르므로 아무 것도 할 수 없습니다.

나는 Stripe를 사용한 신용카드에 대해서도 비슷한 일을 한 적이 있다.

행운을 빕니다.

당신은 이 지역에 대한 경험도 없고 창고 클럽에서는 이만한 벌레 통조림을 찾을 수 없습니다.이것은, 고객이 도메인 전문가를 채용할 필요가 있는 경우입니다.향후 이러한 작업에 관심이 있는 경우는, 전문가와 긴밀히 협력해, 가능한 한 많은 지식을 흡수해 주세요.

여기 계신 모든 분들이 이 상황에 대한 혐오감을 충분히 표명하셨다고 생각합니다.따라서 어떤 종류의 암호라도 실행할 때 다른 문제에 대해 힌트를 드리겠습니다(필요하다는 데 동의합니다).

어디선가 데이터를 암호화해야 해!

서버에서 실행한 경우, 손상된 서버는 암호화만 수행하고 암호화 없이 전달합니다.

클라이언트에서 이 작업을 수행하는 경우, 이 작업은 조금 더 안전하지만 다른 사용자가 서버에 액세스할 수 있는 경우에도 문을 활짝 열어 둡니다.이론적으로는 XSS 구멍을 열기만 하면 됩니다(즉, 리모트 스크립트를 페이지에 삽입하는 등).이러한 구멍을 열면, 복사가 암호화되기 전에 박스에 송신됩니다.

결국:110% 안전하지 않을 수 있는 서버에서 이 작업을 수행하는 것을 정말 고려하고 있다면 WALK AWAY를 사용하십시오.

언급URL : https://stackoverflow.com/questions/596706/best-practices-for-storing-bank-information-in-a-database

반응형