CVE-2023-26118

리도스 취약점
영향
AngularJS
>=1.4.9
in
AngularJS
패치 사용 가능
이 취약점은 HeroDevs에서 제공하는 네버엔딩 지원(NES) 버전에서 수정되었습니다.

재현 단계

It’s possible in versions of Angular starting from 1.4.9 to conduct a Regular Expression Denial of Service (ReDoS) attack via the <input type="url"> element. If a malicious actor carefully composes an insecure regular expression that is used by the input[url] function, catastrophic backtracking and monopolization of system resources can occur. A proof of concept demonstrating this exploit is available on StackBlitz.

문제 해결

이 익스플로잇에 대한 수정 사항은 AngularJS XLTS/NES 버전 1.9.1 및 1.5.17에서 사용할 수 있으며 사이트 소유자는 해당 버전으로 업데이트해야 합니다.

학습 및 예방

리도스 공격은 표적 시스템이 오랜 시간이 걸리는 정규식 패턴 일치를 해결하려고 시도하여 시스템의 합법적인 사용자에 대한 서비스를 거부합니다. 이는 서비스 거부(DDoS) 공격의 한 형태입니다.

공격에서 정규식 엔진은 일치하는 항목을 찾기 위해 일련의 단계를 실행합니다. 이러한 단계 중 일부는 빠르게 완료될 수 있지만 다른 단계, 특히 실패하는 단계는 훨씬 더 오래 걸립니다. 이 경우 공격자가 신중하게 만든 정규식을 브라우저가 해결하려고 시도할 때 브라우저는 다른 일치 항목을 역추적하여 결과를 반환하는 데 상당한 시간이 소요될 수 있습니다.

결론

이 취약점에 설명된 수정 사항은 1.9.1에 포함되어 있으며, 아직 Angular 1.5를 사용 중인 HeroDevs AngularJS 네버엔딩 서포트 고객도 즉시 사용할 수 있습니다. 히어로데브 네버엔딩 서포트 구독을 통해 안심하고 사용하려면 지금 바로 영업팀에 문의하세요.

리소스

NIST 2023-26118 항목