HTML 주입

설명

문자열을 지원하는 모든 필드에 HTML 주입을 통한 XSS를 검사합니다. 이는 경로, 쿼리, 헤더와 같은 HTTP 요청의 일부와 XML 필드, JSON 필드 등과 같은 본문 매개변수를 포함합니다. 감지는 알려진 HTML 활성화 필드에 주입된 값을 모니터링하여 수행됩니다.

수정 방법

교차 사이트 스크립팅(XSS)은 공격자가 제공한 코드를 사용자의 브라우저 인스턴스에 에코하는 공격 기술입니다. 브라우저 인스턴스는 표준 웹 브라우저 클라이언트일 수도 있고, WinAmp 내의 브라우저, RSS 리더 또는 이메일 클라이언트와 같은 소프트웨어 제품에 내장된 브라우저 객체일 수도 있습니다. 코드는 일반적으로 HTML/JavaScript로 작성되지만 VBScript, ActiveX, Java, Flash 또는 기타 브라우저 지원 기술로 확장될 수도 있습니다.

공격자가 사용자의 브라우저에서 자신의 코드를 실행하게 되면, 코드는 호스팅 웹 사이트의 보안 컨텍스트(또는 영역) 내에서 실행됩니다. 이 수준의 권한으로 인해 코드는 브라우저에서 접근할 수 있는 모든 민감한 데이터를 읽고, 수정하고, 전송할 수 있는 능력을 갖게 됩니다. 교차 사이트 스크립트된 사용자는 자신의 계정이 탈취당하고(쿠키 도용), 브라우저가 다른 위치로 리디렉션되거나, 방문하는 웹 사이트에서 제공하는 허위 콘텐츠가 표시될 수 있습니다. 교차 사이트 스크립팅 공격은 본질적으로 사용자와 웹 사이트 간의 신뢰 관계를 훼손합니다. 파일 시스템에서 콘텐츠를 로드하는 브라우저 객체 인스턴스를 사용하는 애플리케이션은 로컬 머신 영역에서 코드를 실행할 수 있어 시스템이 손상될 수 있습니다.

교차 사이트 스크립팅 공격은 비영속적, 영속적, DOM 기반의 세 가지 유형이 있습니다.

비영속적 공격과 DOM 기반 공격은 사용자가 악의적인 코드가 들어된 특별히 제작된 링크를 방문하거나, 악의적인 웹 페이지에 있는 웹 양식을 방문해야 합니다. 이 양식이 취약한 사이트에 게시되면 공격이 발생합니다. 취약한 리소스가 HTTP POST 요청만 수락하는 경우, 이러한 경우 양식은 희생자의 지식 없이 자동으로 제출될 수 있습니다(예: JavaScript를 사용). 악의적인 링크를 클릭하거나 악의적인 양식을 제출하면, XSS 페이로드가 에코되어 사용자의 브라우저에서 해석되고 실행됩니다. 거의 임의의 요청(GET 및 POST)을 보내는 또 다른 기술은 Adobe Flash와 같은 내장 클라이언트를 사용하는 것입니다.

영속적 공격은 악의적인 코드가 웹 사이트에 제출되고 일정 기간 동안 저장될 때 발생합니다. 공격자가 선호하는 대상의 예로는 메시지 게시판 게시물, 웹 메일 메시지 및 웹 채팅 소프트웨어가 포함됩니다. 의심 없는 사용자는 추가 사이트/링크(예: 공격자 사이트 또는 이메일을 통해 전송된 악의적인 링크)와 상호작용할 필요 없이 단순히 코드를 포함한 웹 페이지를 볼 수 있습니다.

링크