EITC/IS/WAPT 웹 애플리케이션 침투 테스트는 웹 사이트 스파이더링, 스캐닝 및 공격 기술을 위한 다양한 기술을 포함하여 웹 애플리케이션 침투 테스트(화이트 해킹)의 이론 및 실제 측면에 대한 유럽 IT 인증 프로그램이며, 여기에는 특수 침투 테스트 도구 및 제품군이 포함됩니다. .
EITC/IS/WAPT 웹 애플리케이션 침투 테스트의 커리큘럼은 Burp Suite 소개, 웹 스프라이드링 및 DVWA, Burp Suite를 사용한 무차별 대입 테스트, WAFW00F를 사용한 웹 애플리케이션 방화벽(WAF) 감지, 대상 범위 및 스파이더링, ZAP, WordPress 취약점 스캔 및 사용자 이름 열거, 로드 밸런서 스캔, 교차 사이트 스크립팅, XSS – 반영, 저장 및 DOM, 프록시 공격, ZAP에서 프록시 구성, 파일 및 디렉터리 공격, DirBuster를 사용한 파일 및 디렉터리 검색, 웹 공격 실습 , OWASP Juice Shop, CSRF – 교차 사이트 요청 위조, 쿠키 수집 및 역설계, HTTP 속성 – 쿠키 도용, SQL 삽입, DotDotPwn – 디렉터리 탐색 퍼징, iframe 주입 및 HTML 주입, Heartbleed 공격 – 검색 및 공격, PHP 코드 주입, bWAPP – HTML 주입, 반영된 POST, Commix를 사용한 OS 명령 주입, 서버 측 SSI 주입 포함, Docker에서 침투 테스트, OverTheWire Natas, LFI 및 명령 주입, 침투 테스트를 위한 Google 해킹, 침투 테스트를 위한 Google Dorks, Apache2 ModSecurity 및 Nginx ModSecurity는 다음 구조 내에서 이 EITC 인증에 대한 참조로 포괄적인 비디오 교육 콘텐츠를 포함합니다.
웹 애플리케이션 보안(종종 Web AppSec이라고도 함)은 웹 사이트가 공격을 받았을 때도 정상적으로 작동하도록 설계하는 개념입니다. 이 개념은 일련의 보안 조치를 웹 애플리케이션에 통합하여 적대적인 에이전트로부터 자산을 보호하는 것입니다. 모든 소프트웨어와 마찬가지로 웹 응용 프로그램은 결함이 발생하기 쉽습니다. 이러한 결함 중 일부는 악용될 수 있는 실제 취약점으로, 기업에 위험을 초래할 수 있습니다. 이러한 결함은 웹 애플리케이션 보안을 통해 보호됩니다. 여기에는 보안 개발 접근 방식을 채택하고 SDLC(소프트웨어 개발 수명 주기) 전반에 걸쳐 보안 제어를 배치하여 설계 결함과 구현 문제가 해결되도록 해야 합니다. 소위 화이트 해킹 방식을 사용하여 웹 애플리케이션 취약점을 발견하고 악용하는 것을 목표로 하는 전문가에 의해 수행되는 온라인 침투 테스트는 적절한 방어를 가능하게 하기 위해 필수적인 관행입니다.
웹 펜 테스트라고도 하는 웹 침투 테스트는 악용 가능한 결함을 찾기 위해 웹 애플리케이션에 대한 사이버 공격을 시뮬레이션합니다. 침투 테스트는 웹 애플리케이션 보안(WAF)의 맥락에서 웹 애플리케이션 방화벽을 보완하기 위해 자주 사용됩니다. 일반적으로 펜 테스트는 코드 주입 공격에 취약한 미위생 입력과 같은 취약점을 찾기 위해 여러 애플리케이션 시스템(예: API, 프론트엔드/백엔드 서버)에 침투하려는 시도를 수반합니다.
온라인 침투 테스트의 결과는 WAF 보안 정책을 구성하고 발견된 취약점을 해결하는 데 사용할 수 있습니다.
침투 테스트에는 XNUMX단계가 있습니다.
펜 테스트 절차는 XNUMX단계로 나뉩니다.
- 기획 및 스카우트
다룰 시스템과 사용할 테스트 방법론을 포함하여 테스트의 범위와 목표를 정의하는 것이 첫 번째 단계입니다.
대상의 작동 방식과 잠재적인 약점을 더 잘 이해하려면 인텔리전스(예: 네트워크 및 도메인 이름, 메일 서버)를 수집하십시오. - 스캐닝
다음 단계는 대상 애플리케이션이 다양한 유형의 침입 시도에 어떻게 반응할지 파악하는 것입니다. 이것은 일반적으로 다음 방법을 사용하여 수행됩니다.
정적 분석 – 애플리케이션의 코드를 검사하여 애플리케이션이 실행될 때 어떻게 동작할지 예측합니다. 한 번의 패스로 이러한 도구는 전체 코드를 스캔할 수 있습니다.
동적 분석은 애플리케이션이 작동하는 동안 애플리케이션의 코드를 검사하는 프로세스입니다. 이 스캔 방법은 응용 프로그램 성능에 대한 실시간 보기를 제공하기 때문에 더 실용적입니다. - 액세스 권한 얻기
대상의 약점을 찾기 위해 이 단계에서는 사이트 간 스크립팅, SQL 주입 및 백도어와 같은 웹 애플리케이션 공격을 사용합니다. 이러한 취약성이 입힐 수 있는 피해를 이해하기 위해 테스터는 권한 상승, 데이터 도용, 트래픽 가로채기 등을 통해 취약성을 악용하려고 합니다. - 액세스 유지
이 단계의 목적은 취약성을 악용하여 손상된 시스템에 장기간 존재하여 악의적인 행위자가 심층적인 액세스 권한을 얻을 수 있는지 평가하는 것입니다. 목표는 회사의 가장 민감한 정보를 훔치기 위해 몇 달 동안 시스템에 머물 수 있는 지능형 지속적 위협을 모방하는 것입니다. - Analysis
그런 다음 침투 테스트 결과는 다음과 같은 정보가 포함된 보고서에 입력됩니다.
상세하게 악용된 취약점
민감한 정보를 얻은 데이터
펜 테스터가 시스템에서 눈에 띄지 않게 머무를 수 있었던 시간입니다.
보안 전문가는 취약점을 패치하고 추가 공격을 방지하기 위해 기업의 WAF 설정 및 기타 애플리케이션 보안 솔루션을 구성하는 데 이 데이터를 사용합니다.
침투 테스트 방법
- 외부 침투 테스트는 웹 애플리케이션 자체, 회사 웹사이트, 이메일 및 도메인 이름 서버(DNS)와 같이 인터넷에서 볼 수 있는 회사 자산에 중점을 둡니다. 목적은 유용한 정보에 접근하고 추출하는 것입니다.
- 내부 테스트에는 테스터가 적대적인 내부 공격을 시뮬레이션하는 회사 방화벽 뒤의 애플리케이션에 액세스할 수 있어야 합니다. 이것은 불량 직원 시뮬레이션이 필요하지 않습니다. 피싱 시도의 결과로 자격 증명을 얻은 직원이 일반적인 출발점입니다.
- 블라인드 테스팅은 테스터에게 단순히 테스트 중인 회사의 이름을 제공하는 것입니다. 이를 통해 보안 전문가는 실제 애플리케이션 공격이 실시간으로 어떻게 진행되는지 확인할 수 있습니다.
- 이중 맹검 테스트: 이중 맹검 테스트에서 보안 전문가는 사전에 시뮬레이션된 공격을 인식하지 못합니다. 그들은 현실 세계에서와 같이 침입 시도가 있기 전에 요새를 강화할 시간이 없습니다.
- 표적 테스트 – 이 시나리오에서 테스터와 보안 직원은 협력하고 서로의 움직임을 추적합니다. 이것은 보안 팀에 해커의 관점에서 실시간 피드백을 제공하는 훌륭한 훈련입니다.
웹 애플리케이션 방화벽 및 침투 테스트
침투 테스트와 WAF는 별개이지만 보완적인 보안 기술입니다. 테스터는 로그와 같은 WAF 데이터를 활용하여 다양한 유형의 펜 테스트(블라인드 및 더블 블라인드 테스트 제외)에서 애플리케이션의 취약한 영역을 찾고 악용할 가능성이 높습니다.
결과적으로 펜 테스트 데이터는 WAF 관리자에게 도움이 될 수 있습니다. 테스트 완료 후 WAF 구성을 수정하여 테스트 중에 감지된 결함으로부터 보호할 수 있습니다.
마지막으로 펜 테스팅은 PCI DSS 및 SOC 2와 같은 보안 감사 방법의 특정 준수 요구 사항을 충족합니다. PCI-DSS 6.6과 같은 특정 요구 사항은 인증된 WAF를 사용하는 경우에만 충족될 수 있습니다. 그러나 앞서 언급한 이점과 WAF 설정을 수정할 수 있는 가능성으로 인해 펜 테스트가 덜 유용하지는 않습니다.
웹 보안 테스트의 중요성은 무엇입니까?
웹 보안 테스트의 목표는 웹 애플리케이션과 설정에서 보안 결함을 식별하는 것입니다. 응용 프로그램 계층은 기본 대상입니다(즉, HTTP 프로토콜에서 실행되는 대상). 문제를 유발하고 시스템이 예기치 않은 방식으로 응답하도록 하기 위해 웹 응용 프로그램에 다양한 형식의 입력을 보내는 것은 보안을 테스트하는 일반적인 접근 방식입니다. 이러한 "음성 테스트"는 시스템이 의도하지 않은 작업을 수행하는지 확인합니다.
또한 웹 보안 테스트에는 애플리케이션의 보안 기능(예: 인증 및 권한 부여)을 확인하는 것 이상의 작업이 수반된다는 사실을 인식하는 것이 중요합니다. 다른 기능을 안전하게 배포하는 것도 중요합니다(예: 비즈니스 로직, 적절한 입력 유효성 검사 및 출력 인코딩 사용). 목적은 웹 응용 프로그램의 기능이 안전한지 확인하는 것입니다.
보안 평가에는 어떤 유형이 있습니까?
- DAST(동적 응용 프로그램 보안) 테스트. 이 자동화된 애플리케이션 보안 테스트는 규제 보안 요구 사항을 충족해야 하는 위험도가 낮은 내부 대면 앱에 가장 적합합니다. DAST를 일반적인 취약점에 대한 몇 가지 수동 온라인 보안 테스트와 결합하는 것은 중간 위험 앱과 사소한 변경이 있는 중요한 애플리케이션에 대한 최상의 전략입니다.
- 정적 응용 프로그램에 대한 보안 검사(SAST). 이 애플리케이션 보안 전략에는 자동 및 수동 테스트 방법이 모두 포함됩니다. 라이브 환경에서 앱을 실행할 필요 없이 버그를 감지하는 데 이상적입니다. 또한 엔지니어는 소스 코드를 스캔하여 소프트웨어 보안 결함을 체계적으로 감지하고 수정할 수 있습니다.
- 침투 시험. 이 수동 응용 프로그램 보안 테스트는 필수 응용 프로그램, 특히 중요한 변경 사항이 있는 응용 프로그램에 이상적입니다. 지능형 공격 시나리오를 찾기 위해 평가는 비즈니스 로직과 적대자 기반 테스트를 사용합니다.
- 런타임에서 애플리케이션 자체 보호(RASP). 이 증가하는 애플리케이션 보안 방법은 위협이 발생하는 즉시 감시하고 방지할 수 있도록 애플리케이션을 계측하는 다양한 기술 기술을 통합합니다.
애플리케이션 보안 테스트는 회사의 위험을 낮추는 데 어떤 역할을 합니까?
웹 애플리케이션에 대한 대부분의 공격은 다음과 같습니다.
- SQL 주입
- XSS(교차 사이트 스크립팅)
- 원격 명령 실행
- 경로 순회 공격
- 제한된 콘텐츠 액세스
- 손상된 사용자 계정
- 악성코드 설치
- 판매 수익 손실
- 무너지는 고객의 신뢰
- 브랜드 평판 훼손
- 그리고 다른 많은 공격들
오늘날의 인터넷 환경에서 웹 응용 프로그램은 다양한 문제로 인해 손상을 입을 수 있습니다. 위의 그래픽은 공격자가 수행하는 가장 일반적인 공격 중 몇 가지를 보여주며, 각각은 개별 애플리케이션이나 전체 비즈니스에 심각한 피해를 줄 수 있습니다. 응용 프로그램을 취약하게 만드는 많은 공격과 공격의 가능한 결과를 알면 회사에서 미리 취약성을 해결하고 효과적으로 테스트할 수 있습니다.
취약점의 근본 원인을 식별하여 문제를 방지하기 위해 SDLC의 초기 단계 전반에 걸쳐 완화 제어를 설정할 수 있습니다. 웹 응용 프로그램 보안 테스트 중에 이러한 위협이 작동하는 방식에 대한 지식을 사용하여 알려진 관심 장소를 대상으로 할 수도 있습니다.
공격의 영향을 인식하는 것도 회사의 위험을 관리하는 데 중요합니다. 성공적인 공격의 영향은 전체 취약성의 심각도를 결정하는 데 사용될 수 있기 때문입니다. 보안 테스트 중에 취약점이 발견된 경우 심각도를 결정하면 회사에서 개선 노력의 우선 순위를 보다 효과적으로 지정할 수 있습니다. 회사에 대한 위험을 줄이려면 심각한 심각도 문제부터 시작하여 영향을 덜 미치는 문제로 진행합니다.
문제를 식별하기 전에 회사의 응용 프로그램 라이브러리에 있는 각 프로그램의 가능한 영향을 평가하면 응용 프로그램 보안 테스트의 우선 순위를 정하는 데 도움이 됩니다. Wenb 보안 테스트는 먼저 기업의 중요한 애플리케이션을 대상으로 하도록 예약할 수 있으며, 비즈니스에 대한 위험을 낮추기 위해 보다 대상화된 테스트를 수행할 수 있습니다. 유명한 응용 프로그램의 확립된 목록을 사용하여 wenb 보안 테스트는 먼저 기업의 중요한 응용 프로그램을 대상으로 하도록 일정을 잡을 수 있으며 비즈니스에 대한 위험을 낮추기 위해 보다 대상화된 테스트를 수행할 수 있습니다.
웹 애플리케이션 보안 테스트 중에 어떤 기능을 검사해야 합니까?
웹 응용 프로그램 보안 테스트 중에 다음 기능 목록을 고려하십시오. 각각의 비효율적인 구현은 약점을 초래하여 회사를 위험에 빠뜨릴 수 있습니다.
- 애플리케이션 및 서버 구성. 암호화/암호화 설정, 웹 서버 구성 등은 모두 잠재적인 결함의 예입니다.
- 입력 및 오류 처리 검증 열악한 입력 및 출력 처리는 SQL 주입, XSS(교차 사이트 스크립팅) 및 기타 일반적인 주입 문제로 이어집니다.
- 세션의 인증 및 유지 관리. 사용자 사칭으로 이어질 수 있는 취약점. 자격 증명의 강도와 보호도 고려해야 합니다.
- 권한 부여. 수직 및 수평 권한 상승으로부터 보호하는 애플리케이션의 능력이 테스트되고 있습니다.
- 비즈니스의 논리. 비즈니스 기능을 제공하는 대부분의 프로그램은 이에 의존합니다.
- 클라이언트 측 논리. 이러한 유형의 기능은 다른 유형의 클라이언트 측 기술(예: Silverlight, Flash, Java 애플릿)을 사용하는 웹 페이지뿐만 아니라 JavaScript가 많이 사용되는 최신 웹 페이지에서 점점 더 일반화되고 있습니다.
인증 커리큘럼에 대해 자세히 알아보기 위해 아래 표를 확장하고 분석할 수 있습니다.
EITC/IS/WAPT 웹 애플리케이션 침투 테스트 인증 커리큘럼은 비디오 형식의 공개 액세스 교육 자료를 참조합니다. 학습 과정은 관련 커리큘럼 부분을 다루는 단계별 구조(프로그램 -> 수업 -> 주제)로 나뉩니다. 도메인 전문가와의 무제한 컨설팅도 제공됩니다.
인증 절차 확인에 대한 자세한 내용은 어떻게 시작하나요?.
EITC/IS/WAPT 웹 애플리케이션 침투 테스트 프로그램에 대한 전체 오프라인 자가 학습 준비 자료를 PDF 파일로 다운로드하세요.