AEM 프로필 업데이트에서 서버측 유효성 검사 부족
Adobe Experience Manager(AEM)에서 작성자 CMS은 강력한 서버측 유효성 검사를 적용하지 않고 Touch UI를 통해 프로필을 업데이트할 수 있습니다. 이 문제는 프로필 필드에 엄격한 검사를 적용하지 않는 AEM의 기본 허용 유효성 검사 모델에서 비롯됩니다. 이 문제를 해결하려면 Sling PostProcessor 또는 사용자 지정 서블릿 논리를 사용하여 서버측 유효성 검사를 구현합니다.
설명 description
환경
Adobe Experience Manager(AEM), v6.5
문제/증상
-
불충분한 서버측 유효성 검사가 취약성 평가 및 침투 테스트(VAPT) 중에 확인되었습니다. 증상은 다음과 같습니다.
- AEM 작성자 CMS은 Touch UI를 통해 프로필을 업데이트하는 동안 잘못된 이메일 입력을 허용합니다.
- 클라이언트측 유효성 검사가 존재하지만 서버측 검사가 누락되어 잘못된 데이터가 있는 수정된 요청이 프로필 필드를 업데이트할 수 없습니다.
-
취약성은 취약성 평가 및 침투 테스트(VAPT) 운동 중에 확인되었습니다.
재현 단계:
- AEM 백엔드에 로그인하고 프로필 편집 페이지로 이동합니다.
- 이메일 필드에 대한 클라이언트측 유효성 검사가 있는지 확인합니다.
- 유효한 이메일 주소를 입력하고 변경 사항을 저장하는 동안 Burp Suite를 사용하여 요청을 가로채십시오.
- 전자 메일 매개 변수의 값을 fake 과(와) 같은 잘못된 값으로 수정하십시오.
- 수정된 요청을 전달하고 프로필이 유효한 이메일 없이 성공적으로 저장되었는지 확인합니다.
해결 방법 resolution
AEM의 입력 유효성 검사 모델은 기본적으로 의도적으로 유연합니다. 저장소는 허용적 접근 방식을 채택하며 이메일 속성을 포함한 대부분의 필드에 최소한의 제한이 적용됩니다. 기본적으로 프로필 데이터 필드에 대한 엄격한 유효성 검사는 없으며, 필요한 경우 컨텐츠 무결성을 유지하는 것은 애플리케이션 또는 소비자의 책임입니다.
강력한 서버측 입력 유효성 검사(예: 이메일 필드)를 도입하려면 다음 옵션을 고려하십시오.
- Sling PostProcessor 인터페이스를 구현하여 AEM Author의 표준 콘텐츠 업데이트 중에 Sling Post 서블릿에서 관리하는 입력의 유효성을 검사합니다.
- Sling 게시물 서블릿 외부에서 프로필 업데이트가 처리되는 경우에 대해 전용 서블릿에 유효성 검사 논리를 추가합니다.
따라서 다른 사용 사례에 맞게 유연성을 유지하면서 모든 필수 필드를 애플리케이션의 필요에 따라 검증할 수 있습니다.
3d58f420-19b5-47a0-a122-5c9dab55ec7f