2010-02-15 5 views
2

"콘텐츠"라는 매개 변수를 허용하는 웹 응용 프로그램이 있다고 가정 해보십시오. 이 매개 변수에있는 것은 HTML 응답의 일부로 출력됩니다.공격자가 요청 매개 변수에서 HTML 태그 주입을 이용할 수 있습니까?

예 JSP 코드 :

<%= request.getParameter("content") %> 

나는이 바보 알고 그것은 살균한다 등등,하지만 공격자가 실제로 활용할 수 있다면 내 질문은? 내가 이해할 수있는 방법은 자신에게 보낸 콘텐츠 만 변경하기 때문에 공격자가 상처를 입힐 수있는 유일한 사람은 자신입니까? 옳은?

답변

5

는 다음과 같은 예를 생각해

your.vulnerable.site.com/page.jsp?content=<img src="lol" onerror="javascript('code, that posts the users cookie to the attackers site')" /> 

그런 다음 공격자는 어딘가에 링크를 생성하고 사이트에 몇 가지 중요한 링크 같은 외모에 있습니다. 이 예제처럼 영리한 벡터가 여러 번 있습니다.

1

명확한 예. 적어도 XSS 공격은 갈 준비가되어 있습니다 ... 이것은 XSS 공격 목표의 고전적 시험입니다. 당신은주의를 기울여야하고 HTML 콘텐츠에 클라이언트에서 직접 오는 모든 것을 표시하지 않아야합니다. 많은 AntiXSS 라이브러리를 사용하고 있습니다.

여기에 몇 가지 예제가있다, 봐 : What is the general concept behind XSS?

2

공격자 콘텐츠 VAR 특수 값으로 URL을 생산하고 일부 피해자로 보내 예를 들어 자신의 쿠키를 읽을 수 있습니다.

3

내가 이해하는 방식은 자신에게 보낸 콘텐츠 만 변경하기 때문에 공격자가 상처를 입을 수있는 유일한 사람은 누구입니까?

번호

그것의 URL. 공격자가해야 할 일은 피해자가 방문하도록하는 것입니다.

그들은 그들 자신의 웹 사이트에서 그것을 링크 할 수 있고, 이메일, IM 등으로 그것을 드롭 할 수 있습니다 (그리고 그것을 가장하기 위해 작은 URL 서비스로 포장하십시오).

+0

손수 제작 URL을 방문하도록 희생자를 초대하는 것은 절대적으로 요구되는 사항입니까? URL을 방문하도록 다른 사람을 속일 수 없다면 다른 사람을 해칠 수는 없습니까? – stian

+1

예 ...하지만 달성하기 어려운 요구 사항은 아닙니다. – Quentin

관련 문제