it-swarm-korea.com

심층 코드 검토를위한 보안 컨설턴트를 찾고 있습니까?

(개발자가 PHP/프로그래밍 기본 사항)을 잘 이해하지 못했기 때문에) 우리가 알고있는 잘못된 코딩 관행이있는 PHP 응용 프로그램이 있습니다.) "논리 수준"에서도 코드에 심각한 보안 결함이있는 시나리오에 대해 설명합니다.

WE 시도한 내용을 실제로 이해하기 위해 수동 코드 검토 를 수행 할 컨설팅 팀을 어떻게/어디에서 찾을 수 있습니까? 무엇을 잘못했는지 확인하고 프로세스를 우회 할 수있는 방법은 무엇입니까? just 코드를 자동으로 스캔 한 것으로 보이는 컨설턴트를 시도했지만 전혀 가치가 없습니다. .

이 질문은 수동 보안 코드 검토 완료-주의해야 할 사항 -같은 사람이지만 이전 쿠키 기반 세션에 더 이상 액세스 할 수 없습니다.

9
siliconpi

코드 검토 컨설턴트의 시간과 예산을 비싸게 사용할 수 있으므로 다음을 수행 할 수 있습니다.

  1. 검토해야하는 코드 시도. 이렇게하면 걱정되는 권한 부여/세션 관리/특정 비즈니스 논리 등과 같은 특정 역할을 완료하는 코드에 집중할 수 있습니다. 예산이 남아 있으면 덜 중요한 다른 코드 영역으로 이동할 수 있습니다.

  2. 필요한 시간과 노력 추정 매우 대략적인 추정치로 1k 라인의 코드 = 하루 종일 검토 (보고 제외)를 사용할 수 있습니다. 다른 언어와 코드 복잡성으로 인해이를 변경하지만 예산 요구 사항을 살펴볼 때 좋은 출발점이됩니다.

  3. 보조로서의 자동화 자동화 된 코드 스캐닝이 그 자리를 차지하지만 컨설턴트가 도구를 구성하고 수동 검토에서 보조 도구로 사용하는 방법을 알고있는 경우에만 가치를 추가합니다. 혼합 된 자동-수동 접근 방식을 사용하면 참여 속도를 높이고 비용을 절감 할 수 있습니다. 컨설턴트는 보안 문제를 이해하고 오탐을 제거 할뿐만 아니라 오탐이 통과하지 않도록 검토 할 언어에 충분히 능숙해야합니다.

  4. Threat Model the application 비즈니스 로직과 공격자가 잠재적 공격 벡터를 모델링 할 수있는 수준까지 애플리케이션과 상호 작용할 수있는 방법을 이해할 수 있다면 더 구체적이고 집중적 인 코드 검토를 정의하는 데 도움이 될 것입니다. . 그런 다음이 수준의 세부 정보를 컨설턴트에게 전달하여 애플리케이션의 작동 방식을 알고 있는지 확인할 수 있으며이를 통해 일반 정보가 아닌 맞춤형 조언과 지침을 제공 할 수 있습니다. 여기에 몇 가지 위험이 있습니다.

  5. 응용 프로그램의 컨텍스트에 결과 배치 하루가 끝나면 어떤 문제를 해결하고 우선 순위에 따라 전화를 걸어야합니다. 컨설턴트에게 명확한 권장 사항을 제시하고 코드 검토 결과가 실제로 위협인지 이해하는 데 도움이되는 증거를 제공하도록 요청합니다. 즉, 취약한 것으로 확인 된 코드가 백엔드에 있고 사용자 상호 작용을위한 경로가없는 경우 이는 취약한 코드가 최종 사용자에게 제공되는 기본 인증 코드에있는 경우보다 위험이 낮습니다. 이는 내부적으로 시간을 줄여야하므로 코드 검토 비용을 상쇄 할 수있는 비용 절감 효과가됩니다.

8
David Stubley

거주하는 국가에 따라 다릅니다. 그러나주의해야 할 몇 가지 사항이 있습니다.

먼저, 지금 원하는 what을 명확하게 정의하고 문서화하십시오. 심층 보안 검토를 원하십니까? (실내?) 품질 검토를 원하십니까? 개발 프로세스에 대해 컨설턴트의 조언/추천을 원하십니까? 개발 회사 선택에 대한 조언을 원하십니까? ALL 당신이 기대하는 것을 명시 적으로 만들고 자세히 문서화하십시오.

게다가 유능한 회사를 선택하십시오. 참조를 요청하고 좋은 것을 찾기 위해 시간을 할애하십시오. 약간의 돈을 쓸 준비를하세요. 수동 코드 검토는 시간이 많이 걸립니다. 시간 = 돈이고 심층적 인 수동 검토를 수행 할 시간이 필요하기 때문에 실제 솔루션을 제공 할 수 없기 때문에 매우 저렴한 제품을 선택하지 마십시오.

이 경우에는 매우 기술적 인 컨설팅 회사가 필요합니다. 기술 서비스도 제공하는 관리 컨설팅 회사를 선택하지 마십시오.

3
Henri

검토의 폭과 깊이를 모두 고려해야합니다. 전반적으로 검토에서 다루는 위험/공격/위협의 범위를 의미합니다. 여기서 다루어야 할 사항에 대한 아이디어를 얻으려면 OWASP 애플리케이션 보안 검증 표준으로 시작해야합니다. 깊이에 따라 컨설턴트가 각 영역이 적절하게 방어되었는지 얼마나 잘 확인할 것인지를 의미합니다. 로우 엔드에서 자동화 된 도구 스캔은 거의 보장을 제공하지 않습니다. 최고급에서 수동 검사 또는 실제 테스트 사례는 기본적으로 올바른 방어 수단이 마련되어 있고 올바르게 설계되었으며 필요한 모든 곳에서 사용된다는 것을 증명해야합니다.

코드 검토가 다른 접근 방식보다 반드시 더 많은 시간이 소요된다는 주장에 빠지지 마십시오. 대부분의 경우 보안을 빠르고 정확하게, 가능한 최상의 범위로 확인하는 가장 효율적인 방법입니다.

OWASP와 관련된 일부 회사에 확인하십시오. 웹 애플리케이션의 보안을 비용 효율적으로 확인하는 광범위한 경험을 보유하고 있습니다.

1
planetlevel