소스코드 데이터 보안 경험 공유

지금까지 우리는 많은 프로젝트가 구현되었음을 알게 되었으며 요약하면 업계는 다음과 같은 특징을 가지고 있습니다.

1. 소프트웨어 R&D 인력의 수준이 상대적으로 높으며, 무엇보다도 크래킹이 어려워야 합니다.

2. 소프트웨어 개발자의 감시 방지, 암호화 방지, 유출 방지 수준이 상대적으로 높고 방지하기가 상대적으로 어렵습니다. 일반 암호화 제품은 몇 초 만에 죽기 쉽습니다. 시간을 허비하고 프로세스 위조, IP 위조, dll 주입 등을 하고 싶은 사람, 게으른 사람은 기본적으로 할 수 있는 인터넷의 다음 포인트 도구로 갈 수 있습니다. 보안을 이해하는 사람들은 말할 것도 없고 현재 시중에 나와 있는 암호화 제품의 95%는 10분도 버티기 힘든 것 같습니다.

3. 대부분의 직원은 감시나 암호화에 저항할 것입니다. 회사가 튼튼하지 않고 돈이 충분하지 않고 단위가 충분하지 않으면 추진하기 어려울 것입니다.프로젝트를 추진하려면 균형점을 찾아야 합니다.

소프트웨어 개발 환경도 더 복잡합니다.

1. VC++(MFC/ATL/COM/service/Socket), JAVA(JSP/J2EE/J2SE/J2ME), PHP, C#(app/.net), protel 등 전력산업이나 임베디드라면 , PLC 산업 제어 및 Android 개발의 경우 개발 도구가 훨씬 더 이상합니다. 현재 기존 암호화 제품을 사용하여 문제를 해결하는 것은 기본적으로 막 다른 골목입니다. 많은 프로세스를 연결하는 것이 불가능하기 때문입니다.

2. 로컬 디버깅 및 컴파일, 특히 네트워크 관련 디버깅 또는 서비스 디버깅 및 에뮬레이터 디버깅에 영향을 줄 수 없습니다.

3. 대부분의 서버는 Linux이며 클라이언트에는 기본적으로 가상 머신이 있습니다.

일반적으로 행동 관리를 사용하는 데는 세 가지 사항이 있습니다.

1. 직원들에게 어느 정도의 자유를 주어야 합니다. 예를 들어, 인터넷, QQ 등에서 정보를 검색하는 것은 회사 비밀과 관련되지 않는 한 모니터링 없이 계속 할 수 있습니다. 이런 식으로 직원들은 너무 역겨워하지 않을 것입니다.

2. 안전과 편리함은 상반된다 업무능률에 영향을 미치지 않고 균형점을 잡는 것은 불가능하다 충격이 너무 강하면 역겹고 회사에 도움이 되지 않는다.

3. 절대적인 보안은 없다 보안의 목적은 누수를 완전히 제거하는 것이 아니라 누수 비용을 증가시키는 것이다 아무도 감히 자사 제품에 문제가 없다고 말할 수 없다 마이크로소프트만큼 큰 회사에서도 제품은 여전히 버그가 있습니다.

4. 누수 방지 체계가 실제로 필요한 경우 함께 사용하고 서로를 보완하는 일련의 합리적인 규칙 및 규정과 적절한 보안 소프트웨어가 있어야 합니다.

제품을 선택할 때 동시에 몇 가지 조건을 충족해야 합니다.

1. 컴파일 및 디버깅에 영향을 미치지 않습니다.

2. 버전 관리 및 버전 비교에 영향을 미치지 않습니다.

3. .cpp와 같은 소스 코드를 암호화할 수 없으며 그 부속물인 obj, exe 등을 제어해야 합니다.

4. 파일을 파기하지 마십시오.

5. 소스 코드 문서는 암호화 소프트웨어에 대한 의존도를 줄이고 보안 사고를 방지하기 위해 서버에서는 일반 텍스트로, 직원의 개발 시스템에서는 암호문으로 만드는 것이 가장 좋습니다.

6. 정보 확인을 위한 외부 네트워크 접속, QQ 접속 등에는 영향을 미치지 않으나, 이를 통한 유출은 발생하지 않습니다.

나는 최근에 R&D 부서가 있는 고객을 만났는데, 원래 그들은 도면과 소스 코드가 있는 개발을 위해 디스크가 없는 워크스테이션을 사용했습니다. 디스크리스를 사용하는 주된 목적은 누출을 방지하는 것입니다. 처음에는 20~30명 정도였을 때는 그 효과가 매우 만족스럽다고 해야 하겠지만 현재 이 부서는 100명, 관련 부서는 500명 가까이 된다. 동시성이 크고 네트워크 부하와 서버 부하가 너무 높습니다. 도면 설계 및 산업 제어 소스 코드 개발을 담당하며 거의 모든 디자이너는 AutoCAD, Pro.E 및 SolidWoks와 같이 많은 리소스를 소비하는 소프트웨어를 사용해야 합니다. 산업 제어 소스 코드를 디버깅할 때 로컬 직렬 포트, 병렬 포트 또는 네트워크를 사용해야 하므로 디스크 없는 시스템에서 분리된 노트북을 몇 개 구입해야 했습니다. 느린 속도의 문제는 원래 디스크가 없는 워크스테이션을 확장하고 싶었지만 비용이 너무 비싸고 부서가 계속 확장 중이므로 이대로 진행하는 옵션이 아닙니다. 워크스테이션이면 속도 문제가 없을 텐데 디스크 없는 값은 어디에 있습니까? 또한 디스크가 없는 파일은 더 이상 로컬에 보관되지 않지만 인터넷을 통해 비밀이 유출되는 등 매우 불편합니다. 비밀은 여전히 ​​메일, 네트워크 등을 통해 유출될 수 있습니다. 로컬 디버깅을 위한 노트북은 여전히 ​​비밀을 유출할 수 있습니다.

마지막으로 SDC 샌드박스(샌드박스도 클라우드 개념) 솔루션으로 대체되었고,

1) 단말기 수와 서버 부하 사이에는 직접적인 관계가 없습니다(SDC 샌드박스는 동시에 온라인 사용자 5000명 지원).

2) 많은 양의 리소스를 차지하는 설계 소프트웨어를 클라이언트가 실행할 때 속도 문제가 없습니다(단일 기계의 실행 손실은 5% 이내).

3) 설계결과 및 도면, 소스코드, 문서는 서버에만 저장이 가능하며, 서버의 파일은 노트북을 포함하여 생성, 수정, 편집, 저장 등을 할 수 없습니다(로컬 저장 불가).

4) 비 클라이언트 또는 외부 PC는 서버에 액세스할 수 없으며 다른 클라이언트에 액세스할 수 없으므로 격리되고 격리됩니다.

5) R&D 및 설계와 동시에 인터넷 액세스(웹 브라우징, 데이터 다운로드, QQ, MSN 사용)가 허용되지만 서버의 데이터를 전송할 수 없어 유출이 발생합니다.

6) 노트북 주변기기, U 디스크, CD, 플로피 디스크 등은 모두 읽기 전용입니다.

7) WinPE CD는 로컬 클라이언트(노트북 포함)를 시작하거나 로컬 하드 디스크를 제거합니다. 데이터 유출은 없습니다. (로컬 도면 데이터가 없습니다.)

8) 서버에 있는 모든 파일은 기밀 환경에서 꺼내려면 승인 프로세스를 거쳐야 합니다.

Supongo que te gusta

Origin blog.csdn.net/cnsinda_sdc/article/details/129957897
Recomendado
Clasificación