Document Object Model의 약자이며, 웹 페이지(HTML이나 XML 문서)의 모든 요소를 구조화해서 프로그래밍 언어가 문서에 접근하여 읽고 조작할 수 있도록 하는 인터페이스이다.
문서의 구조화된 표현이 특징이다.
gpt에게 물어본 결과다.

따봉 gpt야 고마워!

이 문제를 풀어보도록 하자.

우선 패킷을 burp suite를 통해 잡아주었다.
그리고 이것을 repeater로 보내준 후

response를 통해 js를 살펴주었다.
문제에서 document.wirte, location.search라는 키워드가 나와서 검색해보니

img 태그와 함께 query를 받아오는 듯 했다.
그래서 query에 ">로 먼저 img 태그를 닫아주고,
<iframe src="javascript:alert(1)
iframe 태그를 통해 alert(1)을 발생시켰다.
결론적으로는
document.wirte('<img src="/resources/images/tracker.gif?searchTerms='
"><iframe src="javascript:alert(1)
'">');
이렇게 된 것이다.
그러면 이렇게 alert(1)이 잘 발생하고 문제가 해결이 된다.
<iframe src="javascript:alert(1)">
//alert(1) 발생시킬 수 있음
<svg onload=alert(1)>
//alert(1) 함수 요청
<img src="" onerror=alert(1)>
//src가 잘못되었을 때 onerror가 실행