응용 프로그램 보안
Application security시리즈의 일부 |
정보 보안 |
---|
관련 보안 카테고리 |
위협 |
|
방어. |
애플리케이션 보안(짧은 AppSec)에는 개발 팀에 안전한 소프트웨어 개발 라이프 사이클을 도입하는 모든 작업이 포함됩니다.최종 목표는 보안 관행을 개선하고 이를 통해 애플리케이션 내의 보안 문제를 발견, 수정 및 예방하는 것입니다.요건 분석, 설계, 구현, 검증 및 [1]유지보수에 이르기까지 애플리케이션의 라이프 사이클 전체를 망라합니다.
접근
다양한 접근법에 따라 애플리케이션 내에 숨어 있는 보안 취약성의 서브셋이 다르며 소프트웨어 라이프 사이클에 따라 가장 효과적입니다.이들은 각각 발견된 시간, 노력, 비용 및 취약성의 서로 다른 트레이드오프를 나타냅니다.
- 설계 리뷰코드가 작성되기 전에, 애플리케이션의 아키텍처와 설계를 재검토해 시큐러티상의 문제를 확인할 수 있습니다.이 단계에서 일반적인 방법은 위협 모델을 생성하는 것입니다.
- 화이트박스 보안 리뷰 또는 코드 리뷰이는 소스 코드를 수동으로 확인하고 보안 결함을 발견함으로써 애플리케이션을 깊이 이해하는 보안 엔지니어입니다.응용 프로그램을 이해함으로써 응용 프로그램 고유의 취약성을 발견할 수 있습니다.
- 블랙박스 보안 감사이는 보안 취약성을 테스트하는 응용 프로그램을 사용하는 경우에만 수행되며 소스 코드가 필요하지 않습니다.
- 자동 툴링개발 또는 테스트 환경에 포함시킴으로써 많은 보안 도구를 자동화할 수 있습니다.예를 들어 코드 에디터 또는 CI/CD 플랫폼에 통합된 자동화된 DAST/SAST 도구가 있습니다.
- 취약성 플랫폼 조정이들은 많은 웹 사이트와 소프트웨어 개발자가 제공하는 해커에 의한 애플리케이션 보안 솔루션이며, 이를 통해 개인은 버그를 보고한 것에 대한 인식과 보상을 받을 수 있습니다.
웹 응용 프로그램 보안
웹 응용 프로그램 보안은 웹 사이트, 웹 응용 프로그램 및 웹 서비스의 보안을 다루는 정보 보안의 한 분야입니다.웹 애플리케이션 보안은 대략적으로 애플리케이션 보안의 원칙을 따르지만 인터넷과 웹 [2][3]시스템에만 적용됩니다.
Web Application Security Tools는 HTTP 트래픽(예: 웹 응용 프로그램 방화벽)을 사용하기 위한 특수 도구입니다.
보안 위협
Open Web Application Security Project(OWASP)는 무료 오픈 리소스를 제공합니다.그것은 OWASP 재단이라고 불리는 비영리단체가 이끌고 있다.OWASP Top 10 - 2017은 40개 이상의 협력기관으로부터 수집한 종합 데이터를 바탕으로 최근 발표된 연구 결과입니다.이 데이터를 통해 50,000개 [4]이상의 애플리케이션에서 약 230만 개의 취약성이 발견되었습니다.OWASP Top 10 - 2021에 따르면 가장 중요한 10가지 웹 애플리케이션 보안 위험은 다음과 같습니다.[5]
- 액세스 컨트롤의 파손
- 암호화 오류
- 주입
- 안전하지 않은 설계
- 보안 설정 오류
- 취약하고 오래된 컴포넌트
- 식별 및 인증 실패
- 소프트웨어 및 데이터 무결성 장애
- 보안 로깅 및 모니터링 장애*
- 서버측요구위조(SSRF)*
보안 테스트용 툴링
보안 테스트 기술은 애플리케이션의 취약성 또는 보안 취약점을 검사합니다.이러한 취약성으로 인해 응용 프로그램이 악용될 수 있습니다.보안 테스트는 소프트웨어 개발 라이프 사이클(SDLC) 전체에 걸쳐 구현되어 시기적절하고 철저한 방법으로 취약성에 대처하는 것이 이상적입니다.
애플리케이션의 취약성을 식별하기 위한 자동화 툴에는 여러 종류가 있습니다.응용 프로그램의 취약성을 식별하기 위해 사용되는 일반적인 도구 카테고리는 다음과 같습니다.
- 정적 애플리케이션 보안 테스트(SAST)는 애플리케이션 개발 중 보안 취약성에 대한 소스 코드를 분석합니다.DST에 비해 응용 프로그램이 실행 가능 상태가 되기 전부터 사용할 수 있습니다.SAST는 완전한 소스 코드에 액세스 할 수 있기 때문에 화이트 박스 방식입니다.이로 인해 보다 상세한 결과를 얻을 수 있지만 수동으로 확인해야 하는 잘못된 긍정 결과가 많이 발생할 수 있습니다.
- DAST(Dynamic Application Security Testing)는 웹 사이트를 탐색하고 분석하여 취약성을 자동으로 탐지합니다.이 방법은 확장성이 뛰어나고 통합이 용이하며 신속합니다.DAST 도구는 주입 결함 등의 낮은 수준의 공격에 대처하는 데 적합하지만 논리 또는 비즈니스 논리 [6]결함 등의 높은 수준의 결함을 탐지하는 데는 적합하지 않습니다.퍼징 툴은 일반적으로 [7]입력 테스트에 사용됩니다.
- Interactive Application Security Testing(IAST; 인터랙티브응용프로그램보안테스트)는 소프트웨어 계측을 사용하여 내부에서 애플리케이션을 평가합니다.이를 통해 코드, HTTP 트래픽, 라이브러리 정보, 백엔드 연결 및 설정 [8][9]정보에 액세스할 수 있을 뿐만 아니라 SAST 및 DST 방식의 장점을 결합할 수 있습니다.일부 IAT 제품은 애플리케이션을 공격해야 하는 반면 다른 제품은 일반 품질 [10][promotional source?][11][promotional source?]보증 테스트 중에 사용할 수 있습니다.
- 런타임 애플리케이션 자가 보호 기능은 기존 애플리케이션을 확장하여 애플리케이션 런타임 내에서 침입 탐지 및 차단 기능을 제공합니다.
- 종속성 스캐너(소프트웨어 구성 분석이라고도 함)는 알려진 취약성이 있는 소프트웨어 구성 요소의 사용을 탐지하려고 합니다.이러한 도구는 소스 코드 빌드 프로세스 중 또는 주기적으로 온디맨드 방식으로 작동할 수 있습니다.
- 추상화는 더 복잡한 것들을 덜 복잡하게 만드는 아이디어입니다.
보안 표준 및 규정
- CERT 시큐어 코딩
- ISO/IEC 27034-1:2011 정보기술 - 보안 기술 - 애플리케이션 보안 - Part 1: 개요와 개념
- ISO/IEC TR 24772:2013 정보기술 - 프로그래밍 언어 - 언어 선택 및 사용을 통해 프로그래밍 언어의 취약성을 피하기 위한 지침
- NIST 스페셜 퍼블리케이션 800-53
- OWASP ASVS: 웹 애플리케이션 보안 검증[12] 표준
「 」를 참조해 주세요.
레퍼런스
- ^ Happe, Andreas (3 June 2021). "What is AppSec anyways?". snikt.net.
- ^ "Web Application Security Overview". 2015-10-23.
- ^ Shuaibu, Bala Musa; Norwawi, Norita Md; Selamat, Mohd Hasan; Al-Alwani, Abdulkareem (2013-01-17). "Systematic review of web application security development model". Artificial Intelligence Review. 43 (2): 259–276. doi:10.1007/s10462-012-9375-6. ISSN 0269-2821. S2CID 15221613.
- ^ Korolov, Maria (Apr 27, 2017). "Latest OWASP Top 10 looks at APIs, web apps: The new OWASP Top 10 list is out, and while most of it remains the same, there are new additions focusing on web applications and APIs". CSO. ProQuest 1892694046.
- ^ "OWASP Top 10 - 2021: The Ten Most Critical Web Application Security Risks". Open Web Application Security Project. 2021. Retrieved January 11, 2022.
- ^ "Web Application Vulnerability Scanners". NIST.
- ^ "Fuzzing". OWASP.
- ^ Williams, Jeff (2 July 2015). "I Understand SAST and DAST But What is an IAST and Why Does it Matter?". Contrast Security. Retrieved 10 April 2018.
- ^ Velasco, Roberto (7 May 2020). "What is IAST? All About Interactive Application Security Testing". Hdiv Security. Retrieved 7 May 2020.
- ^ Abezgauz, Irene (February 17, 2014). "Introduction to Interactive Application Security Testing". Quotium.
- ^ Rohr, Matthias (November 26, 2015). "IAST: A New Approach For Agile Security Testing". Secodis.
- ^ "OWASP Application Security Verification Standard".