게시물 화면에서 정상으로 보이는 그림이 상태표에는 깨진 이미지로 기록됐다. 원격 이미지의 로드 여부를 확인하는 자동 검사기가 첫 응답인 302를 받고 바로 판정을 끝낸 탓이었다.
이미지 주소를 따라가면 저장소의 다른 주소로 이동했고, 그곳에서는 200 응답과 함께 파일을 받을 수 있었다. 검사기가 리디렉션을 따라가도록 수정하자 같은 이미지가 정상으로 분류됐다. 중간 응답을 최종 결과로 취급한 것이 오판의 원인이었다.
CDN이나 객체 저장소를 쓰는 사이트에서는 이런 이동이 생길 수 있다. 브라우저는 안내받은 주소로 계속 진행하지만 첫 상태 코드만 보는 검사는 그 과정에서 멈춘다. 검사표가 실제 화면과 다른 결과를 보고할 수 있는 이유다.
자산 검사는 정해진 범위 안에서 마지막 주소까지 도달해 파일을 받을 수 있는지 확인해야 한다. 첫 응답이 200인지만 봐서는 이 흐름을 구분할 수 없다. 마지막 응답이 200이어도 이미지가 아닌 내용일 수 있으므로, 필요하면 콘텐츠 유형도 확인해야 한다.
다만 리디렉션을 무제한으로 따라가서는 안 된다. 반복 이동과 응답 지연, 허용하지 않은 주소로의 전환은 별도 실패로 처리해야 한다. 이렇게 응답 사슬을 제한해서 검사해야 정상 이미지를 장애로 잘못 분류하는 일을 줄이고 우회 위험도 통제할 수 있다.