データ:画像/ PNG形式;のデータURIスキームについてbase64でエントリーレベルCTF_Webの質問?

データURIスキームについてのエントリーレベルCTF_Webの質問

0x00のタイトル説明

これは、任意のプロンプトを表示せずに、直接に受ける権利時折のグループタイトルMouwangアン交換基であるtxtファイル。

画像-20200312221315891

0x01の問題解決プロセス

ファイルの名前で、一般的に推測し、関連する写真をすることができます。私たちは、最初のテキストファイルを開くと、それは内部のですかを参照してください。

data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAANwAAAAoCAIAAAAaOwPZAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAQuSURBVHhe7ZptmoMgDIR7rh6o5+lpvEwP01XUGshAokgX+8z+7PKRTF6SoN7e/KMCnSlw68wemkMF3oSSEHSnAKHsLiQ0iFCSge4UIJTdhYQGEUoy0J0ChLK7kNAgQkkGulOAUHYXEhpEKMlAdwpcG8rhcRv/HkN3stIgW4F88DYoX89nObjmANuOc0eMXpHHcyX9+mowhgHKmdlChM0BZzvzet6DSSW7xjEWk8Hu+/O1x7zF1237/Uu4t/O46V6sZuARoZb9KqbO7On4rJlykqcYYnNAjSbx3Gmrj6WTzxirVlA+90F82G+nm4fX3zOxgqyKqRaUU7b8FpRDOeyjJa7k5oByT1yWse4mxfDC3NrrprnQtQeUMuUXoURmCGHdKfl/oTS8MElxu2mudO0BXUCZL8efVGU0EmsQjkGpM2H8y/CwGtW1C3el8ywxhHKWxgOlaPNj0VcRRW+OoiKvCXF0o6YeXWLQDaNQyMf1Clhsi22D9HUNXOBCVZamaBmiO5BxRdRQOt3M3oFUAD4/HDolSChx7AvXzRIJQtgsUfMu6HB+HglNLc5d5KiwpcAqTH7Idk/lvLD9Z0rUx4vYWL2UJ4WY6XbdL91ML57+EjsRNEMnw/LCrKklN9NNkbuLvKsdabjM/ZMByh+PDWuuw6kDEYXPzeSfzGARlNG1M1ENRCfGLlUuJ5MVTg+UyxGzC+1+KN/DkDyuTSVbqo7vNnagfKPTrH9b8pQtgQ/PRCifDTaUJaIWw8adUycklLrcppkyCZfkJ5cYlSZnQTkmsYf58OYAlMpg6JnlhYlC9uxhIdWvbr1NS8Ahc9pgQlkkai3fOorVUK4JGeYTJIgVTm+mnCqrmSfOgDJ0mOlOlhcmClk3M0KmPzeF0mnDGVB6LjqbmKB8p5GRQ34DStRCdpEpp5MRNWRNocwsjk9i7nyqugzPYTWUSZuqe0qVucAT5tgH9ITmxEdCdihjpcCVAgfI8uJ4pgx3K3UhgBeRQ9dtbJmjp1TnYmsKoSH1UGqKE23mxlrsri4yKsuAFnZ5BrAugypw0/IdSvHmxHJbEI6lREzj0asuOc7TR8BONdd9pNKCo4LRNY9CdgCEXjqObDhQvsFpy7z7DsqHP9khxp9DzNeKbSR+Iy3/n31tqVFYe17xFUZkTu507+4px4USFwBRm32lbzFyXphgRMtn3cwqqaef8a0UrMHlaJYM8RC1Iq2DeOXvKUdVjALmzromST8+4N+Egm9rrwzl/DpAVlddnE9su36Jyx6ECtkUxufaUMJOzfwQsxldUbnTLyO/ckCcNsS112yDmkkGF/4xKL8rHndrowChbKMrV61QgFBWiMepbRQglG105aoVChDKCvE4tY0ChLKNrly1QgFCWSEep7ZRgFC20ZWrVihAKCvE49Q2ChDKNrpy1QoF/gDXIhmWmc+CSAAAAABJRU5ErkJggg==

開封後、私たちは、ファイルフォーマットの内容を見ることができます:

