Probely DAST 스캐너로 API 및 웹 애플리케이션 보호
웹 애플리케이션 공격이 전체 위반 사례의 약 3분의 1을 차지한다는 점을 고려할 때, 웹 애플리케이션과 API 보안을 점검하는 것은 매우 중요합니다.
규정 준수 목적뿐 아니라, 고객 데이터와 회사 자체를 위험으로부터 보호하기 위해서도 웹 애플리케이션 보안에 주의를 기울여야 합니다.
웹 애플리케이션 보안에는 다양한 접근 방식이 존재하며, 각기 장단점을 가지고 있습니다. 일부 솔루션은 애플리케이션의 소스 코드 내에서 보안 취약점을 찾는 데 집중하는 반면, 다른 솔루션은 외부 공격으로부터 애플리케이션을 보호하는 데 중점을 둡니다. 또 다른 방법은 해커가 실제로 공격하는 방식처럼 런타임 환경에서 웹 애플리케이션의 보안을 동적으로 검사하는 것입니다.
본 기사에서는 세 번째 방법, 즉 Probely와 같은 도구에 초점을 맞춥니다. Probely는 최신 웹 애플리케이션의 스캐닝 범위와 결과의 정확성이라는 웹 취약점 스캐너의 두 가지 주요 과제를 해결한다는 점에서 다른 제품들과 차별화됩니다.
Probely는 중소기업을 위한 셀프 서비스 버전과 웹 애플리케이션 및 API가 많은 대규모 조직을 위한 두 가지 에디션으로 제공됩니다.
Probely는 최신 개발 환경 전반에 걸쳐 넓은 범위의 스캔을 제공하며, 실제 증거에 기반한 스캔 결과를 통해 오탐을 줄이는 동시에 DAST 스캔을 개발 수명 주기에 통합할 수 있도록 지원합니다.
하지만 정말 이렇게 좋을까요?
Probely에 대한 자세한 분석을 계속 읽어보세요.
Probely의 주요 기능은 무엇인가요?
Probely는 개발자와 모든 규모의 기업을 위해 설계되었으며, 애플리케이션과 API를 테스트하고 스캔하여 보안 문제와 취약점을 발견합니다. 스캔이 완료되면 발견된 문제를 수정하는 데 도움이 되는 구체적인 지침을 제공합니다.
개발자와 보안 엔지니어 모두 직관적인 사용자 인터페이스를 통해 Probely를 사용할 수 있습니다. 또한, 보다 강력한 기능과 유연성이 필요한 사용자를 위해 API 우선 개발 접근 방식을 채택하여 모든 기능을 갖춘 API를 제공합니다. 이 API는 사용자 인터페이스에서 제공되는 모든 기능을 제공하므로 Probely를 CI/CD 파이프라인, 취약점 관리 도구, 오케스트레이터 또는 이슈 트래커와 통합할 수 있습니다. JIRA, Jenkins, Azure DevOps, DefectDojo, CircleCI, Slack과 같은 인기 있는 도구와는 즉시 통합이 가능하며, 자체 이슈 트래커 또는 오케스트레이터를 개발한 경우 API를 활용하는 것이 좋습니다.
넓은 범위, 크롤링 및 정확성
Probely는 차세대 스파이더를 사용하여 일반 브라우저와 동일한 방식으로 JavaScript로 풍부한 애플리케이션을 탐색하여 웹사이트를 광범위하게 검사할 수 있습니다. 이는 다른 DAST 도구에서 종종 발생하는 문제입니다. 이 스파이더는 특히 React 또는 Angular JS 기반의 싱글 페이지 앱에 적합합니다.
스캐너는 발견된 페이지에서만 취약점을 식별할 수 있다는 점을 기억해야 합니다. 따라서 웹사이트를 효과적으로 탐색하는 스파이더의 성능이 매우 중요합니다.
Probely는 테스트 환경에 따라 다양한 스캔 프로필을 제공합니다. 프로덕션 환경을 스캔하는 경우, 덜 침입적인 스캔 프로필을 설정할 수 있습니다. QA 환경을 테스트하는 경우에는 보다 철저한 프로필을 설정하여 더 광범위하게 스캔할 수 있습니다. 사전 프로덕션 환경을 테스트하면 애플리케이션이 프로덕션 환경에 배포되기 전에 취약점을 식별하고 수정할 수 있습니다.
보고 기능
Probely는 광범위한 취약점 목록을 탐지하지만, 오탐 없이 실제 관련 있는 항목을 보고하는 데 집중합니다. 특정 취약점의 경우, 해당 취약점이 실제로 존재한다는 증거를 제공하여 팀이 취약점의 유효성을 확인하는 데 드는 시간을 절약할 수 있습니다.
Probely는 인터페이스를 통해 광범위한 보고 기능을 제공하지만, 취약점 정보를 문제 추적기 또는 취약점 관리 도구와 동기화하여 기존의 보안 및 개발 워크플로우에 통합할 수도 있습니다.
OWASP Top 10과 같은 취약점에 대해 소프트웨어를 테스트할 수 있으며, PCI-DSS, GDPR, HIPAA 및 ISO270-01과 같은 특정 요구 사항을 확인하여 규정 준수를 달성하는 데 도움을 받을 수 있습니다.

