暗号攻撃: 混乱した心の説明

「暗号化」ずいう蚀葉を聞くず、WiFi パスワヌド、お気に入りの Web サむトのアドレスの暪にある緑色の南京錠、他人の電子メヌルに䟵入するのがいかに難しいかを思い出す人もいたす。 たた、印象的な略語 (DROWN、FREAK、POODLE...)、スタむリッシュなロゎ、ブラりザを緊急に曎新するよう譊告するこずで、近幎の䞀連の脆匱性を思い出す人もいたす。

暗号化はすべおをカバヌしたすが、 本質 別のずころで。 重芁なのは、単玔なものず耇雑なものの間には玙䞀重があるずいうこずです。 卵を割るなど、簡単にできるこずでも元に戻すのが難しいこずもありたす。 他のこずは簡単ですが、小さくお重芁な重芁な郚分が欠けおいるず元に戻すのが困難です。たずえば、「重芁な郚分」が鍵であるずきに斜錠されたドアを開けるなどです。 暗号化では、これらの状況ず実際にどのように䜿甚できるかを研究したす。

近幎、暗号攻撃のコレクションは、科孊論文の公匏で埋め尜くされた掟手なロゎの動物園ず化し、すべおが壊れおいるずいう党䜓的な暗い感芚を生み出しおいたす。 しかし実際には、攻撃の倚くはいく぀かの䞀般原則に基づいおおり、果おしなく続く数匏がわかりやすいアむデアに芁玄されるこずがよくありたす。

この䞀連の蚘事では、基本原則に重点を眮きながら、さたざたな皮類の暗号攻撃に぀いお芋おいきたす。 䞀般的に、この順序どおりではありたせんが、以䞋に぀いお説明したす。

  • 基本戊略: ブルヌト フォヌス、呚波数分析、補間、ダりングレヌド、クロスプロトコル。
  • ブランド化された脆匱性: フリヌク、犯眪、プヌドル、溺死、ログゞャム。
  • 高床な戊略: オラクル攻撃 (Vodenet 攻撃、Kelsey 攻撃)。 䞭間者攻撃、誕生日攻撃、統蚈的偏り差分暗号解読、積分暗号解読など。
  • サむドチャネル攻撃 およびその密接な関係にある障害分析手法。
  • 公開鍵暗号化に察する攻撃: 立方根、ブロヌドキャスト、関連メッセヌゞ、Coppersmith 攻撃、Pohlig-Hellman アルゎリズム、数倀ふるい、Wiener 攻撃、Bleichenbacher 攻撃。

この蚘事では、ケルシヌの攻撃に至るたでの䞊蚘の内容を取り䞊げたす。

基本戊略

以䞋の攻撃は、技術的な詳现をあたり必芁ずせずにほが完党に説明できるずいう意味で単玔です。 耇雑な䟋や高床な䜿甚䟋には觊れずに、それぞれの皮類の攻撃を最も簡単な蚀葉で説明したしょう。

これらの攻撃の䞭には、ほずんど時代遅れになっおおり、長幎䜿甚されおいないものもありたす。 21 䞖玀になっおも、ただ疑うこずを知らない暗号システム開発者に定期的にこっそり忍び寄る叀参の人々もいたす。 珟代の暗号化の時代は、このリストにあるすべおの攻撃に耐えた最初の暗号である IBM DES の出珟によっお始たったず考えるこずができたす。

シンプルなブルヌトフォヌス

暗号攻撃: 混乱した心の説明暗号化スキヌムは 1 ぀の郚分で構成されたす。2) 暗号化機胜。キヌず結合されたメッセヌゞ (平文) を受け取り、暗号化されたメッセヌゞ (暗号文) を䜜成したす。 XNUMX) 暗号文ずキヌを取埗しお平文を生成する埩号化関数。 暗号化ず埩号化はどちらも、キヌを䜿甚しお蚈算するのが簡単でなければなりたせんが、キヌなしで蚈算するのは困難です。

暗号文を芋お、远加情報なしでそれを埩号化しようずするず仮定したす (これを暗号文のみの攻撃ず呌びたす)。 䜕らかの方法で魔法のように正しいキヌを芋぀けた堎合、結果が劥圓なメッセヌゞであれば、それが実際に正しいこずを簡単に怜蚌できたす。

ここには XNUMX ぀の暗黙の仮定があるこずに泚意しおください。 たず、埩号化を実行する方法、぀たり暗号システムがどのように機胜するかを知っおいたす。 これは、暗号化に぀いお議論するずきの暙準的な前提です。 暗号の実装の詳现を攻撃者から隠すこずは、远加のセキュリティ察策であるように思えるかもしれたせんが、攻撃者がこれらの詳现を把握するず、この远加のセキュリティは静かに、そしお䞍可逆的に倱われたす。 そのようにしお ケルヒホッフの原理: システムが敵の手に枡っお䞍郜合が生じるこずはあっおはならない。

第 XNUMX に、正しいキヌが適切な埩号化に぀ながる唯䞀のキヌであるず仮定したす。 これも合理的な仮定です。 暗号文がキヌよりもはるかに長く、読み取り可胜であれば、条件は満たされたす。 これは通垞、珟実の䞖界で起こっおいるこずです。ただし、 実甚的ではない巚倧なキヌ たたは 脇に眮いおおくのが最善のその他の悪ふざけ (説明を省略したのが気に入らない堎合は、定理 3.8 を参照しおください。 ここで).

䞊蚘を考慮するず、考えられるすべおのキヌをチェックするずいう戊略が生たれたす。 これはブルヌト フォヌスず呌ばれ、このような攻撃は最終的にはすべおの実甚的な暗号に察しお機胜するこずが保蚌されおいたす。 たずえば、ハッキングするにはブルヌトフォヌスで十分です。 シヌザヌ暗号、鍵がアルファベット 20 文字である叀代の暗号で、XNUMX を少し超える可胜性のある鍵を意味したす。

暗号解読者にずっお残念なこずに、キヌのサむズを増やすこずはブルヌト フォヌスに察する優れた防埡手段ずなりたす。 キヌのサむズが倧きくなるに぀れお、䜿甚可胜なキヌの数は指数関数的に増加したす。 最新の鍵サむズでは、単玔な総圓り攻撃はたったく実甚的ではありたせん。 この意味を理解するために、2019 幎半ばの時点で既知の最速のスヌパヌコンピュヌタヌを取り䞊げおみたしょう。 サミット IBM から提䟛されおおり、ピヌク パフォヌマンスは 1017 秒あたり玄 128 オペレヌションです。 珟圚、䞀般的なキヌの長さは 2128 ビットで、これは 7800 通りの組み合わせが考えられるこずを意味したす。 すべおのキヌを怜玢するには、Summit スヌパヌコンピュヌタヌが宇宙幎霢の玄 XNUMX 倍の時間を必芁ずしたす。

ブルヌトフォヌスは歎史的な珍奇なものず考えるべきでしょうか? たったく違いたす。これは暗号解読クックブックに必芁な芁玠です。 皋床の差こそあれ歊力を䜿わずに、巧劙な攻撃によっおのみ解読できるほど匱い暗号はたれです。 成功したハッキン​​グの倚くは、アルゎリズム手法を䜿甚しお、たずタヌゲットの暗号を匱め、次にブルヌト フォヌス攻撃を実行したす。

呚波数分析

暗号攻撃: 混乱した心の説明ほずんどの文章は意味䞍明ではありたせん。 たずえば、英語のテキストには「e」ずいう文字ず「the」ずいう冠詞がたくさんありたす。 バむナリ ファむルでは、情報間のパディングずしお倚くのれロ バむトが存圚したす。 呚波数分析は、この事実を利甚した攻撃です。

この攻撃に察しお脆匱な暗号の暙準的な䟋は、単玔眮換暗号です。 この暗号では、キヌはすべおの文字が眮き換えられたテヌブルです。 たずえば、「g」は「h」に、「o」は j に眮き換えられるため、単語「go」は「hj」になりたす。 非垞に倚くの可胜性のあるルックアップ テヌブルがあるため、この暗号は総圓たり攻撃が困難です。 蚈算に興味がある堎合は、有効なキヌの長さは玄 88 ビットです。
暗号攻撃: 混乱した心の説明。 しかし、呚波数分析は通垞、仕事をすぐに完了したす。

単玔な眮換暗号で凊理された次の暗号文を考えおみたしょう。

XDYLY ALY UGLY XDWNKE WN DYAJYN ANF YALXD DGLAXWG XDAN ALY FLYAUX GR WN OGQL ZDWBGEGZDO

から Y 倚くの単語の末尟を含め、頻繁に出珟する堎合、暫定的にこれが文字であるず仮定できたす。 e:

XDeLe ALe UGle XDWNKE WN DeAJeN ANF eALXD DGLAXWG XDAN ALe FLeAUX GR WN OGQL ZDWBGEGZDO

カップル XD いく぀かの単語の冒頭で繰り返されたす。 特に、XDeLe ずいう組み合わせは、この単語を明確に瀺唆しおいたす。 these たたは thereでは、続けおみたしょう。

TheLe Ale UGle は、Ale FleAUt GR WN OGQL ZDWBGEGZDO よりも、WN HEAJEN ANF EALTH DGLATWG を支持しおいたす

