2019年5月18〜19日のtwitterセキュリティクラスタ

PKZIPのパスワードがわかる脆弱性?があるようです

Support for PKZIP Master Key added to #hashcat with an insane guessing rate of 22.7 ZettaHash/s on a single RTX 2080Ti. All passwords up to length 15 in less than 15 hours with only 4 GPUs! Excellent contribution from @s3inlc and @EU_ScienceHub bit.ly/2Q83mAM pic.twitter.com/iqVoszaqEi

ふぁー…暗号化ZIP、GPUを使えば秒間22.7ゼタ(227該=227兆の1億倍)ハッシュを計算できるので、15文字のパスワードでもGPU4つで15時間以下で解読できると。エラい時代になってしもた twitter.com/hashcat/status…

厳密にはPKZIPの暗号化方式の脆弱性を利用してるらしいので、それ以外の暗号化方式であればここまで脆弱ではないらしい。

PKZIPで古くから使われている暗号化方式(論文中でPKZIP Stream Cipher)は古くから既知の脆弱性があり、「いくつかの条件を満たせばすべてのデータを複合できる」状態でした。しかし、「複合は出来るがパスワードがわからない」状態であったのをなんとかするのがこれです。twitter.com/Archangel_HT/s…

つまりこの論文のContributionは「15文字以内のパスワードを使ったPKZIPを複合できる」ことではなく「PKZIPが複合できる状態である時、それに用いられた15文字以内のパスワードを取得できる」ことです。これはあまり知られていないことですが「複合できる」ことと「パスワードが分かる」には距離がある

確かZipCryptoは鍵長が96bit(12bytes)で、どれだけ長いパスワードを指定しても96bitのハッシュ値?になってしまう。つまり同じハッシュ値?になるなら別のパスワードでも暗号化が解除できる。

でも、本来のパスワードが分からなければ、同じパスワードを流用している別のzipに使えない?から、今回の手法で本来のパスワードを調べられるようになって便利って話ですかね?

無条件で適用できるような、既知平文攻撃よりも画期的な手法が生み出されたという話ではなさそうなので、解散?

@kosys_pr 僕の理解が正しければそうです。パスワードはPKZIP Stream CipherのInitial Stateを設定する(これがhash的です)ために使われていて、Known-PlaintextはこのInitial Sateまでは取得することが出来ていました。

@kosys_pr このあたりは先の論文でも引用されているBiham and Kocherらの手法が原点なのでそれを読むと良いと思います

PKZIPの15文字までのパスワードであれば、4つのGPUで15時間程でパスワードが判るという話。

ただ、計算力というよりはPKZIPの古い暗号方式の危殆化のようで、例えばAESなどで暗号化した場合はこんな速さでは計算出来ないようです。 https://t.co/0nJ2sguoZ7

15文字程度の暗号化ZIPがすべて復号できるという話ではなく、Pkzip Encription(PKZIP Stream Cipher)のknown-plaintext脆弱性により 割と現実的に復号できてしまう、という話かな。
元論文だと、脆弱性を突いてハッシュ計算量を劇的に減らしているからRTXでできる、みたいなことのようだ。

insticc.org/node/Technical… の話が元であれば、「PKZIP形式のデータアーカイブは、オプショナルでPKZIP Stream暗号かAESブロック暗号を使える。PKZIP Stream暗号に対しての新しい攻撃実装2つを公開する」という話なので、PKZIP Stream cipherを使わないように今後は進めていく必要がありそう。

zipコマンドだと PKZIP Stream cipherを使うっぽく、回避するためにはほかのアーカイバー使えという話っぽいのか。7zとか。
PKWare社の特許うんぬんとかいう話っぽい?。だから独自実装?のものが出てきているっぽい。
qiita.com/kusano_k/items…

確かPKZIPのコードにcrandが使われててFree-BSD系のcrandライブラリはクソザコ!wでpredictableだった気がするんだけどglibcだと多少マシなんだっけ

