ドイツのハッカーはレンタルしたコンピュータリソースを使ってハッシュアルゴリズムを攻撃する

ドイツのハッカーはレンタルしたコンピュータリソースを使ってハッシュアルゴリズムを攻撃する

ドイツのセキュリティ愛好家が、レンタルしたコンピュータ リソースを使用して、SHA1 ハッシュ アルゴリズムを使用して生成された一方向ハッシュを解読しました。そして、この従量課金制のコンピュータ リソースでは、SHA1 ハッシュを解読するのにわずか 2 ドルしかかかりません。

Thomas Roth は有料の GPU ベースのコンピュータ リソースを使用して SHA1 ハッシュをブルート フォース攻撃しました。暗号の専門家は、SHA-1 は少なくとも 5 年以内には安全なハッシュ アルゴリズムとはみなされなくなると警告しています。Roth の実験の重要性は、彼がどのような目的を達成したか、どのような攻撃方法を使用したか (実際には単なるブルート フォース クラッキング) ではなく、高度な技術を使用したことです。

かつては数か月の作業と、世界中から集まった多くの人手とリソースを必要としていたこのようなプロジェクトが、今ではレンタルしたコンピュータ リソースを使用して 1 人で数分で、わずか 2 ドルで完了できるようになりました。彼はそのわずかな資金で、非常に強力なグラフィック プロセッサを多数レンタルし、Cuda-Multiforcer を使用してコードを解読しました。

詳細な説明は次のとおりです。

現在、Amazon EC2 は「クラスター GPU インスタンス」と呼ばれるものを提供しています。これは、2 つの NVIDIA Tesla「Fermi」M2050 GPU のパワーを提供する Amazon クラウドのインスタンスです。正確な仕様は次のとおりです。

22 GBのメモリ
33.5 EC2 コンピューティング ユニット (2 x Intel Xeon X5570、クアッドコア「Nehalem」アーキテクチャ)
NVIDIA Tesla “Fermi” M2050 GPU 2 基
1690 GB のインスタンスストレージ
64 ビット プラットフォーム
I/O パフォーマンス: 非常に高い (10 ギガビット イーサネット)
API 名: cg1.4xlarge

GPU はパスワードを解読するための最良のハードウェア アクセラレータとして知られているため、試してみることにしました。このインスタンス タイプを使用して SHA1 ハッシュを解読する速度はどのくらいでしょうか?

CUDA-Multiforce を使用すると、パスワードの長さが 1 ~ 6 のこのファイルからすべてのハッシュをわずか 49 分で解読できました (ちなみに、1 時間のコストは 2.10 ドルです)。

  1. 計算完了: 参照時間 2950.1 秒
  2. ステップ速度: 249.2M MD4/s
  3. 検索速度: 3488.4M NTLM/秒

これは、パスワード ハッシュ用の SHA1 が非推奨であることをもう一度示すだけです。もう使用しないでください。代わりに、scrypt や PBKDF2 などを使用してください。これらのマシンのクラスター全体が (Amazon のおかげで、今では誰でも簡単に実行できます) パスワードを解読することを想像してみてください。かなり快適です。大規模なパスワード クラッキングが誰にとっても可能になります。

時間ができたら、AWS-API を使用して、事前設定された AMI でオンデマンドのパスワードクラッキングインスタンスを起動するツールを作成します。RSS または Twitter で最新情報をお待ちください。

インストール手順:

私は Amazon から提供された「Cluster Instances HVM CentOS 5.5 (AMI Id: ami-aa30c7c3)」マシン イメージを使用しました (CUDA サポートが組み込まれている唯一のイメージだったのでこのイメージを選択しました)。インスタンス タイプとして「Cluster GPU (cg1.4xlarge, 22GB)」を選択しました。インスタンスを起動して SSH で接続したら、クラッカーをインストールして続行できます。

私は、ソースが入手可能な最新バージョンである「CUDA-Multiforcer」のバージョン 0.7 をインストールすることにしました。これをコンパイルするには、まず「GPU Computing SDK コード サンプル」をダウンロードする必要があります。

  1. # 取得
  2. http://developer.download.nvidia.com/compute/cuda/3_2/
  3. sdk/gpucomputingsdk_3.2.12_linux.run
  4. # chmod +x gpucomputingsdk_3.2.12_linux.run
  5. # ./gpucomputingsdk_3.2.12_linux.run
  6. (インストール ディレクトリと CUDA ディレクトリを尋ねられたら、Enter キーを押すだけです。)

#p#

次に、g++ コンパイラをインストールする必要があります。

  1. # yum インストール automake autoconf gcc-c++

次のステップは、SDK サンプルのライブラリをコンパイルすることです。

  1. # cd ~/NVIDIA_GPU_Computing_SDK/C/
  2. # lib/libcutil.so を作成する
  3. # shared/libshrutil.so を作成する

