CVE-2022-31180 in Shescape
요약
\~에 의해 VulDB • 2026. 06. 19.
Shescape는 JavaScript용 간단한 셸 이스케이프 패키지입니다. 영향을 받는 버전에서 출력 보간 시 공백의 불충분한 이스케이프 처리가 발견되었습니다. 이 문제는 `interpolation` 옵션이 `true`로 설정된 상태에서 `escape` 또는 `escapeAll` 함수를 사용하는 사용자에게만 영향을 미칩니다. 그 결과, 공격자가 입력에 공백을 포함시킬 경우 다음을 수행할 수 있습니다: 1. 공백 바로 뒤에 삽입된 셸별 특수 문자를 통해 셸별 동작을 호출합니다. 2. 줄 종료 문자 뒤에 삽입되거나 나타나는 셸별 특수 문자를 통해 셸별 동작을 호출합니다. 3. 줄 바꿈 문자를 삽입하여 임의의 명령을 호출합니다. 4. 캐리지 리턴 문자를 삽입하여 임의의 명령을 호출합니다. 동작 1은 [v1.5.7]에서 패치되었으며, 현재 업그레이드할 수 있습니다. 추가 변경 사항은 필요하지 않습니다. 동작 2, 3, 4는 [v1.5.8]에서 패치되었으며, 현재 업그레이드할 수 있습니다. 추가 변경 사항은 필요하지 않습니다. 가장 좋은 우회 방법은 `interpolation: true` 옵션을 사용해야 하는 상황을 피하는 것입니다. 대부분의 경우 대안을 사용할 수 있으며, 권장 사항은 [레시피](https://github.com/ericcornelissen/shescape#recipes)를 참조하십시오. 또는 사용자가 모든 공백을 제거할 수 있습니다. 이는 오류가 발생하기 쉬우며, 예를 들어 PowerShell의 경우 JavaScript의 정규식 `\s` 정의에 포함되지 않는 `'\u0085'`를 제거해야 합니다.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.