さらに次のように仮定しおみたしょう L 䞀臎 r, A  - a 等々。 おそらく数回の詊行が必芁ですが、完党な総圓たり攻撃ず比范しお、この攻撃はすぐに元のテキストを埩元したす。

ホレむショ、あなたの哲孊で倢想されおいる以䞊のこずが倩地にはありたす

䞀郚の人にずっお、そのような「暗号」を解くこずは刺激的な趣味です。

呚波数分析の考え方は、䞀芋したよりも基本的なものです。 そしお、それはさらに耇雑な暗号にも圓おはたりたす。 歎史を通じお、さたざたな暗号蚭蚈が「倚アルファベット眮換」を䜿甚しおそのような攻撃に察抗しようずしおきたした。 ここでは、暗号化プロセス䞭に、キヌに応じお耇雑ではあるが予枬可胜な方法で文字眮換テヌブルが倉曎されたす。 これらの暗号はすべお、䞀床に解読するのは難しいず考えられおいたした。 しかし、控えめな呚波数分析が最終的にそれらすべおを打ち砎りたした。

歎史䞊最も野心的な倚アルファベット暗号、そしおおそらく最も有名なのは、第二次䞖界倧戊の゚ニグマ暗号です。 これは以前のものに比べお比范的耇雑でしたが、倚倧な努力の末、英囜の暗号解読者が呚波数分析を䜿甚しお解読したした。 もちろん、䞊に瀺したような掗緎された攻撃を展開するこずはできたせんでした。 圌らは平文ず暗号文の既知のペアを比范する必芁があり (いわゆる「平文攻撃」)、さらには Enigma ナヌザヌに特定のメッセヌゞを暗号化しお結果を分析するよう促したした (「遞択平文攻撃」)。 しかし、これは敗北した敵軍ず沈没した朜氎艊の運呜を楜にするものではありたせんでした。

この勝利の埌、呚波数分析は暗号解析の歎史から消えたした。 珟代のデゞタル時代の暗号は、文字ではなくビットを扱うように蚭蚈されおいたす。 さらに重芁なのは、これらの暗号は、埌に「 シュナむアヌの法則: 自分自身では解読できない暗号化アルゎリズムは誰でも䜜成できたす。 暗号化システムずしおは䞍十分です 芋えた 難しいその䟡倀を蚌明するには、暗号を解読するために党力を尜くす倚くの暗号解析者による容赊ないセキュリティレビュヌを受けなければなりたせん。

予備蚈算

暗号攻撃: 混乱した心の説明人口 200 人の仮想郜垂プレコム ハむツを考えおみたしょう。 垂内の各家庭には平均 000 ドル盞圓の貎重品が保管されおいたすが、最高 30 ドル盞圓の䟡倀はありたせん。プレコムのセキュリティ垂堎は、䌝説的な Coyote™ クラスのドア ロックを補造する ACME Industries によっお独占されおいたす。 専門家の分析によるず、コペヌテ玚ロックは非垞に耇雑な仮想マシンによっおのみ砎るこずができ、その䜜成には玄 000 幎の歳月ず 50 䞇ドルの投資が必芁です。 街は安党ですか

おそらくノヌです。 やがお、かなり野心的な犯眪者が珟れたす。 圌は次のように掚論したす。「はい、倚額の初期費甚がかかりたす。 50 幎間の蟛抱匷い埅ち時間ず 000 ドル。しかし、それが終わったら、次の情報にアクセスできるようになりたす。 この街のすべおの富。 カヌドを正しく䜿えば、この投資は䜕倍にもなっお元が取れるでしょう。」

暗号化でも同じこずが圓おはたりたす。 特定の暗号に察する攻撃は、容赊のない費甚察効果分析の察象ずなりたす。 比率が有利な堎合、攻撃は発生したせん。 しかし、倚くの朜圚的な被害者に察しお䞀床に攻撃を仕掛けた堎合、ほが必ず報われたす。その堎合、蚭蚈䞊のベスト プラクティスは、最初の日から攻撃が開始されたず想定するこずです。 私たちは本質的にマヌフィヌの法則の暗号版を持っおいたす。「システムを実際に砎るこずができるものはすべお、システムを砎る」ずいうものです。

事前蚈算攻撃に察しお脆匱な暗号システムの最も単玔な䟋は、定数キヌレス暗号です。 これは次の堎合に圓おはたりたした カ゚サルの暗号これは、アルファベットの各文字を XNUMX 文字ず぀前にシフトするだけです (テヌブルがルヌプしおいるため、アルファベットの最埌の文字が XNUMX 番目に暗号化されたす)。 ここでもケルヒホッフの原則が機胜したす。システムは䞀床ハッキングされるず、氞久にハッキングされ続けるのです。

コンセプトはシンプルです。 初心者の暗号システム開発者であっおも、脅嚁を認識し、それに応じお準備する可胜性がありたす。 暗号の進化を芋るず、シヌザヌ暗号の最初の改良版から倚アルファベット暗号の衰退に至るたで、このような攻撃はほずんどの暗号にずっお䞍適切でした。 このような攻撃は、暗号化の珟代が到来しお初めお再発したした。

この利益は XNUMX ぀の芁因によるものです。 たず、十分に耇雑な暗号システムが぀いに登堎したしたが、ハッキング埌の悪甚の可胜性は明らかではありたせんでした。 第二に、暗号化が非垞に普及したため、䜕癟䞇もの䞀般の人々が暗号化のどこでどの郚分を再利甚するかを毎日決定したした。 専門家がリスクに気づき、譊告を発するたでにはしばらく時間がかかりたした。

事前蚈算攻撃を思い出しおください。この蚘事の最埌では、事前蚈算攻撃が重芁な圹割を果たした XNUMX ぀の実際の暗号䟋を芋おいきたす。

補間

ここでは、有名な探偵シャヌロック ホヌムズが䞍運なワト゜ン博士に補間攻撃を行っおいたす。

私はすぐに、あなたがアフガニスタンから来たのだず掚枬したした... 私の思考の流れは次のずおりでした。 それで軍医。 圌は熱垯から来たばかりです。圌の顔は暗いですが、手銖の方がずっず癜いので、これは圌の肌の自然な色合いではありたせん。 顔はや぀れおいお、明らかに圌は倚くの苊しみず病気に苊しんでいた。 圌は巊手に傷を負っおいた。圌は動かずに少し䞍自然に巊手を握っおいる。 英囜の軍医が苊難に耐え、負傷する可胜性がある熱垯地方のどこでしょうか もちろんアフガニスタンでもね。」 この䞀連の思考には䞀秒もかかりたせんでした。 そこで私は、あなたはアフガニスタンから来たず蚀いたした、そしおあなたは驚きたした。

ホヌムズが各蚌拠から個別に抜出できる情報はほずんどありたせんでした。 圌はそれらをすべお䞀緒に考慮するこずによっおのみ結論に達するこずができたした。 補間攻撃も、同じキヌから埗られる既知の平文ず暗号文のペアを調べるこずで同様に機胜したす。 各ペアから個々の芳察結果が抜出され、キヌに関する䞀般的な結論を導き出すこずができたす。 これらの掚論はすべお曖昧で圹に立たないように芋えたすが、突然臚界量に達し、唯䞀可胜な結論、぀たり、それがどれほど信じられないものであっおも、それは真実に違いないずいう結論に達するたでは圹に立ちたせん。 この埌、キヌが公開されるか、埩号化プロセスが非垞に掗緎されお耇補できるようになりたす。

補間がどのように機胜するかを簡単な䟋で説明したしょう。 敵であるボブの個人的な日蚘を読みたいずしたす。 圌は、雑誌「A Mock of Cryptography」の広告で知った簡単な暗号システムを䜿甚しお、日蚘のすべおの数字を暗号化したす。 システムは次のように機胜したす。ボブは奜きな数字を XNUMX ぀遞びたす。 暗号攻撃: 混乱した心の説明 О 暗号攻撃: 混乱した心の説明。 これからは、あらゆる数字を暗号化するために 暗号攻撃: 混乱した心の説明、蚈算したす 暗号攻撃: 混乱した心の説明。 たずえば、ボブが遞択した堎合 暗号攻撃: 混乱した心の説明 О 暗号攻撃: 混乱した心の説明、次に番号 暗号攻撃: 混乱した心の説明 次のように暗号化されたす 暗号攻撃: 混乱した心の説明.

28 月 XNUMX 日に、ボブが日蚘に䜕かを匕っ掻いおいるこずに気づいたずしたしょう。 圌が話し終えたら、静かにそれを手に取り、最埌の゚ントリを芋おみたしょう。

Дата 235/520

芪愛なる日蚘さん、

今日は良い日でした。 を通しお 64 今日はアパヌトに䜏むアリサずデヌトです 843。 圌女はそうかもしれないず本圓に思いたす 26!

私たちはボブのデヌトに぀いお真剣に考えおいるので (このシナリオでは私たちは二人ずも 15 歳です)、アリスの䜏所だけでなく日付も知っおおくこずが重芁です。 幞いなこずに、Bob の暗号システムは補間攻撃に察しお脆匱であるこずがわかりたした。 私たちには分からないかもしれない 暗号攻撃: 混乱した心の説明 О 暗号攻撃: 混乱した心の説明ですが、今日の日付はわかっおいるので、平文ず暗号文のペアが XNUMX ぀ありたす。 ぀たり、私たちはそれを知っおいたす 暗号攻撃: 混乱した心の説明 で暗号化されおいる 暗号攻撃: 混乱した心の説明ず 暗号攻撃: 混乱した心の説明 - で 暗号攻撃: 混乱した心の説明。 これを曞き留めおおきたす。

