ReDoS 검사
정규표현식의 ReDoS(Regular Expression Denial of Service) 취약점을 분석합니다.
ReDoS는 악의적으로 설계된 입력이 정규표현식 엔진에서 지수적 백트래킹을 유발하여 서비스 거부를 일으키는 공격입니다. 중첩된 수량자, 겹치는 선택지 등이 주요 원인입니다.
//
예시 패턴:
알려진 취약 패턴
(a+)+$중첩 수량자 (Nested Quantifiers)수량자 안에 수량자가 있으면 입력 길이에 대해 지수적 백트래킹이 발생합니다.
([a-zA-Z]+)*$탐욕적 수량자 + 클리네 스타 (Greedy + Kleene)문자 클래스에 탐욕적 수량자가 적용되고, 그 그룹에 다시 *가 적용되어 치명적 백트래킹을 유발합니다.
(a|aa)+$겹치는 선택지 (Overlapping Alternation)선택지가 동일한 문자를 매치할 수 있어, 매치 실패 시 모든 조합을 시도합니다.
(\d+\.){1,3}\d+$IP 주소 유사 패턴 백트래킹숫자+점 그룹이 반복되며, 매치 실패 시 숫자 분배 조합이 폭발적으로 증가합니다.
정규표현식을 입력하세요
ReDoS 취약점 여부를 분석하고 성능 테스트를 수행합니다.