고급 SAST

다른 SAST 도구가 놓치는 취약점 탐지

Sonar의 고급 SAST는 코드를 넘어 서드파티 라이브러리의 동작을 분석하여 프로덕션에 도달하기 전에 깊이 숨겨진 보안 위험을 발견합니다.

고급 SAST로 더 깊이 탐색

SonarQube Advanced Security에 포함된 Sonar의 고급 SAST 기능은 조직이 타사 오픈소스 라이브러리와의 상호작용에서 비롯된 애플리케이션 코드 문제를 식별하고 해결할 수 있도록 지원합니다. 이 독보적인 기능은 Sonar의 SAST가 라이브러리 내외의 데이터 흐름을 추적하여 다른 도구들이 탐지하지 못하는 깊이 숨겨진 보안 취약점을 효과적으로 발견할 수 있게 합니다.

고급 SAST는 심층 오염 분석, 포괄적 보안 규칙, 클라우드 비밀 정보 탐지 등을 이미 포함하는 기존 SAST 엔진을 한 단계 강화합니다. 이제 이 혁신적인 기술을 통해 SonarQube Server 및 SonarQube Cloud 상용 에디션은 가장 널리 사용되는 라이브러리의 내부 작동 방식을 완벽히 가시화하여 탁월한 코드 분석을 보장합니다.

Sonar의 고급 SAST를 통해 조직은 코드 보안 문제를 자신 있게 해결하고, 강력한 애플리케이션 보안을 달성하며, 신뢰할 수 있고 강화된 코드베이스의 혜택을 누릴 수 있습니다.

SonarQube로 고급 SAST를 사용해 보세요
Image
코드 보안

고급 SAST의 이점

Icon

깊이 숨겨진 보안 문제 발견

소프트웨어 애플리케이션의 99%는 타사 라이브러리(의존성)의 코드를 사용하고 상호작용합니다. 현재 대부분의 SAST 도구는 애플리케이션 코드만 분석하며, 라이브러리 코드는 대부분 블랙박스로 남아 있습니다. Sonar의 고급 SAST는 코드 분석 및 스캔 범위를 확장하여 오픈소스 종속성에 포함된 알려지지 않은 코드 부분까지 커버합니다. 종속성(라이브러리) 스캔을 통해 Sonar SAST는 데이터 흐름 분석을 확장하고 다른 도구들이 발견하지 못하는 코드 내 깊숙이 숨겨진 보안 취약점을 찾아냅니다. 고급 SAST는 현재 SonarQube Server 및 SonarQube Cloud에서 Java, C#, JavaScript/TypeScript를 지원합니다. 수천 개의 최상위 및 일반적으로 사용되는 오픈소스 라이브러리와 그 후속(전이적) 종속성을 지원합니다. 자동으로 확장되며 향후 더 많은 언어와 라이브러리를 지원할 예정입니다. 최적화를 위해 머신러닝(ML)이 활용됩니다.

보안 분석

버그 및 보안 취약점으로 이어질 수 있는 다양한 코드 문제를 탐지하고 수정하도록 설계된 Sonar는 30개 이상의 프로그래밍 언어와 프레임워크를 지원합니다. Sonar의 보안 분석은 SQL 인젝션 취약점, 크로스 사이트 스크립팅(XSS) 코드 인젝션 공격, 버퍼 오버플로, 인증 문제, 클라우드 시크릿 탐지 등 광범위한 보안 문제 탐지에 도움이 될 수 있습니다. SonarQube Server Enterprise Edition 및 Data Center Edition과 SonarQube Cloud Enterprise Plan에서는 보안 규칙이 PCI DSS, CWE Top 25, OWASP ASVS, OWASP Top 10, STIG, CASA 등 확립된 보안 표준에 따라 분류됩니다.

Header image
보안 핫스팟 > 코드 검토 image

보안 핫스팟 > 코드 검토

보안 핫스팟은 사람의 검토가 필요한 보안 민감 코드의 사례입니다. 개발자는 보안 핫스팟을 다루며 보안 위험을 평가하는 방법을 배우고 안전한 코딩 관행에 대한 이해를 높일 수 있습니다.

보안 취약점 > 코드 변경/수정 image

보안 취약점 > 코드 변경/수정