暗号攻撃: 混乱した心の説明

暗号攻撃: 混乱した心の説明

私たちは 15 歳なので、XNUMX ぀の未知数をも぀ XNUMX ぀の方皋匏系に぀いおはすでに知っおいたす。この状況では、これで十分です。 暗号攻撃: 混乱した心の説明 О 暗号攻撃: 混乱した心の説明 問題なく。 平文ず暗号文の各ペアはボブの鍵に制玄を課し、XNUMX ぀の制玄を合わせるず鍵を完党に回埩するのに十分です。 この䟋では、答えは次のずおりです。 暗号攻撃: 混乱した心の説明 О 暗号攻撃: 混乱した心の説明 で 暗号攻撃: 混乱した心の説明 暗号攻撃: 混乱した心の説明だから 26 日蚘の䞭の「the one」、぀たり「同じもの」ずいう蚀葉に察応したす。 レヌン。

もちろん、補間攻撃はこのような単玔な䟋に限定されたせん。 よく理解されおいる数孊的オブゞェクトずパラメヌタヌのリストに倉換されるすべおの暗号システムは、補間攻撃の危険にさらされおいたす。オブゞェクトが理解できるほど、リスクは高くなりたす。

初心者はよく、暗号化は「可胜な限り醜いものを蚭蚈する技術」だず䞍満を蚀いたす。 おそらく補間攻撃が䞻な原因ず考えられたす。 ボブは、゚レガントな数孊的デザむンを䜿甚するこずも、アリスずのデヌトを非公開にするこずもできたすが、悲しいこずに、通垞は䞡方の方法を䜿甚するこずはできたせん。 これは、最終的に公開キヌ暗号化の話題に到達するず、十分に明らかになるでしょう。

クロスプロトコル/ダりングレヌド

暗号攻撃: 混乱した心の説明Now You See Me (2013) では、奇術垫のグルヌプが腐敗した保険王アヌサヌ トレスラヌから党財産をだたし取ろうずしたす。 アヌサヌの銀行口座にアクセスするには、むリュヌゞョニストは圌のナヌザヌ名ずパスワヌドを提䟛するか、圌に盎接銀行に出向いお蚈画に参加するよう匷制する必芁がありたす。

どちらのオプションも非垞に困難です。 圌らはステヌゞでパフォヌマンスするこずに慣れおおり、諜報掻動には参加しおいたせん。 そこで圌らは XNUMX 番目の遞択肢を遞択したす。共犯者がアヌサヌのふりをしお銀行に電話したす。 銀行は、叔父の名前や最初のペットの名前など、身元を確認するためにいく぀かの質問をしたす。 私たちのヒヌロヌたちを事前に 圌らは巧劙な゜ヌシャル゚ンゞニアリングを䜿甚しお、アヌサヌからこの情報を簡単に抜出したす。 この時点から、優れたパスワヌド セキュリティは重芁ではなくなりたす。

私たちが個人的に確認し怜蚌した郜垂䌝説によるず、暗号孊者むヌラむ・ビヌハムはか぀お、秘密の質問を蚭定するよう䞻匵する銀行窓口係に遭遇した。窓口係が母方の祖母の名前を尋ねるず、ビヌハムは口述筆蚘し始めた。「倧文字 X、小さなy、XNUMX...」。

同じ資産を保護するために XNUMX ぀の暗号化プロトコルが䞊行しお䜿甚され、䞀方が他方よりはるかに匱い堎合、これは暗号化でも同じです。 結果ずしお生じるシステムは、クロスプロトコル攻撃に察しお脆匱になりたす。぀たり、より匷力なプロトコルに觊れるこずなく、より匱いプロトコルが攻撃されお、賞品を獲埗するこずになりたす。

䞀郚の耇雑なケヌスでは、匱いプロトコルを䜿甚しおサヌバヌに接続するだけでは十分ではなく、正芏のクラむアントの非自発的な参加が必芁になりたす。 これは、いわゆるダりングレヌド攻撃を䜿甚しお組織化できたす。 この攻撃を理解するために、むリュヌゞョニストが映画よりも難しい任務に就いおいるず仮定したしょう。 銀行員 (レゞ係) ずアヌサヌが予期せぬ事態に遭遇し、次のような䌚話になったず仮定したす。

泥棒 こんにちは アヌサヌ・トレスラヌです。 パスワヌドをリセットしたいのですが。

レゞ 玠晎らしい。 個人甚秘密コヌドブックの 28 ペヌゞ、単語 3 をご芧ください。以降のすべおのメッセヌゞは、この特定の単語をキヌずしお䜿甚しお暗号化されたす。 PQJGH。 LOTJNAM PGGY MXVRL ZZLQ SRIU HHNMLPPPV


泥棒 おいおい、埅お埅お。 これは本圓に必芁ですか? 普通の人ず同じように話せないのですか

レゞ これはお勧めしたせん。

泥棒 ただ ほら、私は最悪の䞀日を過ごしたんです、いいですか 私は VIP クラむアントなので、これらの愚かなコヌドブックを調べる気分ではありたせん。

レゞ 倧䞈倫。 どうしおもずいうなら、トレスラヌさん。 なんでしょう

泥棒 どうか、私のお金をすべおアヌサヌ・トレスラヌ囜立被害者基金に寄付したいず思いたす。

䞀時停止。

レゞ もう明らかですか。 倧芏暡な取匕の堎合は PIN を入力しおください。

泥棒 私の䜕

レゞ お客様のご芁望に応じお、この芏暡の取匕には PIN が必芁になりたす。 このコヌドは、アカりントを開蚭したずきに提䟛されたす。

泥棒... 私はそれを倱いたした。 これは本圓に必芁ですか? 取匕を承認するこずはできたせんか?

レゞ いいえ。 ごめんなさい、トレスラヌさん。 繰り返しになりたすが、これはあなたが求めおいたセキュリティ察策です。 ご垌望の堎合は、新しい PIN コヌドをメヌルボックスに送信いたしたす。

私たちのヒヌロヌは䜜戊を延期したす。 圌らはトレスラヌの倧芏暡な取匕のいく぀かを盗聎し、PIN を聞き出すこずを望んでいた。 しかし、毎回、興味深いこずが語られる前に、䌚話は暗号化された意味䞍明なものになっおしたいたす。 ある晎れた日、぀いに蚈画が実行に移されたす。 圌らは、トレスラヌが電話で倧芏暡な取匕をしなければならない瞬間を蟛抱匷く埅ち、圌が電話に出るず...

トレスラヌ: こんにちは。 リモヌト取匕を完了したいのですが、お願いしたす。

レゞ 玠晎らしい。 あなたの個人的な秘密のコヌドブック、ペヌゞを芋おください...

匷盗がボタンを抌すず、レゞ係の声が理解できないノむズに倉わりたす。

レゞ - #@$#@$#*@$$@#* はこの単語をキヌずしお暗号化されたす。 AAAYRR PLRQRZ MMNJK ロゞバン 

トレスラヌ: 申し蚳ありたせんが、よくわかりたせんでした。 たた どのペヌゞにありたすか? 䜕の蚀葉

レゞ これは @#$@#*$)#*#@()#@$(#@*$(#@*.

トレスラヌ: 䜕

レゞ 単語番号 XNUMX @$#@$#%#$。

トレスラヌ: 真剣に もういい あなたずあなたのセキュリティプロトコルは䞀皮のサヌカスです。 普通に話しおいいのはわかっおいたす。

レゞ お勧めしたせん 

トレスラヌ: そしお、時間を無駄にするこずはお勧めしたせん。 電話回線の問題が解決されるたで、これ以䞊聞きたくない。 この取匕を成立させるこずができるのか、できないのか?

レゞ  はい。 倧䞈倫。 なんでしょう

トレスラヌ: Lord Business Investments に 20 ドルを送金したいのですが、口座番号は...

レゞ しばらくお埅ちください。 それは倧倉なこずです。 倧芏暡な取匕の堎合は PIN を入力しおください。

トレスラヌ: 䜕 ああ、たさに。 1234。

ここからは䞋方向ぞの攻撃です。 「盎接話すだけ」ずいう匱いプロトコルは次のように想定されおいたした。 オプション 緊急の堎合に。 それでも私たちはここにいたす。

正気の持ち䞻が、䞊蚘のような本圓の「別段の指瀺があるたで安党な」システムを蚭蚈するのは誰だろうず疑問に思うかもしれたせん。 しかし、架空の銀行が暗号化を奜たない顧客を匕き留めるためにリスクを負うのず同じように、システムは䞀般に、セキュリティに無関心、たたはたったく敵察的な芁件に匕き寄せられるこずがよくありたす。

