Annotation of www/errata39.html, Revision 1.81
1.70 bentley 1: <!doctype html>
2: <html lang=en id=errata>
3: <meta charset=utf-8>
4:
1.58 tj 5: <title>OpenBSD 3.9 Errata</title>
1.1 deraadt 6: <meta name="description" content="the OpenBSD CD errata page">
1.56 deraadt 7: <meta name="viewport" content="width=device-width, initial-scale=1">
8: <link rel="stylesheet" type="text/css" href="openbsd.css">
1.60 tb 9: <link rel="canonical" href="https://www.openbsd.org/errata39.html">
1.1 deraadt 10:
1.46 deraadt 11: <!--
12: IMPORTANT REMINDER
13: IF YOU ADD A NEW ERRATUM, MAIL THE PATCH TO TECH AND ANNOUNCE
14: -->
15:
1.1 deraadt 16:
1.70 bentley 17: <h2 id=OpenBSD>
1.56 deraadt 18: <a href="index.html">
1.70 bentley 19: <i>Open</i><b>BSD</b></a>
20: 3.9 Errata
1.58 tj 21: </h2>
1.56 deraadt 22: <hr>
1.1 deraadt 23:
24: For errata on a certain release, click below:<br>
1.73 schwarze 25: <a href="errata20.html">2.0</a>,
1.1 deraadt 26: <a href="errata21.html">2.1</a>,
27: <a href="errata22.html">2.2</a>,
28: <a href="errata23.html">2.3</a>,
29: <a href="errata24.html">2.4</a>,
30: <a href="errata25.html">2.5</a>,
31: <a href="errata26.html">2.6</a>,
32: <a href="errata27.html">2.7</a>,
33: <a href="errata28.html">2.8</a>,
34: <a href="errata29.html">2.9</a>,
35: <a href="errata30.html">3.0</a>,
36: <a href="errata31.html">3.1</a>,
37: <a href="errata32.html">3.2</a>,
38: <a href="errata33.html">3.3</a>,
39: <a href="errata34.html">3.4</a>,
40: <a href="errata35.html">3.5</a>,
1.73 schwarze 41: <br>
1.1 deraadt 42: <a href="errata36.html">3.6</a>,
43: <a href="errata37.html">3.7</a>,
44: <a href="errata38.html">3.8</a>,
1.11 deraadt 45: <a href="errata40.html">4.0</a>,
1.24 merdely 46: <a href="errata41.html">4.1</a>,
1.25 deraadt 47: <a href="errata42.html">4.2</a>,
1.26 deraadt 48: <a href="errata43.html">4.3</a>,
1.28 deraadt 49: <a href="errata44.html">4.4</a>,
1.29 deraadt 50: <a href="errata45.html">4.5</a>,
1.30 deraadt 51: <a href="errata46.html">4.6</a>,
1.32 deraadt 52: <a href="errata47.html">4.7</a>,
1.34 miod 53: <a href="errata48.html">4.8</a>,
1.35 nick 54: <a href="errata49.html">4.9</a>,
1.36 sthen 55: <a href="errata50.html">5.0</a>,
1.37 deraadt 56: <a href="errata51.html">5.1</a>,
1.38 deraadt 57: <a href="errata52.html">5.2</a>,
1.73 schwarze 58: <br>
1.39 deraadt 59: <a href="errata53.html">5.3</a>,
1.40 deraadt 60: <a href="errata54.html">5.4</a>,
1.45 jsg 61: <a href="errata55.html">5.5</a>,
1.49 deraadt 62: <a href="errata56.html">5.6</a>,
1.52 deraadt 63: <a href="errata57.html">5.7</a>,
1.53 deraadt 64: <a href="errata58.html">5.8</a>,
1.59 deraadt 65: <a href="errata59.html">5.9</a>,
1.62 tj 66: <a href="errata60.html">6.0</a>,
1.66 deraadt 67: <a href="errata61.html">6.1</a>,
1.67 deraadt 68: <a href="errata62.html">6.2</a>,
1.68 deraadt 69: <a href="errata63.html">6.3</a>,
1.69 deraadt 70: <a href="errata64.html">6.4</a>,
1.72 deraadt 71: <a href="errata65.html">6.5</a>,
1.74 deraadt 72: <a href="errata66.html">6.6</a>,
1.75 deraadt 73: <a href="errata67.html">6.7</a>,
1.77 deraadt 74: <a href="errata68.html">6.8</a>,
1.78 tj 75: <br>
1.79 deraadt 76: <a href="errata69.html">6.9</a>,
1.80 deraadt 77: <a href="errata70.html">7.0</a>,
1.81 ! deraadt 78: <a href="errata71.html">7.1</a>,
! 79: <a href="errata72.html">7.2</a>.
1.1 deraadt 80: <hr>
81:
1.43 deraadt 82: <p>
1.62 tj 83: Patches for the OpenBSD base system are distributed as unified diffs.
84: Each patch contains usage instructions.
85: All the following patches are also available in one
86: <a href="https://ftp.openbsd.org/pub/OpenBSD/patches/3.9.tar.gz">tar.gz file</a>
87: for convenience.
1.1 deraadt 88:
1.43 deraadt 89: <p>
1.62 tj 90: Patches for supported releases are also incorporated into the
1.63 tj 91: <a href="stable.html">-stable branch</a>.
1.43 deraadt 92:
1.1 deraadt 93: <hr>
94:
95: <ul>
96:
1.71 deraadt 97: <li id="sendmail">
98: <strong>001: SECURITY FIX: March 25, 2006</strong>
99: <i>All architectures</i><br>
100: A race condition has been reported to exist in the handling by sendmail of
101: asynchronous signals. A remote attacker may be able to execute arbitrary code with the
102: privileges of the user running sendmail, typically root. This is the second revision of
103: this patch.
104: <br>
105: <a href="https://ftp.openbsd.org/pub/OpenBSD/patches/3.9/common/001_sendmail.patch">
1.43 deraadt 106: A source code patch exists which remedies this problem.</a>
1.22 ckuethe 107: <p>
108:
1.71 deraadt 109: <li id="xorg">
110: <strong>002: SECURITY FIX: May 2, 2006</strong>
1.44 deraadt 111: <i>All architectures</i><br>
1.71 deraadt 112: A security vulnerability has been found in the X.Org server --
113: <a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2006-1526">CVE-2006-1526</a>.
114: Clients authorized to connect to the X server are able to crash it and to execute
115: malicious code within the X server.
116: <br>
117: <a href="https://ftp.openbsd.org/pub/OpenBSD/patches/3.9/common/002_xorg.patch">
1.43 deraadt 118: A source code patch exists which remedies this problem.</a>
1.21 mbalmer 119: <p>
120:
1.71 deraadt 121: <li id="sendmail2">
122: <strong>003: SECURITY FIX: June 15, 2006</strong>
1.44 deraadt 123: <i>All architectures</i><br>
1.71 deraadt 124: A potential denial of service problem has been found in sendmail. A malformed MIME
125: message could trigger excessive recursion which will lead to stack exhaustion.
126: This denial of service attack only affects delivery of mail from the queue and
127: delivery of a malformed message. Other incoming mail is still accepted and
128: delivered. However, mail messages in the queue may not be reattempted if a
129: malformed MIME message exists.
1.19 mbalmer 130: <br>
1.71 deraadt 131: <a href="https://ftp.openbsd.org/pub/OpenBSD/patches/3.9/common/003_sendmail2.patch">
1.43 deraadt 132: A source code patch exists which remedies this problem.</a>
1.19 mbalmer 133: <p>
134:
1.71 deraadt 135: <li id="httpd">
136: <strong>004: SECURITY FIX: July 30, 2006</strong>
1.44 deraadt 137: <i>All architectures</i><br>
1.71 deraadt 138: <a href="https://man.openbsd.org/OpenBSD-3.9/httpd.8">httpd(8)</a>'s
139: mod_rewrite has a potentially exploitable off-by-one buffer overflow.
140: The buffer overflow may result in a vulnerability which, in combination
141: with certain types of Rewrite rules in the web server configuration files,
142: could be triggered remotely. The default install is not affected by the
143: buffer overflow. CVE-2006-3747
1.13 deraadt 144: <br>
1.71 deraadt 145: <a href="https://ftp.openbsd.org/pub/OpenBSD/patches/3.9/common/004_httpd.patch">
1.43 deraadt 146: A source code patch exists which remedies this problem.</a>
1.13 deraadt 147: <p>
148:
1.71 deraadt 149: <li id="sendmail3">
150: <strong>005: SECURITY FIX: August 25, 2006</strong>
1.44 deraadt 151: <i>All architectures</i><br>
1.71 deraadt 152: A potential denial of service problem has been found in sendmail. A message
153: with really long header lines could trigger a use-after-free bug causing
154: sendmail to crash.
1.9 millert 155: <br>
1.71 deraadt 156: <a href="https://ftp.openbsd.org/pub/OpenBSD/patches/3.9/common/005_sendmail3.patch">
157: A source code patch exists which remedies this problem.</a>
1.9 millert 158: <p>
159:
1.71 deraadt 160: <li id="dhcpd">
161: <strong>006: SECURITY FIX: August 25, 2006</strong>
1.44 deraadt 162: <i>All architectures</i><br>
1.71 deraadt 163: Due to an off-by-one error in
164: <a href="https://man.openbsd.org/OpenBSD-3.9/dhcpd.8">dhcpd(8)</a>,
165: it is possible to cause
166: <a href="https://man.openbsd.org/OpenBSD-3.9/dhcpd.8">dhcpd(8)</a>
167: to exit by sending a DHCPDISCOVER packet with a 32-byte client identifier option.
168: <a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2006-3122">CVE-2006-3122</a>
1.8 miod 169: <br>
1.71 deraadt 170: <a href="https://ftp.openbsd.org/pub/OpenBSD/patches/3.9/common/006_dhcpd.patch">
1.43 deraadt 171: A source code patch exists which remedies this problem.</a>
1.8 miod 172: <p>
173:
1.71 deraadt 174: <li id="sem">
175: <strong>007: SECURITY FIX: August 25, 2006</strong>
176: <i>All architectures</i><br>
177: It is possible to cause the kernel to panic when more than the default number of
1.76 jsg 178: semaphores have been allocated.
1.7 miod 179: <br>
1.71 deraadt 180: <a href="https://ftp.openbsd.org/pub/OpenBSD/patches/3.9/common/007_sem.patch">
1.43 deraadt 181: A source code patch exists which remedies this problem.</a>
1.7 miod 182: <p>
183:
1.71 deraadt 184: <li id="isakmpd">
185: <strong>008: SECURITY FIX: August 25, 2006</strong>
1.44 deraadt 186: <i>All architectures</i><br>
1.71 deraadt 187: A problem in
188: <a href="https://man.openbsd.org/OpenBSD-3.9/isakmpd.8">isakmpd(8)</a>
189: caused IPsec to run partly without replay protection. If
190: <a href="https://man.openbsd.org/OpenBSD-3.9/isakmpd.8">isakmpd(8)</a>
191: was acting as responder during SA negotiation, SA's with a replay window of size 0 were created.
192: An attacker could reinject sniffed IPsec packets, which will be accepted without checking the
193: replay counter.
1.4 brad 194: <br>
1.71 deraadt 195: <a href="https://ftp.openbsd.org/pub/OpenBSD/patches/3.9/common/008_isakmpd.patch">
1.43 deraadt 196: A source code patch exists which remedies this problem.</a>
1.4 brad 197: <p>
198:
1.71 deraadt 199: <li id="sppp">
200: <strong>009: SECURITY FIX: September 2, 2006</strong>
1.44 deraadt 201: <i>All architectures</i><br>
1.71 deraadt 202: Due to the failure to correctly validate LCP configuration option lengths,
203: it is possible for an attacker to send LCP packets via an
204: <a href="https://man.openbsd.org/OpenBSD-3.9/sppp.4">sppp(4)</a>
205: connection causing the kernel to panic.
206: <a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2006-4304">CVE-2006-4304</a>
1.3 deraadt 207: <br>
1.71 deraadt 208: <a href="https://ftp.openbsd.org/pub/OpenBSD/patches/3.9/common/009_sppp.patch">
1.43 deraadt 209: A source code patch exists which remedies this problem.</a>
1.3 deraadt 210: <p>
211:
1.71 deraadt 212: <li id="bind">
213: <strong>010: SECURITY FIX: September 8, 2006</strong>
1.44 deraadt 214: <i>All architectures</i><br>
1.71 deraadt 215: Two Denial of Service issues have been found with BIND.
216: An attacker who can perform recursive lookups on a DNS server and is able
217: to send a sufficiently large number of recursive queries, or is able to
218: get the DNS server to return more than one SIG(covered) RRsets can stop
219: the functionality of the DNS service.
220: An attacker querying an authoritative DNS server serving a RFC 2535
221: DNSSEC zone may be able to crash the DNS server.
222: <a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2006-4095">CVE-2006-4095</a>
223: <a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2006-4096">CVE-2006-4096</a>
1.3 deraadt 224: <br>
1.71 deraadt 225: <a href="https://ftp.openbsd.org/pub/OpenBSD/patches/3.9/common/010_bind.patch">
1.43 deraadt 226: A source code patch exists which remedies this problem.</a>
1.3 deraadt 227: <p>
228:
1.71 deraadt 229: <li id="openssl">
230: <strong>011: SECURITY FIX: September 8, 2006</strong>
1.44 deraadt 231: <i>All architectures</i><br>
1.71 deraadt 232: Due to incorrect PKCS#1 v1.5 padding validation in OpenSSL, it is possible for
233: an attacker to construct an invalid signature which OpenSSL would accept as a
234: valid PKCS#1 v1.5 signature.
235: <a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2006-4339">CVE-2006-4339</a>
1.3 deraadt 236: <br>
1.71 deraadt 237: <a href="https://ftp.openbsd.org/pub/OpenBSD/patches/3.9/common/011_openssl.patch">
1.43 deraadt 238: A source code patch exists which remedies this problem.</a>
1.3 deraadt 239: <p>
240:
1.47 bentley 241: <li id="httpd2">
1.70 bentley 242: <strong>012: SECURITY FIX: October 7, 2006</strong>
1.44 deraadt 243: <i>All architectures</i><br>
1.65 tb 244: <a href="https://man.openbsd.org/OpenBSD-3.9/httpd.8">httpd(8)</a>
1.3 deraadt 245: does not sanitize the Expect header from an HTTP request when it is
246: reflected back in an error message, which might allow cross-site scripting (XSS)
247: style attacks.
248: <a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2006-3918">CVE-2006-3918</a>
249: <br>
1.61 tb 250: <a href="https://ftp.openbsd.org/pub/OpenBSD/patches/3.9/common/012_httpd2.patch">
1.43 deraadt 251: A source code patch exists which remedies this problem.</a>
1.3 deraadt 252: <p>
253:
1.71 deraadt 254: <li id="openssl2">
255: <strong>013: SECURITY FIX: October 7, 2006</strong>
1.44 deraadt 256: <i>All architectures</i><br>
1.71 deraadt 257: Several problems have been found in OpenSSL. While parsing certain invalid ASN.1
258: structures an error condition is mishandled, possibly resulting in an infinite
259: loop. A buffer overflow exists in the SSL_get_shared_ciphers function. A NULL
260: pointer may be dereferenced in the SSL version 2 client code. In addition, many
261: applications using OpenSSL do not perform any validation of the lengths of
262: public keys being used.
263: <a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2006-2937">CVE-2006-2937</a>,
264: <a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2006-3738">CVE-2006-3738</a>,
265: <a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2006-4343">CVE-2006-4343</a>,
266: <a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2006-2940">CVE-2006-2940</a>
1.3 deraadt 267: <br>
1.71 deraadt 268: <a href="https://ftp.openbsd.org/pub/OpenBSD/patches/3.9/common/013_openssl2.patch">
1.43 deraadt 269: A source code patch exists which remedies this problem.</a>
1.3 deraadt 270: <p>
271:
1.71 deraadt 272: <li id="systrace">
273: <strong>014: SECURITY FIX: October 7, 2006</strong>
1.44 deraadt 274: <i>All architectures</i><br>
1.71 deraadt 275: Fix for an integer overflow in
276: <a href="https://man.openbsd.org/OpenBSD-3.9/systrace.4">systrace(4)</a>'s
277: STRIOCREPLACE support, found by
278: Chris Evans. This could be exploited for DoS, limited kmem reads or local
279: privilege escalation.
1.3 deraadt 280: <br>
1.71 deraadt 281: <a href="https://ftp.openbsd.org/pub/OpenBSD/patches/3.9/common/014_systrace.patch">
1.43 deraadt 282: A source code patch exists which remedies this problem.</a>
1.3 deraadt 283: <p>
284:
1.71 deraadt 285: <li id="ssh">
286: <strong>015: SECURITY FIX: October 12, 2006</strong>
1.44 deraadt 287: <i>All architectures</i><br>
1.71 deraadt 288: Fix 2 security bugs found in OpenSSH. A pre-authentication denial of service (found
289: by Tavis Ormandy) that would cause
290: <a href="https://man.openbsd.org/OpenBSD-3.9/sshd.8">sshd(8)</a>
291: to spin until the login grace time expired.
292: An unsafe signal handler (found by Mark Dowd) that is vulnerable to a race condition
293: that could be exploited to perform a pre-authentication denial of service.
294: <a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2006-4924">CVE-2006-4924</a>,
295: <a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2006-5051">CVE-2006-5051</a>
1.3 deraadt 296: <br>
1.71 deraadt 297: <a href="https://ftp.openbsd.org/pub/OpenBSD/patches/3.9/common/015_ssh.patch">
1.43 deraadt 298: A source code patch exists which remedies this problem.</a>
1.3 deraadt 299: <p>
300:
1.71 deraadt 301: <li id="ldso">
302: <strong>016: SECURITY FIX: November 19, 2006</strong>
1.44 deraadt 303: <i>All architectures</i><br>
1.71 deraadt 304: The ELF
305: <a href="https://man.openbsd.org/OpenBSD-3.9/ld.so.1">ld.so(1)</a>
306: fails to properly sanitize the environment. There is a potential localhost security
307: problem in cases we have not found yet. This patch applies to all ELF-based
308: systems (m68k, m88k, and vax are a.out-based systems).
1.3 deraadt 309: <br>
1.71 deraadt 310: <a href="https://ftp.openbsd.org/pub/OpenBSD/patches/3.9/common/016_ldso.patch">
1.43 deraadt 311: A source code patch exists which remedies this problem.</a>
1.3 deraadt 312: <p>
313:
1.71 deraadt 314: <li id="agp">
315: <strong>017: SECURITY FIX: January 3, 2007</strong>
316: <i>i386 only</i><br>
317: Insufficient validation in
318: <a href="https://man.openbsd.org/OpenBSD-3.9/vga.4">vga(4)</a>
319: may allow an attacker to gain root privileges if the kernel is compiled with
320: <code>option PCIAGP</code>
321: and the actual device is not an AGP device.
322: The <code>PCIAGP</code> option is present by default on i386
323: kernels only.
1.3 deraadt 324: <br>
1.71 deraadt 325: <a href="https://ftp.openbsd.org/pub/OpenBSD/patches/3.9/i386/017_agp.patch">
1.43 deraadt 326: A source code patch exists which remedies this problem.</a>
1.3 deraadt 327: <p>
328:
1.71 deraadt 329: <li id="icmp6">
330: <strong>018: RELIABILITY FIX: January 16, 2007</strong>
1.44 deraadt 331: <i>All architectures</i><br>
1.71 deraadt 332: Under some circumstances, processing an ICMP6 echo request would cause
333: the kernel to enter an infinite loop.
1.3 deraadt 334: <br>
1.71 deraadt 335: <a href="https://ftp.openbsd.org/pub/OpenBSD/patches/3.9/common/018_icmp6.patch">
1.43 deraadt 336: A source code patch exists which remedies this problem.</a>
1.3 deraadt 337: <p>
338:
1.71 deraadt 339: <li id="timezone">
340: <strong>019: INTEROPERABILITY FIX: February 4, 2007</strong>
1.44 deraadt 341: <i>All architectures</i><br>
1.71 deraadt 342: A US daylight saving time rules change takes effect in 2007.
1.1 deraadt 343: <br>
1.71 deraadt 344: <a href="https://ftp.openbsd.org/pub/OpenBSD/patches/3.9/common/019_timezone.patch">
345: A source code patch exists which syncs the timezone data files with tzdata2007a</a>.<br>
1.1 deraadt 346: <p>
347:
1.71 deraadt 348: <li id="m_dup1">
349: <strong>020: SECURITY FIX: March 7, 2007</strong>
1.44 deraadt 350: <i>All architectures</i><br>
1.71 deraadt 351: <b>2nd revision, March 17, 2007</b><br>
352: Incorrect mbuf handling for ICMP6 packets.<br>
353: Using
354: <a href="https://man.openbsd.org/OpenBSD-3.9/pf.4">pf(4)</a>
355: to avoid the problem packets is an effective workaround until the patch
356: can be installed.<br>
357: Use "block in inet6" in /etc/pf.conf
1.1 deraadt 358: <br>
1.71 deraadt 359: <a href="https://ftp.openbsd.org/pub/OpenBSD/patches/3.9/common/020_m_dup1.patch">
1.43 deraadt 360: A source code patch exists which remedies this problem.</a>
1.1 deraadt 361: <p>
362:
1.71 deraadt 363: <li id="p021_xorg">
364: <strong>021: SECURITY FIX: April 4, 2007</strong>
1.44 deraadt 365: <i>All architectures</i><br>
1.71 deraadt 366: Multiple vulnerabilities have been discovered in X.Org.<br>
367: XC-MISC extension ProcXCMiscGetXIDList memory corruption vulnerability,
368: BDFFont parsing integer overflow vulnerability,
369: fonts.dir file parsing integer overflow vulnerability,
370: multiple integer overflows in the XGetPixel() and XInitImage functions
371: in ImUtil.c.
372: <a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2007-1003">CVE-2007-1003</a>,
373: <a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2007-1351">CVE-2007-1351</a>,
374: <a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2007-1352">CVE-2007-1352</a>,
375: <a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2007-1667">CVE-2007-1667</a>.
1.1 deraadt 376: <br>
1.71 deraadt 377: <a href="https://ftp.openbsd.org/pub/OpenBSD/patches/3.9/common/021_xorg.patch">
1.43 deraadt 378: A source code patch exists which remedies this problem.</a>
1.1 deraadt 379: <p>
380:
1.71 deraadt 381: <li id="p022_route6">
382: <strong>022: SECURITY FIX: April 23, 2007</strong>
1.44 deraadt 383: <i>All architectures</i><br>
1.71 deraadt 384: IPv6 type 0 route headers can be used to mount a DoS attack against
385: hosts and networks. This is a design flaw in IPv6 and not a bug in
386: OpenBSD.<br>
387: <a href="https://ftp.openbsd.org/pub/OpenBSD/patches/3.9/common/022_route6.patch">
1.43 deraadt 388: A source code patch exists which remedies this problem.</a>
1.1 deraadt 389: <p>
390:
1.71 deraadt 391: <li id="p023_altivec">
392: <strong>023: STABILITY FIX: April 26, 2007</strong>
393: <i>PowerPC</i><br>
394: An unhandled AltiVec assist exception can cause a kernel panic.<br>
395: <a href="https://ftp.openbsd.org/pub/OpenBSD/patches/3.9/macppc/023_altivec.patch">
1.43 deraadt 396: A source code patch exists which remedies this problem.</a>
1.1 deraadt 397: <p>
1.41 deraadt 398:
1.1 deraadt 399: </ul>
400:
1.48 tedu 401: <hr>