보안 취약점은 즉각적인 조치가 필요합니다. Sonar는 코드가 위험에 처한 이유를 설명하는 상세한 문제 설명과 코드 하이라이트를 제공합니다. 안내를 따르고, 수정 사항을 체크인하여 애플리케이션을 보호하세요.

오염 분석으로 최대 보호

악성 행위자 추적

사용자가 제공한 데이터가 핵심 시스템(데이터베이스, 파일 시스템, OS 등)에 도달하기 전에 반드시 정제되도록 하면 코드 보안을 보장하는 데 도움이 됩니다. 오염 분석은 신뢰할 수 없는 사용자 입력을 실행 흐름 전반에 걸쳐 추적합니다. 메서드 간뿐만 아니라 파일 간에도 추적합니다.

더 많은 기능 살펴보기
Image

중요한 언어에 대한 핵심 코드 보안 규칙

SAST 도구로 코드 보안을 유지하는 데 도움이 되는 중요한 언어에 대한 매우 관련성 높은 규칙을 얻으세요.

Java, PHP, C#, C, C++, Python, JavaScript, TypeScript 등 다양한 언어.

모든 언어 살펴보기
Image
코드 보안

조기 보안 피드백, 역량 강화된 개발자

책임감 강화

실시간 피드백

코드 검토 중 보안 피드백을 받으면 코드 보안에 대해 더 많이 배우고 책임감을 가질 수 있는 기회가 됩니다.

jeff leaves a note about code issues

Sonar 보안 보고서

보안 보고서는 코드의 보안 표준 준수 현황을 한눈에 파악할 수 있게 합니다. SonarQube Server Enterprise Edition 및 Data Center Edition, SonarQube Cloud Enterprise Plan에서 제공되는 이 보안 보고서를 통해 가장 흔한 보안 실수 대비 현재 위치를 확인할 수 있습니다. 규정 준수 보고서는 각 릴리스의 품질을 추적하고 배포된 코드가 조직의 품질 기준을 충족한다는 증거를 제공합니다.

보고서 항목:

  • PCI DSS (버전 4.0 및 3.2.1)
  • OWASP Top 10 (버전 2021 및 2017)
  • CWE Top 25 (버전 2022, 2021, 2020)
  • OWASP ASVS (버전 4.0, 레벨 1~3)
  • STIG
  • CASA
OWASP Top 10 참조
Image

엔드투엔드 SAST 도구

소프트웨어 개발 워크플로우에 정적 분석을 원활하게 통합

DevOps 및 CI/CD

SAST를 DevOps 및 CI/CD 파이프라인에 통합하면 조직은 소프트웨어의 보안 태세를 강화하고 개발 라이프사이클 초기에 취약점을 식별할 수 있습니다. 보안 분석 도구는 개발 프로세스의 핵심 부분이 되며, 코드 변경 사항을 커밋할 때 실시간으로 조기 피드백을 받습니다. Sonar는 GitHub, GitLab, Azure DevOps, TravisCI, CircleCI, Bitbucket 등 주요 DevOps 및 CI/CD 플랫폼과의 통합을 지원합니다. Git, Subversion 등 가장 널리 사용되는 SCM에 대한 네이티브 지원과 CVS, Jazz RTC, Mercurial, TFVC 등 기타 인기 SCM에 대한 커뮤니티 지원을 제공합니다.

Image

풀 리퀘스트 장식

풀 리퀘스트 및 개발 브랜치 내에서 직접 즉각적인 코드 리뷰를 받으세요. 문제가 발생하기 전에 이슈를 수정하세요.

  • 코드 품질이 기준에 미달할 경우 CI/CD 파이프라인을 자동으로 실패시키는 Go/No-Go 품질 게이트 구현
  • DevOps 플랫폼 인터페이스 내에서 직접 코드 수정 사항 검토 및 우선순위 지정
  • 모노레포 내 여러 프로젝트에 대해 서로 다른 품질 게이트 설정으로 프로젝트별 맞춤형 피드백 메시지 수신

IDE SonarQube와 IDE 통합

  • 개발자의 코드 환경에 바로 적용되는 우수한 코드 품질 도구 기능
  • 실시간 분석 피드백
  • 코드 문제 강조 표시
  • 엄격한 코드 품질 기준과 함께 취약점 문제 세부 정보 및 수정 지침 제공
  • 사용자 지정 가능한 규칙을 통해 개발자가 특정 요구 사항에 따라 코딩할 수 있도록 지원
  • 고급 유연성으로 개발자가 여러 지원 언어에 걸쳐 적응하고 채택할 수 있도록 지원
