<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[3]</anchor-end> <dfn><code class="URI">mhtml:</code></dfn> は、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WinIE</anchor>
で使用されている <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI scheme</anchor> です。 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">MHT</anchor>
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ファイル</anchor>内の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">実体</anchor>を示します。</p><section><h1>! の後</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="12" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[12]</anchor-end> <code class="MIME" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Content-Location:</anchor></code> に相当するようです。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="13" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[13]</anchor-end> <code class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">cid:</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor> により <code class="MIME" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Content-ID:</anchor></code>
を指定することもできるように見えますが、未検証です。 (<code class="MIME" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Content-Location:</anchor></code>
が <code class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">cid:</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor> の可能性も。</p></section><section><h1>安全性</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[4]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WinIE</anchor> の実装では <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">MHT</anchor> ファイルはそれ自体の場所に関わらず、
その中身の各<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">実体</anchor>の <code class="MIME"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Content-Location</anchor></code>
で安全性を判断しています。 <code class="URI">mhtml:</code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI scheme</anchor>
自体の問題ではありませんが、 <code class="URI">mhtml:</code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI</anchor>
が <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">MHT</anchor> の悪用に使われる可能性があります。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="5" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[5]</anchor-end> 実際に <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WinIE</anchor> の一部の版では <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">MHT</anchor>
で安全の制限が緩いことと <code class="URI">mhtml:</code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI</anchor>
を組合せて安全でない動作をさせるための<q>踏み台</q>とできる脆弱性がありました。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="8" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[8]</anchor-end> <cite>Microsoft Internet Explorer での mhtml://mid URL によるバッファ オーバーフロー (IeMhtmlMidBo)</cite>
( (<time>2009-04-21 16:05:05 +09:00</time> 版))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.iss.net/security_center/reference/jp/vuln/ie-mhtml-mid-bo.htm">http://www.iss.net/security_center/reference/jp/vuln/ie-mhtml-mid-bo.htm</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="14" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[14]</anchor-end> 
<cite xml:lang="en-US">CVE-2024-38112: Void Banshee Targets Windows Users Through Zombie Internet Explorer in Zero-Day Attacks | Trend Micro (US)</cite>, <time>2024-07-17T02:27:51.000Z</time> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://www.trendmicro.com/en_us/research/24/g/CVE-2024-38112-void-banshee.html">https://www.trendmicro.com/en_us/research/24/g/CVE-2024-38112-void-banshee.html</anchor-external></p></section><section><h1>例</h1><ul><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="1" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[1]</anchor-end> <code class="URI">mhtml:file://C:\Documents%20and%20Settings\user\Local%20Settings\Temp\test.mht</code><ul><li>普通に <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">MHT</anchor> ファイルを<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">関連付け</anchor>により開くと、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WinIE</anchor> の<q>アドレス</q>にこう表示されます。</li><li><code class="URI"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">file</anchor>:</code> URI や <code class="URI"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">http</anchor>:</code> URI
で <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">MHT</anchor> ファイルを指定すると、この URI に勝手に変わります。</li><li>この URI を <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WinIE</anchor> に与えて開くこともできます。</li></ul></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[2]</anchor-end> <code class="URI">mhtml:file://C:\Documents%20and%20Settings\user\Local%20Settings\Temp\test.mht!http://www.example.com/test.xml</code><ul><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">MHT</anchor> ファイル内の <code class="MIME"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Content-Location</anchor></code>
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI</anchor> を指定しています。</li><li>この URI を <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WinIE</anchor> に与えて開くこともできます。</li></ul></li></ul><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="9" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[9]</anchor-end> <pre class="URI example code">mhtml://mid:AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA</pre></p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="8" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;8</anchor-internal> の脆弱性を発生させる <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor> 例を一部省略したものです。</comment-p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[10]</anchor-end><pre class="URI example code">mhtml:mid://00000180/!cid:008401c4ff13$c1fbc260$a5891b45@mycomputer</pre></p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Outlook Express</anchor> での例、
<cite xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">outlook url mhtml:mid ? - HTML Forums - Free Webmaster Forums and Help Forums</cite> (<time xmlns="http://www.w3.org/1999/xhtml">2011-06-11 20:01:20 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.htmlforums.com/client-side-scripting/t-outlook-url-mhtmlmid--52179.html">http://www.htmlforums.com/client-side-scripting/t-outlook-url-mhtmlmid--52179.html</anchor-external>
より</comment-p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="11" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[11]</anchor-end> <pre class="CSS example code">background-image: url(mhtml:http://phpied.com/files/mhtml/mhtml-html.html!polloloco); </pre></p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><cite xmlns="http://www.w3.org/1999/xhtml">Inline MHTML+Data URIs / Stoyan's phpied.com</cite> (<time xmlns="http://www.w3.org/1999/xhtml">2011-06-11 20:03:14 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.phpied.com/inline-mhtml-data-uris/">http://www.phpied.com/inline-mhtml-data-uris/</anchor-external></comment-p></section><section><h1>関連</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="6" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[6]</anchor-end> 一つにまとめられたものの中の一部分を指定できるという意味では
<code class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">jar:</anchor></code> や <code class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">res:</anchor></code> と似ています。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="7" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[7]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">メール</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">メッセージ</anchor>の一部分を指定できるという意味では
<code class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">cid:</anchor></code> や <code class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">attachment:</anchor></code> と似ています。</p></section></body></html>