これはたさに 2 幎の SSLv1995 プロトコルで起こったこずです。 米囜政府は長い間、暗号を倖敵や囜内の敵から遠ざけるのが最善の歊噚であるず芋なし始めおいたす。 コヌドの䞀郚は、アルゎリズムが意図的に匱められるずいう条件付きで、米囜からの茞出を個別に承認されたした。 最も人気のあるブラりザである Netscape Navigator の開発者である Netscape には、本質的に脆匱な 2 ビット RSA キヌ (RC512 の堎合は 40 ビット) を䜿甚する SSLv4 のみの蚱可が䞎えられおいたした。

XNUMX 幎代の終わりたでに芏則は緩和され、最新の暗号化ぞのアクセスが広く利甚できるようになりたした。 ただし、クラむアントずサヌバヌは、レガシヌ システムのサポヌトを維持するのず同じ慣性により、長幎にわたり、匱䜓化した「゚クスポヌト」暗号化をサポヌトしおきたした。 クラむアントは、他に䜕もサポヌトしおいないサヌバヌに遭遇する可胜性があるず信じおいたした。 サヌバヌも同じこずを行いたした。 もちろん、SSL プロトコルでは、より優れたプロトコルが利甚可胜な堎合には、クラむアントずサヌバヌが匱いプロトコルを決しお䜿甚しおはならないず芏定しおいたす。 しかし、同じ前提がトレスラヌず圌の銀行にも圓おはたりたした。

この理論は、2015 幎に SSL プロトコルのセキュリティを揺るがす XNUMX ぀の泚目を集めた攻撃に圱響を及がしたした。どちらもマむクロ゜フトの研究者によっお発芋され、 INRIA。 たず、FREAK 攻撃の詳现が XNUMX 月に明らかになり、その XNUMX か月埌に Logjam ず呌ばれる別の同様の攻撃が明らかになりたした。これに぀いおは、公開キヌ暗号化に察する攻撃に進むずきにさらに詳しく説明したす。

暗号攻撃: 混乱した心の説明脆匱性 FREAK (「Smack TLS」ずしおも知られおいたす) は、研究者が TLS クラむアント/サヌバヌの実装を分析し、興味深いバグを発芋したずきに明らかになりたした。 これらの実装では、クラむアントが匱い゚クスポヌト暗号化の䜿甚を芁求しおいないにもかかわらず、サヌバヌがそのようなキヌで応答する堎合、クラむアントは「たあたあ」ず蚀っお、匱い暗号スむヌトに切り替えたす。

圓時、茞出暗号化は時代遅れで犁止されおいるず広く考えられおいたため、この攻撃は完党な衝撃ずなり、ホワむトハりス、IRS、NSA サむトを含む倚くの重芁なドメむンに圱響を䞎えたした。 さらに悪いこずに、倚くの脆匱なサヌバヌがセッションごずに新しいキヌを生成するのではなく、同じキヌを再利甚するこずでパフォヌマンスを最適化しおいるこずが刀明したした。 これにより、プロトコルをダりングレヌドした埌、事前蚈算攻撃を実行できるようになりたした。100 ぀のキヌのクラッキングには比范的高䟡なたたでしたが (公開時点で 12 ドルず XNUMX 時間)、接続を攻撃する実際のコストは倧幅に削枛されたした。 サヌバヌ キヌを䞀床遞択し、それ以降のすべおの接続の暗号化を解読するだけで十分です。

次に進む前に、蚀及する必芁がある高床な攻撃が XNUMX ぀ありたす...

オラクル攻撃

暗号攻撃: 混乱した心の説明モクシヌ・マヌリンスパむク クロスプラットフォヌムの暗号メッセヌゞング アプリ Signal の父ずしお最もよく知られおいたす。 しかし、私たちは個人的に圌のあたり知られおいない革新的なものの XNUMX ぀が気に入っおいたす - 暗号砎滅の原理 (暗号砎滅原理)。 少し蚀い換えるず、次のように蚀えたす。 どれでも 朜圚的に悪意のある゜ヌスからのメッセヌゞに察しお暗号化操䜜を実行し、その結果に応じお異なる動䜜をする堎合、それは運呜にありたす。」 あるいは、もっず鋭い圢で蚀えば、「凊理のために敵から情報を受け取っおはいけたせん。そうしなければならない堎合には、少なくずも結果を瀺さないでください。」

バッファ オヌバヌフロヌやコマンド むンゞェクションなどは脇に眮いおおきたしょう。 それらはこの議論の範囲を超えおいたす。 「砎滅の原則」に違反するず、プロトコルが期埅どおりに動䜜するため、重倧な暗号化ハッキングが発生したす。

䟋ずしお、脆匱な眮換暗号を䜿甚した架空の蚭蚈を取り䞊げ、攻撃の可胜性を瀺しおみたしょう。 頻床分析を䜿甚した眮換暗号に察する攻撃はすでに確認されおいたすが、これは単なる「同じ暗号を解読する別の方法」ではありたせん。 それどころか、オラクル攻撃ははるかに珟代的な発明であり、呚波数分析が倱敗する倚くの状況に適甚できたす。これに぀いおは次のセクションでデモンストレヌションしたす。 ここでは、䟋をわかりやすくするためだけに単玔な暗号が遞択されおいたす。

したがっお、アリスずボブは、圌らだけが知っおいる鍵を䜿甚した単玔な眮換暗号を䜿甚しお通信したす。 メッセヌゞの長さに぀いおは非垞に厳密で、長さはちょうど 20 文字です。 そこで圌らは、誰かがより短いメッセヌゞを送信したい堎合は、メッセヌゞの最埌にダミヌ テキストを远加しおちょうど 20 文字にする必芁があるこずに同意したした。 いく぀かの議論の結果、圌らは次のダミヌ テキストのみを受け入れるこずに決定したした。 a, bb, ccc, dddd したがっお、必芁な任意の長さのダミヌテキストがわかりたす。

アリスたたはボブがメッセヌゞを受信するず、たずメッセヌゞの長さが正しいか (20 文字)、サフィックスが正しいダミヌ テキストであるかを確認したす。 そうでない堎合は、適切な゚ラヌ メッセヌゞが返されたす。 テキストの長さずダミヌ テキストに問題がない堎合、受信者はメッセヌゞ自䜓を読み、暗号化された応答を送信したす。

攻撃䞭、攻撃者はボブになりすたし、停のメッセヌゞをアリスに送信したす。 メッセヌゞはたったくナンセンスです。攻撃者はキヌを持っおいないため、意味のあるメッセヌゞを停造するこずはできたせん。 しかし、このプロトコルは砎滅の原則に違反しおいるため、以䞋に瀺すように、攻撃者は䟝然ずしおアリスを眠にはめお重芁な情報を挏らすこずができたす。

泥棒 PREWF ZHJKL MMMN. LA

アリス 無効なダミヌテキストです。

泥棒 PREWF ZHJKL MMMN. LB

アリス 無効なダミヌテキストです。

泥棒 PREWF ZHJKL MMMN. LC

アリス ILCT? TLCT RUWO PUT KCAW CPS OWPOW!

匷盗はアリスが今䜕を蚀ったか分かりたせんが、蚘号が C 察応しなければなりたせん aアリスがダミヌテキストを受け入れたためです。

泥棒 REWF ZHJKL MMMN. LAA

アリス 無効なダミヌテキストです。

泥棒 REWF ZHJKL MMMN. LBB

アリス 無効なダミヌテキストです。

䜕床か詊みた埌...

泥棒 REWF ZHJKL MMMN. LGG

アリス 無効なダミヌテキストです。

泥棒 REWF ZHJKL MMMN. LHH

アリス TLQO JWCRO FQAW SUY LCR C OWQXYJW. IW PWWR TU TCFA CHUYT TLQO JWFCTQUPOLQZ.

繰り返したすが、攻撃者はアリスが今䜕を蚀ったか分かりたせんが、アリスがダミヌテキストを受け入れたため、H は b ず䞀臎する必芁があるこずに泚意したす。

攻撃者が各文字の意味を理解するたで、これを繰り返したす。

䞀芋するず、この手法は遞択された平文攻撃に䌌おいたす。 最終的に、攻撃者は暗号文を遞択し、サヌバヌはそれを玠盎に凊理したす。 これらの攻撃を珟実䞖界で実行可胜にする䞻な違いは、攻撃者が実際のトランスクリプトにアクセスする必芁がないこずです。サヌバヌの応答は、「無効なダミヌ テキスト」のような無害なものでも十分です。

この特定の攻撃は有益ではありたすが、「ダミヌ テキスト」スキヌムの詳现、䜿甚されおいる特定の暗号化システム、たたは攻撃者によっお送信されたメッセヌゞの正確なシヌケンスにあたりこだわる必芁はありたせん。 基本的な考え方は、アリスが平文の特性に基づいおどのように異なる反応をするか、そしお察応する暗号文が実際に信頌できる圓事者からのものであるかどうかを怜蚌せずに反応するずいうものです。 したがっお、アリスは攻撃者が圌女の回答から秘密情報を搟り出すこずを蚱可したす。

このシナリオでは倉曎できるこずがたくさんありたす。 アリスが反応するシンボル、圌女の行動の違い、あるいは䜿甚されおいる暗号システムさえも。 しかし、原則は倉わらず、党䜓ずしおの攻撃は䜕らかの圢で実行可胜です。 この攻撃の基本的な実装は、いく぀かのセキュリティ バグの発芋に圹立ちたした。これに぀いおは埌ほど説明したす。 しかし、その前に、いく぀かの理論的な教蚓を孊ぶ必芁がありたす。 この架空の「アリス スクリプト」を、実際の珟代暗号に䜜甚する攻撃に䜿甚するにはどうすればよいでしょうか? 理論䞊でもこれは可胜でしょうか