OWASP Top 10 보고서를 통해 규정 준수 문제점을 한눈에 파악할 수 있습니다.

상호 작용
인터페이스는 단순하고 탐색하기 쉬워서 빠르게 시작하고 사용할 수 있습니다. Enterprise 버전을 사용하면 사용자 및 역할을 제어하고 사용자 지정 역할을 설정할 수 있습니다. 또한 레이블을 사용하여 사용자, 자산 및 취약성을 구성하여 웹 애플리케이션 보안을 보다 효율적으로 관리할 수 있습니다. 모든 기능은 API를 통해 사용할 수 있으므로 Probely를 다른 엔터프라이즈 보안 애플리케이션 및 프로세스에 쉽게 통합할 수 있습니다.
Jira 또는 Azure 보드를 사용하는 경우, 모든 취약점을 이슈 트래커에 자동으로 전송하도록 Probely를 설정할 수 있습니다. 개발자가 문제 추적기에서 문제를 해결하고 완료하면 Probely는 자동으로 재검사를 시작하여 취약점이 제대로 수정되었는지 확인합니다. 그렇지 않은 경우, 해당 이슈는 문제 추적기에서 다시 열립니다. 이를 통해 개발팀은 Probely 인터페이스를 사용하지 않고 문제 추적기에서 직접 다른 버그처럼 취약점 보고서를 관리할 수 있습니다.
시작하기 🚀
테스트 목적으로 Probely Enterprise 에디션을 사용했습니다.
Probely는 다양한 요금제를 제공하며 표준 에디션과 무료 플랜도 포함됩니다. 무료 플랜에서는 쿠키 플래그, 보안 헤더, SSL/TLS 문제의 세 가지 취약점 클래스만 테스트합니다. Pro 플랜은 대부분의 기능을 제공하며, 스캔 대상이 5개 이하인 중소기업 및 조직에 중점을 둡니다.
Enterprise 버전은 많은 대상을 가진 조직을 대상으로 하며, 엔터프라이즈 소프트웨어에서 일반적으로 사용되는 사용자, 그룹, 역할 및 권한과 같은 추가 기능을 제공합니다. 또한 제공된 에이전트를 설치하여 내부 대상 (개인 네트워크)을 스캔할 수 있습니다.
대상 추가
대상을 추가하는 과정은 간단합니다. 계정에 로그인한 후 대상 페이지로 이동하여 "추가"를 클릭하면 됩니다. 새 대상의 이름, URL, 하나 이상의 레이블 (예: 테스트, 프로덕션, 개발 등)을 입력해야 합니다. Probely가 웹 애플리케이션 없이 독립형 API로 이 대상을 스캔하도록 하려면 해당 옵션을 선택하여 API 대상으로 식별해야 합니다.

대상이 인터넷에 노출되지 않고 사설 네트워크에 Probely 에이전트를 설치한 경우, 대상을 추가할 때 사용할 에이전트를 선택할 수 있습니다.
대상을 추가한 후에는 Probely가 해당 대상을 스캔할 수 있는 권한이 있음을 확인해야 합니다. 따라서 대상의 소유권을 검증해야 합니다. 대상을 검증하는 방법은 두 가지입니다. 대상의 루트에 제공된 콘텐츠가 포함된 파일을 업로드하거나, 도메인 이름과 특정 레코드 콘텐츠를 사용하여 TXT 항목을 DNS 레코드에 추가하는 것입니다. 대상을 검증한 후 스캔 버튼을 누르면 대상 스캔을 시작할 수 있습니다.
Probely 대시보드의 스캔 탭으로 이동하면 스캔 진행 상황과 상태를 확인할 수 있습니다. 이 페이지는 스캔이 시작된 시기와 지금까지 발견된 내용을 보여줍니다. 결과는 심각도에 따라 색상으로 표시되므로 즉시 해결해야 하는 중요한 문제가 있는지 한눈에 확인할 수 있습니다.
웹사이트에 로그인 페이지가 있고 Probely가 로그인 후 스캔을 수행하도록 하려면, 인증된 사용자로 사이트를 크롤링할 수 있는 자격 증명을 제공해야 합니다. 로그인 페이지에 대한 대부분의 인증 방법을 지원합니다.
API 스캔
API 대상을 스캔하려면 해당 API의 스키마를 Probely에 제공해야 합니다. OpenAPI 스키마 URL을 제공하거나 이전에 로컬 파일로 저장한 경우 스키마를 업로드하여 API 대상을 추가할 때 이 작업을 수행합니다. URL 옵션을 사용하면 Probely가 스캔 전에 스키마를 가져와 항상 최신 버전의 스키마로 작동하도록 할 수 있습니다.