data:image/png;base64,Base64でエンコードされたセクションが続きます。

もともと見BASE64は、ちょうど復号を考えます。しかし、物事のうち無ソリューション。前回の内容についての憶測、ビットBaiduの。

だから、これはとコンテンツのかなりの部分であることを理解してurl直接開くことができ、我々はアドレスバーにコピーが。

画像-20200312222358990

開封後は、この絵の上に私たちの旗を表示する画像です。

画像-20200312222511738

0x03の知識

データURIスキーム

私たちは、コードの上に見た形の一種ですData URI Schemeだから何であるData URI Schemeそれは?

データURIスキームは、それらが外部のリソースであるかのようにWebページにインラインデータを含む方法を提供するユニフォームリソース識別子(URI)方式です。

ウィキペディアからの抜粋

URIスキームデータ(データURIスキーム)はURI設けられた(ユニフォームリソース識別子)方式では、データ・ページを含むジョイントを、それらが外部リソースであるかのように、実施例のデータを。それはあなたが外部ファイルからロードする必要はありませんので、直接Webページに埋め込まれた小さなデータを配置することを目指しています。多くの場合、Webページに写真を入れて使用。

文法

 data:[<media type>][;base64],<data>

dataプログラム名を代表して、続きます:

<media type>メディアタイプを示す任意の部分では、間の異なるパラメータを有する1つ以上のパラメータが存在してもよい;パーティション。パラメータとしてフォーマットしますattribute=value例えば、我々は、符号化された文字セットを指定することができcharset、データは、MIME 类型フォーマットをコード;. このフォーマットは、data:[<mime type>][;charset=<charset>][;<encoding>],<encoded data>

;base64また、オプションパーツ。存在する場合、URIのコンテンツを表すデータを使用して、バイナリデータはBase64のプログラムASCII形式のエンコード。BASE64方式は、ファイルを増加させるので、\(\ frac13 \)データURIスキームは、一般的に小規模なデータのために使用されているので、そうか。

<data>データを表します。フロント側のパーティション。データが空の場合でも、これが,失われることはできません。データセクションでは、大文字と小文字、数字、および多くのASCIIの句読点や特殊文字を含め、ASCII文字を許可します。データがBである場合エンコーディングase64、データ部分は、唯一の有効なBase64で文字が含まれていてもよいです

例えば

data:text/plain;charset=UTF-8;page=21,the%20data:1234,5678 

(outputs: "the data:1234,5678")

使い方

通常、私たちは、このような一般的であるに画像を挿入するHTMLを使用します

<img src="mages/image.jpeg">

我々はデータを使用している場合はURIスキームを指定できます。

<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==">

この絵は、前者が、我々はこの画像を開いたときに表示されるので、それは、アクセス外部リソースへのHTTP要求を行います。

後者はHTTPリクエストではないが、表示することにより、値文書にHTMLファイルから直接読み取ります。

サポートされているタイプ

data:,                              文本数据
data:text/plain,                    文本数据
data:text/html,                     HTML代码
data:text/html;base64,              base64编码的HTML代码
data:text/css,                      CSS代码
data:text/css;base64,               base64编码的CSS代码
data:text/javascript,               Javascript代码
data:text/javascript;base64,        base64编码的Javascript代码
data:image/gif;base64,              base64编码的gif图片数据
data:image/png;base64,              base64编码的png图片数据
data:image/jpeg;base64,             base64编码的jpeg图片数据
data:image/x-icon;base64,           base64编码的icon图片数据
...

長所と短所

優れました
  • リソースに対する要求を低減することができます。

  • 限られた外部リソースの問題を解決します。

しかし
  • リソースは、ブラウザによって再取得するすべてのアクセスをキャッシュされません。
    • スタイルシートに配置することができcss、キャッシュされたとスタイルシートを一緒に。
  • リソースは、元の1/3よりも大きくなります。

0x04を参照

[1] データURIスキーム

[2] 前端-Data URI Scheme

[3] のCSSパスデータ:画像/ PNG、使用のBASE64は、詳細

おすすめ

転載: www.cnblogs.com/dedragon/p/12483822.html