1998 幎、スむスの暗号孊者ダニ゚ル・ブラむヘンバッハヌはこの質問に肯定的に答えたした。 圌は、特定のメッセヌゞ スキヌムを䜿甚しお、広く䜿甚されおいる公開キヌ暗号システム RSA に察するオラクル攻撃を実蚌したした。 䞀郚の RSA 実装では、サヌバヌは、平文がスキヌムず䞀臎するかどうかに応じお、異なる゚ラヌ メッセヌゞで応答したす。 これは攻撃を実行するには十分でした。

2002 幎埌の XNUMX 幎、フランスの暗号孊者セルゞュ・ボヌドネヌは、䞊蚘のアリスのシナリオで説明された攻撃ずほが同じオラクル攻撃を実蚌したした。ただし、架空の暗号の代わりに、人々が実際に䜿甚しおいる立掟なクラスの珟代暗号をすべお解読した点が異なりたす。 特に、Vaudenay の攻撃は、いわゆる「CBC 暗号化モヌド」で䜿甚される固定入力サむズの暗号 (「ブロック暗号」) ず、基本的にアリスのシナリオのものず同等の䞀般的なパディング スキヌムを䜿甚するこずをタヌゲットにしおいたす。

同じく 2002 幎に、アメリカの暗号孊者ゞョン ケルシヌ - 共著者 二匹 â€” メッセヌゞを圧瞮しお暗号化するシステムに察するさたざたなオラクル攻撃を提案したした。 その䞭で最も泚目されたのは、暗号文の長さから元の平文の長さを掚枬できる堎合が倚いずいう事実を利甚した攻撃でした。 理論的には、これにより、元の平文の䞀郚を回埩するオラクル攻撃が可胜になりたす。

以䞋では、Vaudenay 攻撃ず Kelsey 攻撃に぀いおさらに詳しく説明したす (Bleichenbacher 攻撃に぀いおは、公開鍵暗号に察する攻撃に進むずきにさらに詳しく説明したす)。 最善の努力にもかかわらず、文章は倚少専門的になりたす。 したがっお、䞊蚘の説明で十分な堎合は、次の XNUMX ぀のセクションを飛ばしおください。

ノォヌデンの攻撃

Vaudenay 攻撃を理解するには、たずブロック暗号ず暗号化モヌドに぀いおもう少し詳しく説明する必芁がありたす。 前述したように、「ブロック暗号」は、キヌず特定の固定長 (「ブロック長」) の入力を受け取り、同じ長さの暗号化されたブロックを生成する暗号です。 ブロック暗号は広く䜿甚されおおり、比范的安党であるず考えられおいたす。 珟圚廃止されおいる DES は、最初の近代的な暗号ず考えられおおり、ブロック暗号でした。 䞊で述べたように、珟圚広く䜿甚されおいる AES に぀いおも同様です。

残念ながら、ブロック暗号には明らかな匱点が 128 ぀ありたす。 䞀般的なブロック サむズは 16 ビット、぀たり XNUMX 文字です。 明らかに、最新の暗号化ではより倧きな入力デヌタを凊理する必芁があり、ここで暗号化モヌドが登堎したす。 暗号化モヌドは本質的にはハックです。これは、特定のサむズの入力のみを受け入れるブロック暗号を、任意の長さの入力に䜕らかの方法で適甚する方法です。

Vodene の攻撃は、䞀般的な CBC (Cipher Block Chaining) 動䜜モヌドに焊点を圓おおいたす。 この攻撃は、基瀎ずなるブロック暗号を魔法の難攻䞍萜のブラック ボックスずしお扱い、そのセキュリティを完党に回避したす。

以䞋は、CBC モヌドがどのように機胜するかを瀺す図です。

暗号攻撃: 混乱した心の説明

暗号攻撃: 混乱した心の説明

䞞で囲たれたプラスは、XOR (排他的 OR) 挔算を意味したす。 たずえば、暗号文の XNUMX 番目のブロックが受信されたす。

  1. XNUMX 番目の平文ブロックず最初の暗号文ブロックに察しお XOR 挔算を実行したす。
  2. 結果のブロックをキヌを䜿甚したブロック暗号で暗号化したす。

CBC はバむナリ XOR 挔算を倚甚するため、そのプロパティのいく぀かを思い出しおみたしょう。

  • べき等性: 暗号攻撃: 混乱した心の説明
  • 可換性: 暗号攻撃: 混乱した心の説明
  • 関連性: 暗号攻撃: 混乱した心の説明
  • 自己可逆性: 暗号攻撃: 混乱した心の説明
  • バむトサむズ: バむトn 暗号攻撃: 混乱した心の説明 = (バむト n の 暗号攻撃: 混乱した心の説明) 暗号攻撃: 混乱した心の説明 (バむト n の 暗号攻撃: 混乱した心の説明)

通垞、これらの特性は、XOR 挔算を含む方皋匏ず未知の方皋匏がある堎合、それを解くこずができるこずを意味したす。 たずえば、それがわかっおいれば、 暗号攻撃: 混乱した心の説明 未知のものず 暗号攻撃: 混乱した心の説明 そしお有名な 暗号攻撃: 混乱した心の説明 О 暗号攻撃: 混乱した心の説明の堎合、䞊蚘の特性に基づいお次の方皋匏を解くこずができたす。 暗号攻撃: 混乱した心の説明。 次のように方皋匏の䞡偎に XOR を適甚するこずで、 暗号攻撃: 混乱した心の説明、 我々が埗る 暗号攻撃: 混乱した心の説明。 これはすぐに非垞に重芁になりたす。

私たちのアリスのシナリオずボヌドネヌの攻撃の間には、XNUMX ぀の小さな違いず XNUMX ぀の倧きな違いがありたす。 マむナヌなものが XNUMX ぀ありたす:

  • スクリプトでは、アリスは平文が文字で終わるこずを期埅しおいたした a, bb, ccc 等々。 Wodene 攻撃では、被害者は平文が N バむト (぀たり、01 進数の 02 たたは 02 03、たたは 03 03 XNUMX など) で N 回終わるこずを期埅したす。 これは玔粋に衚面䞊の違いです。
  • アリスのシナリオでは、アリスがメッセヌゞを受け入れたかどうかは、「ダミヌ テキストが正しくありたせん」ずいう応答によっお簡単にわかりたした。 Vodene の攻撃では、さらなる分析が必芁であり、被害者偎での正確な実装が重芁です。 しかし、簡朔にするために、この分析が䟝然ずしお可胜であるこずを前提ずしお考えおみたしょう。

䞻な違い:

  • 同じ暗号システムを䜿甚しおいないため、攻撃者が制埡する暗号文のバむトず秘密 (鍵ず平文) の関係は明らかに異なりたす。 したがっお、攻撃者は暗号文を䜜成し、サヌバヌの応答を解釈するずきに、別の戊略を䜿甚する必芁がありたす。

この倧きな違いは、Vaudenay 攻撃を理解するためのパズルの最埌のピヌスです。そのため、そもそも CBC に察するオラクル攻撃がなぜ、どのように仕掛けられるのかを少し考えおみたしょう。

247 ブロックの CBC 暗号文が䞎えられ、それを埩号したいずしたす。 以前にアリスに停のメッセヌゞを送信できたのず同じように、サヌバヌに停のメッセヌゞを送信できたす。 サヌバヌはメッセヌゞを埩号化したすが、埩号化結果は衚瀺したせん。代わりに、アリスの堎合ず同様に、サヌバヌは平文に有効なパディングがあるかどうかずいう XNUMX ビットの情報のみを報告したす。

アリスのシナリオでは次のような関係があったず考えおみたしょう。

$$display$$text{SIMPLE_SUBSTITUTION}(テキスト{暗号文},テキスト{キヌ}) = テキスト{平文}$$display$$

これを「アリスの方皋匏」ず呌びたしょう。 私たちは暗号文を管理しおいたした。 サヌバヌ (Alice) は、受信した平文に関するあいたいな情報を挏掩したした。 これにより、最埌の芁玠であるキヌに関する情報を掚枬するこずができたした。 類掚するず、CBC スクリプトのそのような接続を芋぀けるこずができれば、そこから秘密情報を抜出できる可胜性がありたす。

幞いなこずに、私たちが利甚できる人間関係は実際に存圚したす。 ブロック暗号を埩号化するための最埌の呌び出しの出力を考慮し、この出力を次のように瀺したす。 暗号攻撃: 混乱した心の説明。 平文のブロックも瀺したす 暗号攻撃: 混乱した心の説明 および暗号文ブロック 暗号攻撃: 混乱した心の説明。 CBC ダむアグラムをもう䞀床芋お、䜕が起こっおいるかに泚目しおください。

暗号攻撃: 混乱した心の説明

これを「CBC方皋匏」ず呌びたしょう。

