1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
|
#use wml::debian::translation-check translation="793ef2aaf7ac1e7953d45aed262afca75ae7986e"
<define-tag description>varias vulnerabilidades</define-tag>
<define-tag moreinfo>
<p>Alexander Hvostov, Julien Blache y Aurelien Jarno descubrieron varios
problemas relacionados con la seguridad en el paquete sane-backends, que
tiene una biblioteca API para escáneres con un demonio de escaneo
(en el paquete libsane) que podían aprovecharse remotamente. Estos
problemas permitían a un atacante remoto provocar un fallo de segmentación
y/o consumir cantidades arbitrarias de memoria. El ataque podía llevarse a
cabo aunque el computador del atacante no estuviera listado en
saned.conf.</p>
<p>Sólo es vulnerable si tiene en funcionamiento saned, p. ej. desde xinetd
o desde inetd. Si las entradas respectivas en el archivo xinetd o inetd
están comentadas o no existen, está a salvo.</p>
<p>Pruebe «<kbd>telnet localhost 6566</kbd>» sobre el servidor que esté
corriendo saned.
Si recibe «connection refused» (n. t. conexión rechazada), saned no está
corriendo y está a salvo.</p>
<p>El proyecto Common Vulnerabilities and Exposures (n. t. Vulnerabilidades
y exposiciones comunes) identifica los siguientes problemas:
<ul>
<li><a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2003-0773">CAN-2003-0773</a>:
<p>saned comprobaba la identidad (dirección IP) de la máquina remota sólo
tras ocurrir la primera comunación (SANE_NET_INIT). Por tanto,
cualquiera podía enviar ese RPC, aunque la máquina remota no estuviera
autorizada para escanear (no listada en saned.conf).</p></li>
<li><a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2003-0774">CAN-2003-0774</a>:
<p>saned carecía de verificación de errores en casi todos los sitios del
código. Además, las liberaciones de conexiones se hacían demasiado
tarde. Si no se detectaba la liberación de la conexión, el acceso al
buffer interno podría sobrepasar los límites de la memoria ubicada. Por
tanto, tras la lectura aleatoria de memoria «posterior» al buffer
sucedía un fallo se segmentación.</p></li>
<li><a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2003-0775">CAN-2003-0775</a>:
<p>Si saned esperaba cadenas de caracteres, ubicaba la memoria necesaria
para almacenar la cadena tras recibir el tamaño de la cadena. Si la
conexión se liberaba antes de transmitir el tamaño, malloc reservaría un
tamaño arbitrario de memoria. Según ese tamaño y la cantidad de memoria
disponible, o bien malloc fallaba (->saned salía del modo correcto) o
bien se reservaba una enorme cantidad de memoria. Según el núcleo,
podrían producirse incrementos de intercambio de páginas y de
OOM.</p></li>
<li><a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2003-0776">CAN-2003-0776</a>:
<p>saned no verificaba la validez de los números RPC que obtenía antes de
recoger los parámetros.</p></li>
<li><a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2003-0777">CAN-2003-0777</a>:
<p>Si estaban activados los mensajes de depuración y se liberaba una
conexión, las cadenas de caracteres no terminadas en nulo se podrían
mostrar y podrían ocurrir fallos de segmentación.</p></li>
<li><a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2003-0778">CAN-2003-0778</a>:
<p>Era posible ubicar una cantidad arbitraria de memoria en el servidor que
estuviera corriendo saned aunque la conexión no se hubiera liberado.
Por ahora, y según el autor, este problema no se ha podido corregir de
forma sencilla. Se puede usar un límite mejor para la cantidad total de
memoria (ulimit).</p></li>
</ul>
<p>Para la distribución estable (woody), este problema se ha corregido en
la versión 1.0.7-4.</p>
<p>Para la distribución inestable (sid), este problema se ha corregido en
las versiones 1.0.11-1 y posteriores.</p>
<p>Le recomendamos que actualice el paquete libsane.</p>
</define-tag>
# do not modify the following line
#include "$(ENGLISHDIR)/security/2003/dsa-379.data"
|