次に、CUDA-Multiforcer をダウンロードしてコンパイルします。

  1. # cd ~/NVIDIA_GPU_Computing_SDK/C/
  2. # wget http://www.cryptohaze.com/releases/CUDA-Multiforcer-src-0.7.ta​​r.bz2 -O src/CUDA-Multiforcer.tar.bz2
  3. # src/ に移動します
  4. # tar xjf CUDA-Multiforcer.tar.bz2
  5. # cd CUDA-Multiforcer-Release/argtable2-9/
  6. # ./configure && make && make install
  7. # CD ../

CUDA-MultiforcerのMakefileはそのままでは動作しないので、それを開いて次の行を見つける必要があります。

  1. CCFILES : = -largtable2 -lcuda

CCFILES を LINKFLAGS に置き換えて、行を次のようにします。

  1. リンクフラグ: = -largtable2 -lcuda

そして、make と入力します。すべてがうまくいけば、今すぐに ~/NVIDIA_GPU_Computing_SDK/C/bin/linux/release/CUDA-Multiforcer ファイルが作成されているはずです。次のようにして、Multiforcer を試すことができます。

  1. # エクスポートLD_LIBRARY_PATH =/usr/local/lib:$LD_LIBRARY_PATH
  2. # LD_LIBRARY_PATHをエクスポート=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
  3. # cd ~/NVIDIA_GPU_Computing_SDK/C/src/CUDA-Multiforcer-Release/
  4. # ../../bin/linux/release/CUDA-Multiforcer -h SHA1 -f test_hashes/Hashes-SHA1-Full.txt --min = 1   --max = 6 -c 文字セット/文字セット大文字小文字数字記号 95.chr

おめでとうございます。これで、Amazon EC2 インスタンス上で実行される、完全に機能する CUDA ベースのハッシュクラッカーが完成しました。

【編集者のおすすめ】

  1. 暗号の頂点:100年間解読不可能なコード
  2. 「キノコ」ウイルスを解読するのは簡単です!
  3. Svchost.exe プロセスの謎を解く
  4. IIS 6.0 のデフォルト設定のセキュリティを破る究極の秘密

<<:  Java ガベージ コレクション アルゴリズムの紹介

>>:  ハッシュアルゴリズムに基づくMySQLテーブルパーティション

ブログ    
ブログ    

推薦する

AI を活用することで、銀行は年間 1 兆ドルの追加収益を得ることができる | マッキンゼーの最新調査レポート

AI を活用して財務管理や投資を行いたいと考えていますか? [[351941]]好むと好まざるとにか...

...

リスト発表:海雲捷雲の田良氏が「2021年科学技術影響力のある人物賞」を受賞

著名なIT技術メディア51CTOが主催する第16回中国企業年次選考活動「IT印象:イノベーションの活...

人工知能は「絶滅危惧」言語の保護に大きな役割を果たすかもしれません!

国連の統計によると、私たちが住む地球上には西暦8世紀以降、2万以上の人間の言語が出現しましたが、今日...

2024年のデータセンターのトレンド: より高温、より高密度、よりスマート

今日のデータセンター業界は、AI テクノロジーの急速な普及、ムーアの法則の減速、そして厄介な持続可能...

...

ビジネスプロセス管理を使用してマイクロサービス、人、ロボットを調整する方法

DevOps チームがプロセスの自動化を計画している場合は、ビジネス プロセス管理 (BPM) エン...

ChatGPT が 1 周年を迎えました: 革新、論争、AI のブレークスルーの 1 年

テクノロジーの世界を永遠に変えたかもしれない GenAI チャットボットである OpenAI の C...

AI/MLを使用してテクノロジースタックを最適化し、ビジネス効率を向上させる方法

業界メディアとのインタビューで、レノボ グループのサービスおよびソリューション グループのシニア バ...

オンライン学習の次の波: 現代の学習システムにおける人工知能

[[375015]]世界的な流行により、ほぼすべての大学が授業をオンライン学習プラットフォームに移行...

データサイエンスの分野で働くにはどのようなスキルが必要ですか?

本記事では、海外KDnuggetsフォーラムにおけるSimplilearnの統計結果と、国内有名求人...

GPT-4はあなたよりも質問をするのが得意です。大きなモデルを繰り返し使用して、人間との対話の障壁を打ち破りましょう。

人工知能の分野における最新の開発では、人工的に生成されたプロンプトの品質が、大規模言語モデル (LL...

Java スパニングツリー構造 ポイント間の最短経路アルゴリズム

まずは二分木についてお話しましょう。二分木は、各ポイントが 2 つのポイントに接続されているツリー構...