アリスのシナリオでは、暗号文を監芖し、察応する平文の挏掩を監芖するこずで、方皋匏の XNUMX 番目の項、぀たり鍵を回埩する攻撃を仕掛けるこずができたした。 CBC シナリオでは、暗号文も監芖し、察応する平文の情報挏掩を芳察したす。 類掚が成り立぀堎合、次の情報を埗るこずができたす。 暗号攻撃: 混乱した心の説明.

本圓に埩元したず仮定したしょう 暗号攻撃: 混乱した心の説明、それでは それでは、平文の最埌のブロック党䜓を䞀床に出力できたす (暗号攻撃: 混乱した心の説明を入力するだけで 暗号攻撃: 混乱した心の説明 私たちが持っおいるものそしお
受け取った 暗号攻撃: 混乱した心の説明 CBC方皋匏に代入したす。

党䜓的な攻撃蚈画に぀いお楜芳的になったので、次は詳现を怜蚎したす。 平文情報がサヌバヌ䞊でどのように挏掩するかに泚意しおください。 アリスのスクリプトでは、$inline$text{SIMPLE_SUBSTITUTION}(text{ciphertext},text{key})$inline$ が次の行で終わっおいる堎合にのみアリスが正しいメッセヌゞで応答するため、リヌクが発生したした。 a たたは bb、などですが、これらの状態が偶然に匕き起こされる可胜性は非垞に小さいです)。 CBC ず同様に、サヌバヌは次の堎合にのみパディングを受け入れたす。 暗号攻撃: 混乱した心の説明 XNUMX進数で終わる 01。 それでは、同じトリックを詊しおみたしょう。独自の停の倀を含む停の暗号文を送信したす。 暗号攻撃: 混乱した心の説明サヌバヌが充填を受け入れるたで。

サヌバヌが停のメッセヌゞの XNUMX ぀に察するパディングを受け入れる堎合、それは次のこずを意味したす。

暗号攻撃: 混乱した心の説明

ここで、バむト-バむト XOR プロパティを䜿甚したす。

暗号攻撃: 混乱した心の説明

私たちは第䞀項ず第䞉項を知っおいたす。 そしお、これにより残りの甚語、぀たり最埌のバむトを回埩できるこずをすでに芋おきたした。 暗号攻撃: 混乱した心の説明:

暗号攻撃: 混乱した心の説明

これにより、CBC 方皋匏ずバむトごずのプロパティを介しお、最終的な平文ブロックの最埌のバむトも埗られたす。

そのたたにしおおいお、理論的に匷力な暗号に察しお攻撃を実行したこずに満足するこずもできたす。 しかし実際には、さらに倚くのこずができたす。実際にすべおのテキストを埩元できたす。 これには、アリスの元のスクリプトにはなかったトリックが必芁であり、オラクル攻撃には必芁ありたせんが、それでも孊ぶ䟡倀はありたす。

それを理解するには、たず、最埌のバむトの正しい倀を出力した結果が次のようになるこずに泚目しおください。 暗号攻撃: 混乱した心の説明 私たちは新しい胜力を持っおいたす。 これで、暗号文を停造するずきに、察応する平文の最埌のバむトを操䜜できるようになりたす。 繰り返したすが、これは CBC 方皋匏ずバむト単䜍のプロパティに関連しおいたす。

暗号攻撃: 混乱した心の説明

第 XNUMX 項がわかったので、第 XNUMX 項を制埡しお第 XNUMX 項を制埡できたす。 単玔に次のように蚈算したす。

暗号攻撃: 混乱した心の説明

ただ最埌のバむトがなかったため、以前はこれを行うこずができたせんでした 暗号攻撃: 混乱した心の説明.

これはどのように圹立぀でしょうか? ここで、察応する平文の最埌のバむトが次ず等しくなるようにすべおの暗号文を䜜成するずしたす。 02。 サヌバヌは、プレヌンテキストが次で終わる堎合にのみパディングを受け入れるようになりたした。 02 02。 最埌のバむトを修正したため、これは平文の最埌から 02 番目のバむトも XNUMX の堎合にのみ発生したす。サヌバヌがそのうちの XNUMX ぀のパディングを受け入れるたで、最埌から XNUMX 番目のバむトを倉曎しお停の暗号文ブロックを送信し続けたす。 この時点で、次の結果が埗られたす。

暗号攻撃: 混乱した心の説明

そしお最埌から XNUMX 番目のバむトを埩元したす 暗号攻撃: 混乱した心の説明 前回が埩元されたのず同じように。 同じ粟神で続けたす。平文の最埌の XNUMX バむトを次のように修正したす。 03 03、この攻撃を末尟から XNUMX バむト目などに察しお繰り返し、最終的には完党に埩元したす。 暗号攻撃: 混乱した心の説明.

残りのテキストに぀いおはどうでしょうか 倀に泚意しおください 暗号攻撃: 混乱した心の説明 実際には $inline$text{BLOCK_DECRYPT}(text{key},C_{247})$inline$ です。 代わりに他のブロックを眮くこずもできたす 暗号攻撃: 混乱した心の説明、それでも攻撃は成功したす。 実際、サヌバヌに任意のデヌタに察しお $inline$text{BLOCK_DECRYPT}$inline$ を実行するように䟝頌できたす。 この時点でゲヌムは終了です。あらゆる暗号文を埩号化できたす (これを確認するには、CBC 埩号化図をもう䞀床芋おください。IV は公開されおいるこずに泚意しおください)。

この特定のメ゜ッドは、埌で遭遇するオラクル攻撃においお重芁な圹割を果たしたす。

ケルシヌの攻撃

私たちの気の合うゞョン・ケルシヌは、特定の暗号に察する特定の攻撃の詳现だけでなく、考えられる倚くの攻撃の基瀎ずなる原則を説明したした。 圌の 2002の幎間最優秀論文 ã¯ã€æš—号化された圧瞮デヌタに察する攻撃の可胜性に぀いおの研究です。 デヌタが暗号化される前に圧瞮されおいたずいう情報は、攻撃を実行するのに十分ではないず考えたしたか? それで十分であるこずがわかりたした。

この驚くべき結果は XNUMX ぀の原則によるものです。 たず、平文の長さず暗号文の長さの間には匷い盞関関係がありたす。 倚くの暗号では完党に等䟡です。 第 XNUMX に、圧瞮が実行される堎合、圧瞮されたメッセヌゞの長さず平文の「ノむズ性」の皋床、぀たり反埩しない文字 (専門甚語では「高゚ントロピヌ」) の割合ずの間にも匷い盞関関係がありたす。 。

実際の原理を確認するには、次の XNUMX ぀の平文を考えおみたしょう。

平文 1: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

平文 2: ATVXCAGTRSVPTVVULSJQHGEYCMQPCRQBGCYIXCFJGJ

䞡方の平文が圧瞮されおから暗号化されおいるず仮定したす。 結果ずしお XNUMX ぀の暗号文が埗られ、どの暗号文がどの平文に䞀臎するかを掚枬する必芁がありたす。

暗号文 1: PVOVEYBPJDPVANEAWVGCIUWAABCIYIKOOURMYDTA

暗号文 2: DWKJZXYU

答えは明らかです。 平文のうち、わずかな長さの第 1 暗号文に圧瞮できたのは平文 XNUMX だけでした。 私たちは、圧瞮アルゎリズム、暗号化キヌ、さらには暗号自䜓に぀いお䜕も知らずにこれを考え出したした。 考えられる暗号攻撃の階局ず比范するず、これはちょっずクレむゞヌです。

Kelsey 氏はさらに、特定の異垞な状況䞋では、この原理がオラクル攻撃の実行にも䜿甚される可胜性があるず指摘しおいたす。 特に、サヌバヌにフォヌム デヌタ (平文の埌に暗号化が続く) を匷制的に暗号化できる堎合、攻撃者が秘密の平文をどのように回埩できるかに぀いお説明したす。 暗号攻撃: 混乱した心の説明圌がコントロヌルしおいる間 暗号攻撃: 混乱した心の説明 暗号化された結果の長さを䜕らかの方法で確認できたす。

繰り返したすが、他のオラクル攻撃ず同様に、次の関係がありたす。

暗号攻撃: 混乱した心の説明

繰り返したすが、XNUMX ぀の項を制埡したす (暗号攻撃: 混乱した心の説明)、別のメンバヌに関する情報 (暗号文) の小芏暡な挏掩が確認され、最埌の情報 (平文) を埩元しようずしたす。 たずえではありたすが、これは、これたでに芋おきた他のオラクル攻撃ず比范するず、やや特殊な状況です。

このような攻撃がどのように機胜するかを説明するために、先ほど思い぀いた架空の圧瞮スキヌム TOYZIP を䜿甚しおみたしょう。 テキスト内で以前に出珟したテキスト行を怜玢し、その行の以前のむンスタンスの堎所ずそこに䜕回出珟したかを瀺す XNUMX ぀のプレヌスホルダヌ バむトに眮き換えたす。 たずえば、次の行 helloworldhello に圧瞮できたす helloworld[00][00][05] 元の 13 バむトず比范しお 15 バむトの長さになりたす。

攻撃者がフォヌムの平文を回埩しようずするず仮定したす。 password=...、パスワヌド自䜓が䞍明な堎合。 Kelsey の攻撃モデルによれば、攻撃者はサヌバヌにフォヌム メッセヌゞを圧瞮しおから暗号化するよう芁求する可胜性がありたす (平文の埌に平文が続きたす)。 暗号攻撃: 混乱した心の説明、ここで 暗号攻撃: 混乱した心の説明 - フリヌテキスト。 サヌバヌは䜜業を終了するず、結果の長さを報告したす。 攻撃は次のようになりたす。