API 액세스를 위한 인증 방법 측면에서도 다양한 옵션이 제공됩니다. Probely는 정적 토큰뿐만 아니라 API를 스캔할 때 동적 인증 구성도 허용합니다. Probely가 인증 토큰을 얻을 수 있는 로그인 엔드포인트를 구성하거나, 고정 API 키가 포함된 사용자 지정 헤더를 설정할 수 있습니다. 또한 Probely가 스키마에서 찾은 매개변수에 사용할 사용자 정의 매개변수 값을 제공할 수도 있습니다.
API 인증 및 매개변수 구성을 완료하면 "지금 스캔" 버튼을 눌러 스캔을 시작할 수 있습니다. 몇 초 후, 동일한 스캔 페이지에서 스캔 진행 상황을 확인할 수 있습니다. 스캔이 완료되면 발견된 모든 엔드포인트와 각 응답 코드를 보여주는 커버리지 보고서를 다운로드할 수 있습니다. 이 보고서는 실패한 엔드포인트가 있는지 여부도 알려줍니다.
스캔 결과 검토
스캔 결과 페이지에는 스캔이 진행 중인 경우에도 검색 결과가 표시되는 즉시 나타납니다. 각 결과는 심각도 (높음, 중간 또는 낮음), 해당 대상 및 URL, 결과 설명, 발견 시간 및 날짜, 상태 (고정 또는 고정되지 않음) 및 할당자, PCI DSS 또는 OWASP 준수에 영향을 미치는지 여부를 보여줍니다.

검색된 취약점에 대한 정보를 제공하는 것 외에도, 결과 페이지는 팀이 수정할 취약점을 할당하는 데도 유용합니다. 이를 위해서는 왼쪽의 확인란을 클릭하고 드롭다운 메뉴에서 담당자를 선택하면 됩니다.
Probely는 발견된 취약점을 수정하는 방법에 대한 정보도 제공합니다. 이러한 지침과 함께 전체 요청 및 응답과 증거를 확인할 수 있습니다.

대시보드 페이지에서는 검사 대상의 보안 위험을 요약한 다양한 차트를 확인할 수 있습니다. 그래프는 위험 점수, 평균 문제 해결 시간, 심각도 수준과 같은 다양한 주요 지표의 추세를 보여줍니다. 또한, 가장 주의를 기울여야 하는 웹사이트와 가장 자주 발생하는 상위 5가지 취약점을 한눈에 파악할 수 있습니다.

마지막으로, 통합 페이지에서 Probely를 다양한 도구와 통합하여 프로젝트, 팀 커뮤니케이션, 문제 추적 등을 관리할 수 있습니다. Azure Boards, DefectDojo, Slack, Jira, Jenkins, CircleCI 등의 다양한 통합 기능을 사용할 수 있습니다.
개발 및 보안 팀을 위한 도구
애자일 개발 팀에게는 시장 출시 시간이 가장 중요합니다. 소프트웨어가 품질 저하 없이 최대한 빨리 프로덕션에 들어갈 수 있도록 지원하는 모든 도구는 매우 환영받습니다. Probely는 웹사이트 및 API 보안을 개선하고, 시간 약속을 지키며, 고품질 소프트웨어 제품을 제공할 수 있는 비용 효율적인 방법을 제공합니다.
보안 팀에게 Probely는 웹 애플리케이션을 보호하고 수정해야 할 취약점을 관리할 수 있는 플랫폼을 제공합니다. 또한, 감독 역할을 하면서 일부 보안 테스트를 개발팀에 직접 맡길 수도 있습니다.
Probely는 무료 평가판, 엔터프라이즈 평가 라이선스, 제품 데모를 제공합니다. 시작하려면 Probely에 문의하십시오.