PKZIP Stream Cipher、確か乱数使って同じパスでも同じInitial Stateにならないようにしてたはず(まさしくHashのSaltに近い)だけどちゃんと覚えてねえ。Macで使われてるPKZIPのライブラリは弱い乱数使ってて脆弱みたいなので昔遊んだ記憶があるし乱数使ってるのは正しいはず……

暗号化ZIP終了みたいなツイート流れてくるけど、今回のはPKZIPのフォーマットであってAESじゃないし、既知平文攻撃っぽいので、条件がまあまあ揃いにくい。(やったことある人は分かると思うけど)
前提踏襲大好きで勉強しない情シスが社内ルールを見直すきっかけになる可能性はほぼゼロだと思う。 twitter.com/Clorets8lack/s…

暗号化ZIPのクラッキングって、まともにやろうとすると暗号文の長さに比例して計算速度が影響を受けるから、基本的には「暗号文の長さによらずにクラックする方法を探す」という考え方になると思う。
ぼくが実装した方法も「ある条件が揃っている事」が前提だった。

security.srad.jp/story/11/07/25…
srad.jp/comment/1991989
このころから何も変わってないのだな……

ISO/IEC 27001でPKZIP時代の暗号を使うと何らかのワークアラウンドが無いと認証を取れないとかしてくれたらみんな慌てて他の方式を使うのだろうけど、そうすると、また出処のわからない自己復号が増えそう。

話題になってる暗号化zip脆弱性。
PKWARE社仕様のPKZIPストリーム暗号方式に限った問題?のようだけど。

そもそものzip暗号化ファイルメール添付後に、別メールでパスワードを送るビジネス慣習自体が間違ってるのではとの話題に発展中。 https://t.co/ZiLAPNCQdK

HashCat「PKZIPの暗号化(パスワード15文字以内)ならGPU 4枚使って15時間以内に解けるようになった」の過去のツイートを遡って読んでいったら、「QNXの/etc/shadow 解く機能追加」とあって組み込み業界の人達読んでますか感。
https://t.co/j3pJJOhTio

その他に気になったことはこのあたり。

RDPの脆弱性が騒ぎになりすぎていて目立っていませんが、こちらのWindowsの権限昇格の脆弱性の攻撃コードが複数公開されてますね
github.com/PenTesting/CVE…

#insideFE メモ公開した “Inside Frontend 2019 アウトラインメモ | Web Scratch” efcl.info/2019/05/18/ins…

GitHubで問題を公開しました。ソースコードと Dockerfile も含まれています。 github.com/TeamHarekaze/H… #HarekazeCTF

現場で使える Django のセキュリティ対策 / Django security measures for business (DjangoCon JP 2019) – Speaker Deck speakerdeck.com/akiyoko/django… pic.twitter.com/tGFr4vOrCO

id.nii.ac.jp/1001/00195482/ 不正プログラム判断の混沌 -無限アラート事件とCoinhive無罪判決から考える- 楠 正憲 情報処理, Vol.60, No.6, pp.480-482 (2019-05-15)

EternalBlueの検知件数が2017年以降増え続け、現在ピークを迎えているという話。
またSMB v1を公開するWindowsマシンは約98万台あり、日本は米国に次ぐ第2位で約7万4千台だとのこと。

EternalBlue reaching new heights since WannaCryptor outbreak | WeLiveSecurity welivesecurity.com/2019/05/17/ete…

HarekazeCTF、[a-z().]だけ解きました。Web問は別メンバー主体で解いてくれたのでwriteup無し。
graneed.hatenablog.com/entry/2019/05/…

Bizコンパスでの連載記事が公開されました。

今知っておきたいITセキュリティスキルワンランクアップ講座(第11回)

なぜサイト全体をHTTPS化する必要があるのか?
bizcompass.jp/original/re-ma…

今日は恩師の定年祝いのため、非常に不本意ながら横浜に来てしまいました。
不用意にJavaScriptを書くと、指定暴力集団の神奈川県警に逮捕されてしまいますので、十分注意して行動します。

自宅セキュリティ研究所

自宅セキュリティ研究所 wrote 2714 posts

Tags

Post navigation


コメントを残す

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>