Security Architect

"Sonar has helped our organization by enabling us to maintain code standards and code cleanliness."

Ricky LopezSecurity Architect/AppSec Manager

SAST FAQs

How does advanced SAST find vulnerabilities traditional tools can’t?

Traditional tools create a “black box” around third-party libraries, but Advanced SAST eliminates this blind spot. It extends taint analysis to trace the flow of data into and out of open source dependencies. By seeing how your code interacts with the library code, it uncovers deeply hidden, complex vulnerabilities that traditional static application testing(SAST) tools miss.

How does advanced SAST work?

Advanced SAST focuses on analyzing the interaction between your first-party code and the third-party libraries. It does not search for existing vulnerabilities inside the third-party library code. It pre-scans popular source libraries to create a knowledge base of security sensitive points- like where data enters or leaves a function. Then during the project analysis, it checks if your code is misusing those library functions in a way that creates a vulnerability in your application. 

Why do I need advanced SAST if I already use software composition analysis(SCA)?

SCA focuses on identifying known, public vulnerabilities(CVEs) within a library itself. Advanced SAST solves a different challenge; vulnerabilities that arise from the interaction between your code and third-party library code. By enabling both Advanced SAST and SCA, you get full, integrated visibility of risks that neither tool can provide alone.

What is a real-world example of a vulnerability found by Advanced SAST?

A notable example is the critical Jenkins vulnerability(CVE-2024-23897), which was caused by the insecure interaction between Jenkins code and an imported third-party library. The core issue wasn’t in either piece of the code, but in their combination. Only Advanced SAST would be capable of analyzing this specific interaction to correctly identify and raise the security vulnerability.

How are scan results and remediation suggestions presented to developers using SonarQube's SAST?

Scan results from SonarQube's SAST solution are presented in clear, actionable reports that highlight discovered vulnerabilities and suggest remediation steps. Developers receive this feedback either directly within their IDE or through integrated dashboards, making it easy to incorporate fixes promptly into their workflow.

Actionable suggestions guide developers to resolve security issues while adhering to best practices for writing quality code. By breaking down vulnerabilities to the source and recommending proper fixes, SonarQube helps bridge the gap between detection and remediation, empowering teams to reduce risk efficiently.

What makes SonarQube’s approach to quality code unique compared to other SAST solutions?

SonarQube's SAST solution stands out for its commitment to enhancing both security and maintainability within the codebase. The solution encourages developers to address not only immediate vulnerabilities but also code quality issues such as code duplication, complexity, and outdated patterns. This dual focus ensures that security improvements go hand-in-hand with sustainable development practices.

By integrating security checks into daily coding activities and emphasizing actionable feedback, SonarQube helps teams create high-quality software that evolves with changing requirements and technology landscapes. The holistic approach ensures that code is prepared for future innovation while staying secure and robust.

How often should SAST scans be run to maintain quality code in a rapidly changing codebase?

Security and quality are best maintained when SAST scans are run continuously throughout the development lifecycle. SonarQube supports automated, incremental scans with every code commit, merge request, or build, ensuring that new vulnerabilities and quality issues are detected as soon as they are introduced.

This frequent analysis allows teams to catch problems early, avoid technical debt, and keep codebases secure without slowing down delivery. By integrating SAST into the regular rhythm of development, organizations can sustain high standards for quality code and adapt quickly to new risks and challenges.

What’s the difference between SAST and DAST?

Static Application Security Testing (SAST) analyzes an application’s source code, bytecode, or binaries to find security vulnerabilities before the app runs. It’s performed early in the SDLC (pre-production), integrates with IDEs and CI pipelines, and flags issues at the line-of-code level (e.g., injection risks, insecure APIs). Fixes are typically faster because developers get precise locations and remediation guidance.

Dynamic Application Security Testing (DAST) tests a running application from the outside-in, simulating an attacker’s perspective. It requires a deployed (staging or production-like) environment and detects exploitable issues at runtime (e.g., broken authentication, misconfigurations, server errors). Findings reflect real behaviors and are less prone to false positives, but the root cause in code is less direct and fixes can take longer.