泥棒 パディングなしで平文を圧瞮しお暗号化しおください。

サヌバ 結果の長さは 14 です。

泥棒 付加される平文を圧瞮しお暗号化しおください password=a.

サヌバ 結果の長さは 18 です。

クラッカヌのメモ: [元の 14] + [眮き換えられた XNUMX バむト] password=] + a

泥棒 远加した平文を圧瞮しお暗号化しおください password=b.

サヌバ 結果の長さは 18 です。

泥棒 远加した平文を圧瞮しお暗号化しおください password=с.

サヌバ 結果の長さは 17 です。

クラッカヌのメモ: [元の 14] + [眮き換えられた XNUMX バむト] password=c]。 これは、元の平文に次の文字列が含たれおいるこずを前提ずしおいたす。 password=c。 ぀たり、パスワヌドは文字で始たりたす c

泥棒 远加した平文を圧瞮しお暗号化しおください password=сa.

サヌバ 結果の長さは 18 です。

クラッカヌのメモ: [元の 14] + [眮き換えられた XNUMX バむト] password=с] + a

泥棒 远加した平文を圧瞮しお暗号化しおください password=сb.

サヌバ 結果の長さは 18 です。

  今床い぀か 

泥棒 远加した平文を圧瞮しお暗号化しおください password=сП.

サヌバ 結果の長さは 17 です。

クラッカヌのメモ: [元の 14] + [眮き換えられた XNUMX バむト] password=co]。 攻撃者は同じロゞックを䜿甚しお、パスワヌドが文字で始たるず結論付けたす。 co

パスワヌド党䜓が埩元されるたで続きたす。

読者が、これは玔粋に孊術的な挔習であり、そのような攻撃シナリオは珟実䞖界では決しお起こらないず考えるのも無理はありたせん。 残念ながら、すぐにわかりたすが、暗号化を諊めないほうがよいでしょう。

ブランドの脆匱​​性: CRIME、POODLE、DROWN

最埌に、理論を詳现に怜蚎した埌、これらの技術が実際の暗号攻撃にどのように適甚されるかを確認できたす。

犯眪

暗号攻撃: 混乱した心の説明攻撃が被害者のブラりザずネットワヌクに向けられおいる堎合、より簡単なものもあれば、より困難なものもありたす。 たずえば、被害者のトラフィックを確認するのは簡単です。Wi-Fi を備えた同じカフェで被害者ず䞀緒に座るだけで枈みたす。 このため、朜圚的な被害者 (぀たり党員) は通垞、暗号化された接続を䜿甚するこずをお勧めしたす。 被害者に代わっおサヌドパヌティのサむト (Google など) に HTTP リク゚ストを送信するこずはより困難になりたすが、それでも可胜です。 攻撃者は、リク゚ストを行うスクリプトを䜿甚しお、被害者を悪意のある Web ペヌゞに誘導する必芁がありたす。 Web ブラりザは、適切なセッション Cookie を自動的に提䟛したす。

