IIS 10 숨겨진 세그먼트는 URL 재작성 규칙에서 설정한 400 페이지 대신 404 페이지로 이동합니다.

IIS 10 숨겨진 세그먼트는 URL 재작성 규칙에서 설정한 400 페이지 대신 404 페이지로 이동합니다.

정의된 목록을 제외한 모든 URL에서 사이트에 액세스하지 못하도록 하는 URL 재작성 규칙이 있습니다. 400 Bad RequestURL이 목록에 없으면 규칙이 반환됩니다 .

    <rule name="No unknown hosts" stopProcessing="true">
      <match url=".*" />
      <conditions logicalGrouping="MatchAll" trackAllCaptures="false">
        <add input="{HTTP_HOST}" pattern="^example\.com$" negate="true" />
        <add input="{HTTP_HOST}" pattern="^www\.example\.com$" negate="true" />
        <add input="{HTTP_HOST}" pattern="^admin\.example\.com$" negate="true" />
      </conditions>
      <action type="CustomResponse" statusCode="400" />
    </rule>

차단하려는 URL의 예는 mail.example.com또는 입니다 102.15.63.233. 이것은 훌륭하게 작동합니다.제외하고숨겨진 세그먼트가 URL에 추가되는 경우 mail.example.com/bin/. 이것은 내 사용자 정의 404 오류 페이지로 이동합니다. URL이 차단되고 400을 반환하기 때문에 모든 스타일 시트와 기타 자산(이미지 등)이 해결되지 않기 때문에 무엇보다도 쓰레기처럼 보입니다. 내가 디렉토리 검색을 허용한다고 생각하기 때문에 PCI DSS 스캔에 오류가 발생했습니다.

나는 내가 생각할 수 있는 모든 가능한 방법으로 Google 검색을 하면서 거의 하루 종일을 보냈지만 성공하지 못했습니다. 아, 이렇게 하는 이유는 유효하지 않은 HOST 헤더를 사용하여 사이트를 악성 사이트로 리디렉션하도록 속일 수 없기 때문입니다(다른 많은 재작성 규칙은 해당 기능에 의존합니다). 여기 누군가 답변이 있기를 바랍니다.

관련 정보