これはすごいですね。 ボブが行ったら evil.com、このサむトのスクリプトは、Google にボブのパスワヌドを電子メヌルで送信するように芁求するだけでしょうか。 [email protected]? たあ、理論的にはそうですが、実際には違いたす。 このシナリオはクロスサむト リク゚スト フォヌゞェリ攻撃ず呌ばれたす (クロスサむトリク゚ストフォヌゞェリ、CSRF、90幎代半ば頃に流行したした。 今日なら evil.com このトリックを詊みるず、Google (たたは他の自尊心のある Web サむト) は通垞、次のように応答したす。 трО трОллОПМа О сеЌь。 この番号を繰り返しおください。」 最近のブラりザには「同䞀オリゞン ポリシヌ」ず呌ばれるものがあり、サむト A のスクリプトは Web サむト B から送信された情報にアクセスできたせん。 evil.com にリク゚ストを送信できたす google.com、ただし、応答を読み取るこずも、実際にトランザクションを完了するこずもできたせん。

ボブが暗号化された接続を䜿甚しおいない限り、これらの保護はすべお無意味であるこずを匷調しなければなりたせん。 攻撃者は、Bob のトラフィックを読み取るだけで、Google のセッション Cookie を回埩できたす。 この Cookie を䜿甚するず、圌は自分のブラりザを離れるこずなく新しい Google タブを開くだけで、厄介な同䞀生成元ポリシヌに遭遇するこずなく Bob になりすたすこずができたす。 しかし、泥棒にずっお残念なこずに、これはたすたす䞀般的ではなくなり぀぀ありたす。 むンタヌネット党䜓は長い間、暗号化されおいない接続に察しお宣戊垃告しおおり、ボブの送信トラフィックは、圌が奜むず奜たざるにかかわらず、おそらく暗号化されおいたす。 さらに、プロトコルの実装圓初から、トラフィックも 瞮んだ 暗号化の前。 これは埅ち時間を短瞮するための䞀般的な方法でした。

ここで掻躍したす 犯眪 (Compression Ratio Infoleak Made Easy、圧瞮比によるシンプルなリヌク)。 この脆匱性は、セキュリティ研究者の Juliano Rizzo 氏ず Thai Duong 氏によっお 2012 幎 XNUMX 月に明らかにされたした。 私たちはすでに理論的基瀎党䜓を怜蚎しおおり、それによっお圌らが䜕をどのように行ったかを理解するこずができたす。 攻撃者は、Bob のブラりザにリク゚ストを Google に送信させ、ロヌカル ネットワヌク䞊で圧瞮暗号化された圢匏でレスポンスをリッスンする可胜性がありたす。 したがっお、次のようになりたす。

暗号攻撃: 混乱した心の説明

ここで、攻撃者はリク゚ストを制埡し、パケット サむズを含むトラフィック スニファヌにアクセスできたす。 ケルシヌの架空のシナリオが珟実になりたした。

この理論を理解した CRIME の䜜成者は、Gmail、Twitter、Dropbox、Github などの幅広いサむトのセッション Cookie を盗むこずができる゚クスプロむトを䜜成したした。 この脆匱性はほずんどの最新の Web ブラりザに圱響を及がし、その結果、圧瞮機胜がたったく䜿甚されないよう SSL にサむレントに埋め蟌むパッチがリリヌスされたした。 この脆匱性から保護されおいたのは由緒ある Internet Explorer だけであり、SSL 圧瞮はたったく䜿甚されおいたせんでした。

プヌドル

暗号攻撃: 混乱した心の説明2014 幎 XNUMX 月、Google セキュリティ チヌムはセキュリティ コミュニティに波王を巻き起こしたした。 圌らは、XNUMX 幎以䞊前にパッチが適甚されおいた SSL プロトコルの脆匱性を悪甚するこずができたした。

サヌバヌは最新の TLSv1.2 を実行しおいたすが、倚くのサヌバヌは Internet Explorer 3 ずの䞋䜍互換性のために埓来の SSLv6 のサポヌトを残しおいるこずが刀明したした。ダりングレヌド攻撃に぀いおはすでに説明したので、䜕が起こっおいるかは想像できるでしょう。 巧劙に蚈画されたハンドシェむク プロトコルの劚害行為により、サヌバヌは叀き良き SSLv3 に戻る準備が敎い、過去 15 幎間のセキュリティ研究が実質的に台無しになっおしたいたす。

歎史的背景ずしおは、 Matthew Green による、バヌゞョン 2 たでの SSL の歎史の簡単な抂芁です。:

Transport Layer Security (TLS) は、むンタヌネット䞊で最も重芁なセキュリティ プロトコルです。 [..] むンタヌネット䞊で行われるほがすべおのトランザクションは TLS に䟝存しおいたす。 [..] しかし、TLS は垞に TLS だったわけではありたせん。 このプロトコルが誕生したのは、 ネットスケヌプ通信 「Secure Sockets Layer」たたは SSL ず呌ばれたす。 噂によれば、SSL の最初のバヌゞョンはあたりにもひどいものであったため、開発者はコヌドの印刷物をすべお集めおニュヌメキシコ州の秘密の埋め立お地に埋めたずいうこずです。 結果ずしお、最初に公開された SSL バヌゞョンは実際には バヌゞョンSSL 2。 これはかなり恐ろしいもので、[..] それは 90 幎代半ばの産物であり、珟代の暗号孊者はこれを「暗号の暗黒時代」 今日私たちが知っおいる最も凶悪な暗号攻撃の倚くはただ発芋されおいたせん。 その結果、SSLv2 プロトコルの開発者は基本的に暗闇の䞭で手探りで進めるこずになり、次のような問題に盎面したした。 恐ろしいモンスタヌがたくさん - SSLv2 ぞの攻撃は、次䞖代のプロトコルに貎重な教蚓を残したので、圌らは残念に思いたすが、私たちは利益を埗たした。

これらの出来事を受けお、1996 幎に䞍満を抱いた Netscape は SSL プロトコルをれロから再蚭蚈したした。 結果は SSL バヌゞョン 3 でした。 前バヌゞョンのいく぀かの既知のセキュリティ問題を修正したした.

匷盗にずっお幞運なこずに、「少数」は「党員」を意味するわけではありたせん。 党䜓ずしお、SSLv3 は Vodene 攻撃を開始するために必芁なすべおの構成芁玠を提䟛したした。 このプロトコルでは、CBC モヌドのブロック暗号ず安党でないパディング スキヌムが䜿甚されおいたした (これは TLS で修正されたため、ダりングレヌド攻撃が必芁でした)。 Vaudenay 攻撃に関する最初の説明のパディング スキヌムを芚えおいるず、SSLv3 スキヌムは非垞によく䌌おいたす。

しかし、泥棒にずっお残念なこずに、「類䌌」は「同䞀」を意味するものではありたせん。 SSLv3 パディング スキヌムは、「N 個のランダムなバむトの埌に数字 N が続く」です。 これらの条件䞋で、仮想の暗号文ブロックを遞択し、Vaudene の元のスキヌムのすべおのステップを実行しおみおください。攻撃により、察応する平文ブロックから最埌のバむトが正垞に抜出されたこずがわかりたすが、それ以䞊は続行されたせん。 暗号文の 16 バむトごずに解読するのは玠晎らしいトリックですが、それは勝利ではありたせん。

倱敗に盎面した Google チヌムは最埌の手段に蚎えたした。より匷力な脅嚁モデル、぀たり CRIME で䜿甚されおいるものに切り替えたした。 攻撃者が被害者のブラりザ タブで実行されおいるスクリプトであり、セッション Cookie を抜出できるず仮定するず、攻撃は䟝然ずしお印象的です。 より広範な脅嚁モデルはあたり珟実的ではありたせんが、この特定のモデルは実珟可胜であるこずを前のセクションで芋たした。

これらのより匷力な攻撃者の胜力を考慮するず、攻撃は継続できるようになりたす。 攻撃者は暗号化されたセッション Cookie がヘッダヌ内のどこに珟れるかを知っおおり、それに先行する HTTP リク゚ストの長さを制埡しおいるこずに泚意しおください。 したがっお、Cookie の最埌のバむトがブロックの終わりに揃えられるように HTTP リク゚ストを操䜜できたす。 これで、このバむトは埩号化に適したものになりたす。 リク゚ストに XNUMX 文字を远加するだけで、Cookie の最埌から XNUMX 番目のバむトが同じ堎所に残り、同じ方法を䜿甚した遞択に適しおいたす。 攻撃は、Cookie ファむルが完党に埩元されるたでこの方法で継続されたす。 これは「POODLE: Padding Oracle on Downgraded Legacy Encryption」ず呌ばれおいたす。

溺れる

暗号攻撃: 混乱した心の説明前述したように、SSLv3 には欠陥がありたしたが、挏掩の倚い SSLv2 は異なる時代の補品であったため、以前の SSLvXNUMX ずは根本的に異なりたした。 そこでメッセヌゞを途䞭で䞭断するこずができたす。 сПглашусь Ма этП тПлькП через ЌПй труп になっお сПглашусь Ма этП; クラむアントずサヌバヌはオンラむンで䌚い、信頌を確立し、攻撃者の目の前で秘密を亀換するこずができ、攻撃者は簡単に䞡方になりすたすこずができたす。 FREAK を怜蚎する際に蚀及した茞出暗号化にも問題がありたす。 それは暗号化された゜ドムずゎモラでした。

2016 幎 2 月、さたざたな技術分野の研究者チヌムが集たり、SSLv2 が今でもセキュリティ システムで䜿甚されおいるずいう驚くべき発芋をしたした。 はい、FREAK ず POODLE の埌にそのホヌルが塞がれたため、攻撃者は最新の TLS セッションを SSLv2 にダりングレヌドできなくなりたしたが、サヌバヌに接続しお SSLvXNUMX セッション自䜓を開始するこずはできたす。

なぜ圌らがそこで䜕をしおいるのかを気にする必芁があるのか​​ず疑問に思うかもしれたせん。 脆匱なセッションがありたすが、他のセッションやサヌバヌのセキュリティに圱響を䞎えるべきではありたせん。 たあ、完党ではありたせん。 はい、理論的にはそうなるはずです。 しかし、そうではありたせん。SSL 蚌明曞の生成には䞀定の負担がかかり、その結果、倚くのサヌバヌが同じ蚌明曞を䜿甚し、その結果、TLS 接続ず SSLv2 接続に同じ RSA キヌが䜿甚されるこずになりたす。 さらに悪いこずに、OpenSSL のバグにより、この䞀般的な SSL 実装の「SSLv2 を無効にする」オプションは実際には機胜したせんでした。

これにより、TLS に察するクロスプロトコル攻撃が可胜になりたした。 溺れる (廃止され匱化された暗号化を䜿甚した RSA の埩号化、廃止され匱化された暗号化による RSA の埩号化)。 これは短い攻撃ず同じではないこずに泚意しおください。 攻撃者は「䞭間者」ずしお行動する必芁がなく、クラむアントを安党でないセッションに参加させる必芁もありたせん。 攻撃者は、サヌバヌ自䜓ずの安党でない SSLv2 セッションを開始し、脆匱なプロトコルを攻撃しお、サヌバヌの RSA 秘密キヌを回埩するだけです。 このキヌは TLS 接続にも有効であり、この時点からは、どんなに TLS セキュリティを匷化しおもセキュリティ䟵害を防ぐこずはできたせん。

しかし、これを解読するには、SSLv2 に察する有効な攻撃が必芁です。これにより、特定のトラフィックだけでなく、RSA サヌバヌの秘密キヌも回埩できたす。 これは耇雑な蚭定ですが、研究者は SSLv2 以降に完党に解決された脆匱性を遞択できたす。 圌らは最終的に、適切な遞択肢であるブラむヘンバッハヌ攻撃を芋぀けたした。これに぀いおは、前述したしたが、次の蚘事で詳しく説明したす。 SSL ず TLS はこの攻撃から保護されおいたすが、SSL のいく぀かのランダムな機胜ず茞出グレヌドの暗号化の短いキヌが組み合わされお、攻撃が可胜になりたした。 DROWN の具䜓的な実装.

公開時点では、むンタヌネットのトップ サむトの 25% が DROWN 脆匱性の圱響を受けおおり、この攻撃は、いたずら奜きの単独ハッカヌでも利甚できるわずかなリ゜ヌスで実行される可胜性がありたす。 サヌバヌの RSA キヌを取埗するには 440 時間の蚈算ず 2 ドルが必芁ずなり、SSLvXNUMX は廃止され、廃止されたした。

埅っお、ハヌトブリヌドはどうですか

これは、䞊で説明した意味での暗号攻撃ではありたせん。 これはバッファオヌバヌフロヌです。

䌑憩したしょう

私たちは、ブルヌト フォヌス、補間、ダりングレヌド、クロスプロトコル、事前蚈算ずいったいく぀かの基本的なテクニックから始めたした。 次に、おそらく珟代の暗号化攻撃の䞻芁な芁玠である、高床な手法の XNUMX ぀であるオラクル攻撃に泚目したした。 私たちはそれを理解するのにかなりの時間を費やし、基瀎ずなる原理だけでなく、CBC 暗号化モヌドに察するノォヌデネ攻撃ず、圧瞮前暗号化プロトコルに察するケルシヌ攻撃ずいう XNUMX ぀の特定の実装の技術的な詳现も理解したした。

ダりングレヌド攻撃ず事前蚈算攻撃のレビュヌでは、タヌゲット サむトを匱いキヌにダりングレヌドし、同じキヌを再利甚するこずで䞡方の方法を䜿甚する FREAK 攻撃に぀いお簡単に説明したした。 次の蚘事では、公開キヌ アルゎリズムを暙的ずした (非垞によく䌌た) Logjam 攻撃を保存したす。

次に、これらの原則を適甚したさらに XNUMX ぀の䟋を怜蚎したした。 たず、CRIME ず POODLE: XNUMX ぀の攻撃は、タヌゲットの平文の隣に任意の平文を挿入し、サヌバヌの応答を調べお、 次にオラクル攻撃手法を䜿甚しお、このたばらな情報を悪甚しお、平文を郚分的に回埩したす。 CRIME は SSL 圧瞮に察する Kelsey の攻撃のルヌトをたどりたしたが、POODLE は代わりに、Vaudenay の CBC に察する攻撃の倉皮を䜿甚しお同じ効果をもたらしたした。

次に、クロスプロトコル DROWN 攻撃に泚目したした。この攻撃は、埓来の SSLv2 プロトコルを䜿甚しおサヌバヌぞの接続を確立し、Bleichenbacher 攻撃を䜿甚しおサヌバヌの秘密キヌを回埩したす。 今のずころ、この攻撃の技術的な詳现に぀いおは省略しおいたす。 Logjam ず同様に、公開鍵暗号システムずその脆匱性に぀いお十分に理解するたで埅぀必芁がありたす。

次回の蚘事では、䞭間者攻撃、差分暗号解析、誕生日攻撃などの高床な攻撃に぀いお説明したす。 サむドチャネル攻撃に぀いお簡単に説明しおから、楜しい郚分である公開鍵暗号システムに移りたしょう。

出所 habr.com

コメントを远加したす