ラベル セキュリティ の投稿を表示しています。 すべての投稿を表示
ラベル セキュリティ の投稿を表示しています。 すべての投稿を表示

使えるGoogle Dorks5選

Google Dorks

Google Dorksとは何でしょう?これはGoogleの高度な検索演算子を指すスラングで、特定の情報を検索したり、特定のウェブサイトから情報を抽出したりするために使用されます。ハッカーやセキュリティリサーチャーは、これらの"Dorks"を使用して、ウェブサイトの脆弱性を見つけたり、公開されているはずのない情報を見つけたりします。

例えば、"site:"は特定のウェブサイトからの結果のみを表示するGoogleの演算子で、"inurl:"はURLに特定の文字列が含まれている結果のみを表示します。これらの演算子を組み合わせることで、特定の情報を効率的に検索することができます。これが"Google Dorks"の基本的な考え方です。

それでは、現代の情報セキュリティの世界では、ハッキングの簡単なターゲットを見つける方法は多種多様です。Google Dorksの検索は、そのようなターゲットを見つける最も一般的な方法の一つです。ここでは、ハッキングのためのトップ5のGoogle Dorksを見ていきます。

1.Site

最も有名なdorksの一つであり、特定のサイトを見つけるために使用されます。
例:site:www.att.com このdorkはAT&Tや任意のドメインのすべてのサイトを表示します。


【その他の例】
  • site:tacticaltech.org filetype:pdf
    「https://tacticaltech.org」を対象に、このドメインでホストされているすべてのインデックス済みPDFファイルを検索します。

  • site:tacticaltech.org intitle:invisible
    ドメイン「tacticaltech.org」内にあって、タイトルに「invisible」という単語が含まれるすべてのWebサイトが検索結果として返されます。

  • site:tacticaltech.org intext:exposing intitle:“the invisible”
    複数の単語で構成された検索語句を使う必要がある場合の例

  • exposing site:tacticaltech.org filetype:pdf
    「exposing」が通常の検索語句で、「site:」と「filetype:」で検索結果を絞り込んでいる例

2.Extension

サイトが持つさまざまな拡張子を表示できます。
例:site:www.att.com ext:php


3.Inurl

サイトのパラメータを検索する際に使用されます。
例:site:att.com ext:php inurl:?


4.Pastebin Leaks

ハッキングで最も重要なことの一つはコードを見つけることで、このようなdorksを使用すると、可能なターゲットについての重要な情報を見つけることができます。


5.Index of

通常、企業はインターネット上にファイルをアップロードしており、これらのファイルはペネトレーションテスト中に非常に重要になる可能性があります。このようなファイルを見つけるためには、Index of dorkを使用します。
例:site:att.com "index of"


これら5つのdorkは、ペネトレーションテストやターゲットの分析に非常に役立つ可能性があります。これらのdorksが皆さんのお役に立てれば幸いです。

SEC道後2025振り返り ~くたばれPPAP~

 

チケットの入手に成功したので、サイバーセキュリティシンポジウム道後2025に行ってきた。

なんだかんだで10回以上も参加している。武漢ウイルス(コロナ)の影響を受けて一時期開催時期が流動的になっていたが、前回から開催時期が3月に戻っている。

この時期は温泉が楽しめるし、みきゃんの食べ比べもできるので幸せ。


アジェンダ&メモ

■Day1

  • 基調講演:サイバーセキュリティ政策の現状と動向について(山内智生氏@総務省)

基調講演にもかかわらずスライドが表示されないというアクシデントが発生

R5年の通信利用動向調査によるとテレワークを利用したことがない人が7割超いることになっているが、会場参加者とは真逆の状況。これはいったい誰に聞いた調査なんだろう???

NICTERによると13秒に1回攻撃関連の通信(調査スキャン等)が発生

代表的なトラストサービス(「電子署名」、「タイムスタンプ」、「eシール」)に関して、タイムスタンプについては確定申告で相当使われているらしい。

自組織内で脆弱性管理(パッチ管理)をバカにしている人が多く困っているのだが、どうも自組織に限った話ではないことが分かった。

生成AIはお役人も惚れ惚れするレベルの文書が作れるらしい。ただし、平気でウソこくのでファクトチェックはかなり重要 

  • 講演① -1 :サイバー空間をめぐる脅威の情勢と取るべき対応(中川陽介氏@警察庁)
(特になし)
  • 講演① -2:サイバー空間の脅威の情勢とJC3の主な活動~産官学の連携の現場から~(櫻澤健一氏@日本サイバー犯罪対策センター)
JC3はNCFTA(National Cyber-Forensics & Training Alliance)と呼ばれる米国の
非営利法人(サイバー空間における脅威への対処を目的としたとしている)をモデルに設立されたことを知った。日本はアメリカに比べていろいろなものが10年くらい遅れているが、是非継続して取り組みを続けてほしいと思った。
  • 特別講演:サイバーインテリジェンスが事業継続にもたらすもの(軍司祐介氏@株式会社マキナレコード)

特別協賛(最上位スポンサー?)のマキナレコード社からのサイバーインテリジェンスに関するセッション

「マキナレコード」って最初聞いた時、音楽関係の会社が事業の多角化でサイバーセキュリティに手を出したのかと思っていた。どうも2016年に創業したサイバーインテリジェンスがメインの会社らしい。

  • パネルディスカッション:インシデント対応の現実と理想~ベストプラクティスを求めて~(佐藤公信氏@NICT、間下義暁氏@JAXA、小川久仁子氏@CPP、マキロイ七重氏@JPEC)  

JAXAといえば、昨年不正アクセスを受けた被害組織であり、インシデント対応をする側の組織と、報告を受ける側の個人情報保護委員会の小川氏、捜査機関の立場になるマキロイ氏のディスカッション。

話を聞いていて思ったのはインシデント発生時の報告・相談先が多すぎる。セキュリティベンダー、監督官庁、NISC、ケーサツ、IPA、JPCERT/CC、 個人情報保護委員会、、、、、インシデント対応しながら複数の関係各所に共有・報告は結構面倒なので、1か所に報告を上げてそこに関係各所がアクセスさせるようにする枠組みが必要と思った。

聞く側は無邪気にあれこれ聞いてくるが、分からないものは割り切って「分かりません」という必要がある。

インシデント発生時にケーサツにうっかり相談すると証拠物件を押収されてしまうという噂があるようだが、被害組織に対して意向を無視して証拠物件の押収を行うことはしないとのこと(個人的に警察への相談はどこまで効果があるのか懐疑的ではあるのだが・・・)。 

 個人情報保護委員会への報告については、報告の仕方含めて相談すれば優しく対応してくれるらしい。

■Day2

冒頭、JNSAの下村氏から挨拶があった。

先日のNSF2025を受けて、「セキュリティは投資ではなくてコスト」の旨を発言。

自分もNSF2025に参加していたので、もう少し補足すると「セキュリティは投資だ」って言うと投資家からはROIを求められる。しかしセキュリティ投資でROIなんて出せるわけないので、だったらセキュリティは事業継続のための必要経費でいいんじゃねってことで、「セキュリティは投資」ということはやめようということになっている。

この結論自体は自身も賛成。

んで、この日例えとして出てきたのが住宅用火災報知器。

任意だと3割くらいの普及率で推移していたが、義務化されて一気に普及率は8割へ。ところが罰則規定がないので100%にならない。

結局セキュリティも将来的には義務化の道を進むのだろうか?

という感じでDay2スタート。

  • 講演② :持続可能な成長に向けた暗号技術の研究開発(大久保美也子氏@NICT)

共通鍵暗号、公開鍵暗号、ハイブリッド暗号あたりまではついていけていたが、途中から完全に脱落。SEC道後2025で最も難解なセッションだった・・・

  • 講演③ :パソナグループにおけるDXの取組みとセキュリティ対策(西本逸郎氏@LAC、河野一氏@パソナ)

西本さんのセッションは個人的にSEC道後で一番楽しみなセッション。詳細は割愛するが、リスキリングでよく活用されるe-learningの実態を知ることができてとても参考になった。

ちなみにインシデント発生時に”①不確実でも早く上げる”のと、”②時間がかかっても正確な情報を上げる”のどちらを選択するのかは結構悩ましいところだが、これは①が正解。②をやると隠蔽の疑いがかけられる。

  • ランチセッション:多層防御で実現するメールセキュリティの新時代(加瀬正樹氏@TwoFive)

SEC道後では初!?となるランチセッション


DMARCについて空港の入国審査(入国許可、入国拒否、別室送り)に例える例がすごく参考になった。

ちなみに日本のDMARC普及率(恐らくRejectポリシー普及率)は発展途上国レベルとのこと。ASEANよりも低いのは認識していたが、こういう領域は日本は後進国であることを認識せねばと感じた。

  •  講演④:複雑で難しいサイバーセキュリティを単純明快にする~断片的な情報を図解することでつながる理解~(佳山こうせつ氏@TDU/Ridgelinez)

講演中にオンラインで質問を受け付けていたら鋭い質問が来てなかなか面白かった。(「キュン死」自体知らなかったのである意味勉強になった。)

 

結局セキュリティの構成要素は「人」「プロセス」「技術」に収斂することを学んだ。

その他

PPAP総研さんから「くたばれPPAP」ステッカーをもらった。

PPAPのデファクトスタンダードについて、やはり多いのはクラウドストレージになるのだが、画一的な方法に統一する方法はなく、今あるものを使って柔軟にやればよいらしい。そもそもまともにIT投資をしている会社間であればメールサーバ間の通信は暗号化されているのでPPAP不要でそのまま添付ファイルを送ればよいし、PPAPのために追加の投資をする必要もない。

一方でIT投資をしていない(というかメールセキュリティがクソな)会社に対してのみPPAPで送り付ければよいのではという感じの会話をしたのだが、なるほどと思いつつ、後で考えるとそれはそれで大変だとも思った。

ちなみにAWSの新しい正式名称を学んだ。それは、

Adventure World Shirahama


和歌山県で開催される白浜シンポジウムは近くにAWSがあるらしい。

こういう地方開催のシンポジウムは地域経済への貢献にもなるので、来年もチケットが取れればまた松山に来たい。

SHODAN活用ガイド


SHODANの検索エンジンをプロのように使いこなすための、SHODANの検索フィルターやSHODANのドークを含む、個人的なSHODANチートシートを共有しています。これを使えば、簡単に目的の検索結果を得ることができます。

GoogleやBing、Yahooなどのコンテンツ検索エンジンとは大きく異なります。GoogleやBing、Yahooのようなコンテンツ検索エンジンは、ウェブページのデータをクロールして検索用のインデックスを作成するのに対し、Shodanはポートを照会して結果のバナーを取得し、検索用のインデックスを作成します。

あなたがサイバーセキュリティの分野にいるならば、Shodan検索エンジンについてよく知られているはずです。Shodanは、インターネット上の特定の種類のコンピューター(ルーター、ウェブカメラ、サーバーなど)を、さまざまなフィルターを使って見つけることができるIoT検索エンジンです。Shodanは、ターゲットの受動的な偵察や、測定ツールとして最適なリソースです。

https://shodan.io/ を開いて、このSHODANチートシートのコマンドを打ち込むだけです。

SHODAN活用ガイド

Server:

特定のサーバーヘッダーフラグを持つデバイスやサーバーを探すことができます。脆弱なサーバーを調査することができます。

server: "apache 2.2.3"

または、直接フラグを入れても検索できます。

apache 2.2.3


hostname:

世界中の特定のホスト名を持つデバイスを検索します。ホスト名とは、ネットワークに接続されている機器に付けられたラベルのことで、WWWなどの各種通信で機器を見分けるために使用されます。SHODANチートシートに含まれる複数のフィルターを使用して、検索結果を絞り込むことができます。

server: "apache" hostname:"google"


net:

IPアドレスまたは/x CIDRに基づいて、デバイスやマシンを検索します。このフィルターは、IPレンジや特定のIPアドレスとサブネットマスクの検索にも使用できます。

net:34.98.0.0/16


os:

オペレーティングシステムに基づいてデバイスを検索します。特定のOSを搭載しているデバイスをすべて見つけることができます。これは、侵入テスト担当者が、特定のオペレーティングシステムのフィルタを持つ脆弱なマシンを見つけるのに役立ちます。

os:"windows xp"


port:

開いているポートに基づいてデバイスを検索します。"port "フィルターは、特定のオープンポートを持つマシンを検索対象にすることができます。

proftpd port:21


city:

特定の都市のデバイスを検索します。例えば、ムンバイの都市のみに絞って検索したい場合は、以下のようになります。

city:"Mumbai"


country:

特定の国のデバイスを検索します。例えば、インドだけに絞って検索したい場合

country:"IN"


geo:

一定の半径内にある特定の経度と緯度による地理的座標を与えてデバイスを見つける。

geo:"48.1667,-100.1667"


before/after:

「after」と「before」のフィルターを使うと、特定の日付の後や前にデバイスを表示することができます。

使用できるフォーマットはdd/mm/yyyyです。

nginx before:13/04/2020 after:13/04/2018


has_screenshot:

このフィルターは、スクリーンショットが利用可能な結果のみを返します。

has_screenshot:true city:"George Town"


Wifi Passwords:

Shodanでは、無線LANの平文のパスワードを見つけることができます。

html:"def_wirelesspassword"


Surveillance Cams:

ユーザー名:admin、パスワード:passwordで監視カメラのデータを取得する

NETSurveillance uc-httpd


また、以下のコマンドを使用することもできます。

Android Webcam Server


Citrix:

Citrix Gatewayの検索を行います。

title:"citrix gateway"


Windows RDP Password:

ただし、セカンダリウィンドウズ認証を含む場合があります。

"\x03\x00\x00\x0b\x06\xd0\x00\x00\x124\x00"


Misconfigured WordPress Sites:

wp-config.phpにアクセスすると、データベースの認証情報が表示されます。

http.html:"* The wp-config.php creation script uses this file"

ワードプレスのメイン設定ファイルにアクセスし、設定ミスのサイトの認証情報やAUTH_KEYなどの機密情報を取得することができます。


Mongo DB servers:

mongo DBサーバの情報を提供するフィルタです。

"MongoDB Server Information" port:27017 -authentication


FTP servers allowing anonymous access:

完全なアノニマス・アクセスのためのデータを取得します。

"220" "230 Login successful." port:21


Jenkins:

すべてのJenkinsのための検索 制限のないダッシュボード

x-jenkins 200


Telnet Access:

telnetアクセスにパスワードが必要な機器を検索します。

port:23 console gateway


Etherium Miners:

ETHを実行しているマイナーを表示しています。

"ETH - Total speed"


screenshot.label:

セキュリティ設定がザルなWebカメラのスクリーンショットを表示

screenshot.label:ics country:"JP"


ssl:

サーバの証明書情報に指定したドメインが含まれているサーバを列挙

ssl:expedia.com

自組織のドメイン名が世界的にも珍しく、他企業との重複がない場合は TLD部分を省略すると、海外ドメインなども一気に検索が可能です。

例えば私が根に持っているOTAのexpedia.comは、ssl:expedia とすることで一気に検索を行うこともできます。

また、複数ドメインやホスト名を一気に検索したい場合は、以下のようにカンマで繋いで検索をすることもできます。

ssl:expedia.com,hafh.com,united.com

org:

IPアドレスの所有者情報に含まれる組織名をもとにサーバを列挙。

org:expedia



org検索を行うための組織名が不明な場合や他企業との重複が多い場合は、Facet検索を行い絞り込みを行う。

以下URLにアクセスし、左側の検索ボックスにssl:自社ドメイン または hostname:自社ドメインを検索すると、そのサーバがどのIPアドレス所有者のもとで稼働しているかが一覧で表示されます。

https://www.shodan.io/search/facet?query=ssl%3Aexpedia.com&facet=org

一覧中に、自組織名があれば、その文字列をコピーして org:を付加して検索。

自組織が所有権を持つIPアドレスが付与された資産を列挙することができます。



【セキュリティ事件簿#2024-349】攻撃代行の海外サイトを使って出版社にDDoS攻撃した25歳男が逮捕される

 

東京都内の出版社にサイバー攻撃の一種である「DDoS(ディードス)攻撃」を仕掛けたとして、警察庁サイバー特別捜査部は6日、大分市三佐3、配管工、赤坂篤洋容疑者(25)を電子計算機損壊等業務妨害容疑で逮捕した。

DDoS攻撃は、大量のデータを送ってシステム障害を起こさせる手法。赤坂容疑者はプログラム作成などの専門知識はなかったが、攻撃を代行する海外の有料サイトをネットで見つけ、千数百円程度で利用していたとみられる。

逮捕容疑は2022年3月17日、ウェブサイト「Bootyou(ブートユー)」を使い、都内の出版社のサーバーに2回にわたってDDoS攻撃をし、出版社のサイトを計約1時間半閲覧できない状態にして業務を妨害したとしている。

赤坂容疑者は容疑を認め、「ブートユーを使って他にもDDoS攻撃をした」と供述しているという。

警察庁によると、ブートユーは、欧州刑事警察機構(ユーロポール)などの国際共同捜査によって22年に閉鎖された。日本も23年9月に、この国際共同捜査に参画。外国の捜査機関から提供されたデータを警察庁が解析したところ、出版社の被害や赤坂容疑者の関与が浮上した。

警察庁直轄のサイバー特捜部の前身組織が22年4月に設置されて以降、国内で逮捕した容疑者は2人目。国際共同捜査をきっかけに国内の容疑者を摘発したのは初めてという。

出典:出版社にサイバー攻撃疑いで25歳を逮捕 攻撃代行の海外サイト使用か

ランサムウェアギャングが発表した被害組織リスト(2024年7月)

 

2024年7月のランサムウェア被害を受けた日系企業のリスト。

HOYA Corporation


組織名

HOYA株式会社

ランサムウエアギャング

hunters

関連事件簿

【セキュリティ事件簿#2024-123】HOYA株式会社 当社グループにおけるシステム障害について


www.kumagaigumi.co.jp


組織名

株式会社熊谷組

ランサムウエアギャング

ransomhub

その他




Daikin


組織名

ダイキン工業株式会社

ランサムウエアギャング

meow

その他



フィッシングサイトや偽サイトの注意喚起で載せるドメインについて

無課金おじさん

世の中には”例示用(掲載用)ドメイン”というものが存在する。

簡単に言うと、このドメインを例示用や掲載用に使って良いよ!ってもので、RFC(Request for Comments)で決められている。

https://www.nic.ad.jp/ja/newsletter/No24/090.html

フィッシング詐欺やサポート詐欺、偽サイトについて注意喚起を行う方は覚えておいた方が良い。

◆例示用(掲載用)ドメイン

  • example.com
  • example.net
  • example.org
  • example.jp
  • example.co.jp
  • example.ne.jp
これらのドメインついてはRFC6761やRFC2606、JPRSが例示用ドメインとして規定している。




例示用(掲載用)IPアドレス

IPv4
  • 192.0.2.0/24(Test-Net-1)
  • 198.51.100.0/24(Test-Net-2)
  • 203.0.113.0/24(Test-Net-3)

IPv6

  • 2001:DB8 ::/32
上記のIPアドレスついてはRFC5737やRFC3849で例示用IPアドレスとして規定されている。





無料のデジタル・フォレンジック・ツール5選


デジタルフォレンジックは、サイバー攻撃の分析と対処において重要な役割を果たし、インシデントレスポンスの重要な要素です。さらに、デジタル・フォレンジックは、攻撃後の監査人、法務チーム、法執行機関にとって重要な情報を提供します。

多くの最先端のデジタル・フォレンジック・ツールが市場に出回っていますが、それらを購入する余裕がない人のために、ここでは、始めるのに最適な無料のソリューションのリストを紹介します。

Autopsy


Autopsyは、法執行機関、軍関係者、企業調査員がコンピュータ上の活動を調査し理解するために広く採用されているデジタル・フォレンジック・プラットフォームです。Autopsyはクロスプラットフォームとして設計されていますが、最新バージョンはWindows上でのみ完全な機能を持ち、テストされています。

bulk_extractor

bulk_extractorは、デジタル・フォレンジック分析のための高速ツールです。ディスクイメージ、ファイル、ディレクトリなどの様々な入力をスキャンし、電子メールアドレス、クレジットカード番号、JPEG画像、JSONフラグメントなどの整理された情報を抽出します。これは、ファイルシステムやその構造を解析する必要なく実現されます。抽出されたデータはテキストファイルに保存され、検査、検索、またはさらなるフォレンジック調査の入力として利用することができます。

NetworkMiner


オープンソースのネットワーク・フォレンジック・ツールであるNetworkMinerは、PCAPファイルにキャプチャされたネットワーク・トラフィックからファイル、画像、電子メール、パスワードなどのアーティファクトを抽出することに特化しています。さらに、ネットワーク・インターフェイスをスニッフィングすることで、ライブ・ネットワーク・トラフィックをキャプチャすることもできます。

Velociraptor


Velociraptorは、エンドポイントのアクティビティに対する洞察力を向上させるために設計された、洗練されたデジタル・フォレンジックおよびインシデント対応ツールです。数個のボタンを押すだけで、エンドポイント全体で同時に、デジタル・フォレンジック証拠の標的型収集を迅速かつ正確に実行します。

WinHex

WinHexは、コンピュータフォレンジック、データ復旧、低レベルデータ処理、ITセキュリティの分野で特に役立つ多機能な16進エディタです。様々な種類のファイルを検査・修正したり、削除されたファイルを復元したり、ファイルシステムが損傷したハードドライブやデジタルカメラカードから失われたデータを取り戻すことができます。

C国が対外工作で作成しているウェブサイト

pooh

ヨーロッパ、アジア、ラテンアメリカなど約30カ国で現地の報道機関を装いながら、C国内から運営されているウェブサイトが123見つかりました。これらのサイトは親北京の偽情報を展開することで世論工作を狙っています。

背景

2023年10月、イタリアの新聞『Il Foglio』は、イタリアの読者向けにニュースを装う6つのウェブサイトが、イタリア国内に実在する報道機関とは無関係であることを暴露する記事を掲載しました。Il Foglioの調査によると、これらのウェブサイトは、国内で活動する情報機関に法的に義務付けられている登録がなされていないことが確認されました。

Il Foglioは、コンテンツ分析と6つのドメインがC国の企業であるTencent Computer Systems Inc.が所有するIPアドレスに紐づくことから、このネットワークはC国が運営している可能性があると主張しています。イタリアの新聞はまた、6つのウェブサイトにリンクされたより広範なウェブサイトの存在を示唆しました。

広がるC国工作サイトのネットワーク


イタリアの新聞『Il Foglio』により特定された6つのドメインは以下の通りです。
  • italiafinanziarie[.]com
  • napolimoney[.]com
  • romajournal[.]org
  • torinohuman[.]com
  • milanomodaweekly[.]com
  • veneziapost[.]com
上記に紐づくIPは以下の通りでした。

IPOWNED BYFIRST SEENLAST SEEN
3.12.149[.]243Amazon Web Services (AWS)2021-08-142023-07-06
162.62.225[.]65Tencent Computer Systems Company Limited, Shenzhen2023-07-072023-07-08
43.157.63[.]199Tencent Computer Systems Company Limited, Shenzhen2023-07-092023-10-28
(date of the last check)

そして、上記IPに紐づくドメインは100以上ありました。

工作サイトの内容

特定されたウェブサイトはすべてほぼ同じメニューを持っており、典型的なものとして、まずターゲット先の言語で翻訳されており、政治、経済、文化、時事、スポーツネタを取り扱っている。

実際に投稿されているコンテンツは、対象国の地元メディアからスクラップして再投稿したものやプレスリリースが中心となり、時折C国メディアの記事や匿名の偽情報コンテンツが混在する。

また、コンテンツは複数のウェブサイトに同時にクロスポストされていることが観察された。

ターゲットとされている国は以下の通りで日本も含まれる。


日本で展開する工作サイトのドメイン

工作サイトは100を超える数が世界で展開されており、日本では以下の15ドメインで工作が行われている。

  • dy-press[.]com (DYP東海通信社)
  • fujiyamatimes[.]com (富士山時刻)
  • fukuitoday[.]com (今日の福井)
  • fukuoka-ken[.]com (福岡エクスプレス)
  • ginzadaily[.]com(銀座デイリー, 銀座新聞)
  • kanagawa-ken[.]co (神奈川新聞)
  • hokkaidotr[.]com  (北海道トラベルネット)
  • meiji-mura[.]com (明治発展日報)
  • nihondaily[.]com (霓虹にほん)
  • nikkonews[.]com (日光新聞)
  • saitama-ken[.]com (埼玉ネット)
  • sendaishimbun[.]com (仙台ニュース)
  • tokushima-ken[.]com (徳島オンライン)
  • tokyobuilder[.]com (东京ビルダーズ)
  • yamatocore[.]com (邪马台内陆部)

【KALI LINUX】 John the Ripper ~パスワードクラッカー~


今日は「John the Ripper」を紹介したいと思います。

John the Ripperはオープンソースのパスワードクラッカーで、複数のアルゴリズムを使ってパスワードをブルートフォースすることができます。様々な種類のドキュメントやアーカイブのパスワードを解除したり、様々なリソースのシンプルなユーザーパスワードを解除することができます。Johnの欠点は、ハッシュをクラックすることしかできないことです。つまり、暗号化されたファイルを直接扱うことはできません。例えばオフィス文書を開き、そこにパスワードを入力するようなことはできません。

以下の例では、JohnがすでにインストールされているKali Linuxを使って説明します。インストールは以下のコマンドで行えます。

# sudo apt install john -y

例として、暗号化されたアーカイブのパスワードをクラックする方法を見てみましょう。

ハッシュ値の抽出

まず、問題のファイルのハッシュを計算(抽出)する必要があります。zip2johnと呼ばれる補助ユーティリティーを使います。

ここで、アーカイブがあるフォルダに移動します。

# cd (ファイルパス)

zip2johnを実行し、結果(抽出したハッシュ)をTest.txtという同じフォルダに保存します。

# zip2john Test.zip > Text.txt

異なるファイル形式からハッシュを抽出する場合は、補助ユーティリティの名称が変わります。いくつか例を挙げてみましょう。

rarファイルからハッシュを抽出する場合。

# rar2john Test.rar > Text.txt

7zアーカイブからハッシュを抽出する場合。

# 7z2john.pl '/mnt/disk_d/Arch/from_kali.7z'

MS Word 2019ファイルからハッシュを抽出する場合。

# office2john.py '/mnt/disk_d/Share/Secret.docx' 2>/dev/null

Wi-Fiハッキングのためのハンドシェイクからハッシュを抽出する場合。

# wpapcap2john ~/RT-725140.pcap

キャプチャしたネットワークトラフィックからVNCハンドシェイクのハッシュを抽出する場合。

# vncpcap2john '/home/mial/VNC.pcapng'

SSHキーのハッシュを抽出する場合。

# ssh2john id_rsa > Text.txt

この抽出したText.txtファイルに対して、johnコマンドで解析を進めます。

ランニング

最も頻繁に使われるオプションとしては、--mask(パスワードを生成するためのマスク)と--wordlist(辞書ファイルの指定)が挙げられます。

辞書ファイルを用いた解析を行うには、辞書が必要です。Kali Linuxにはseclistsと呼ばれるパッケージが用意されているのでインストールします。

# sudo apt install seclists -y

/usr/share/seclists/ 配下にファイルが展開されます。

辞書攻撃を行うには、次のようなコマンドを実行します。
john --wordlist=(辞書ファイル)

辞書として、/usr/share/seclists/Passwords/rockyou.txtファイルを使う場合、コマンドは以下のようになります。

john --wordlist=/usr/share/seclists/Passwords/rockyou.txt Text.txt

実行結果の例は以下となり、pass123がパスワードであることが分かります。

# sudo john --wordlist=/usr/share/seclists/Passwords/rockyou.txt Text.txt
Using default input encoding: UTF-8
Loaded 1 password hash (PKZIP [32/64])
Will run 8 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
pass123          (secure_1605054835063.zip/zippy/flag.txt)
1g 0:00:00:00 DONE (2024-07-26 21:44) 8.333g/s 136533p/s 136533c/s 136533C/s 123456..christal
Use the "--show" option to display all of the cracked passwords reliably
Session completed.

マスク攻撃を行うには、次のような形式のコマンドを使用します。

./john --mask=(マスクハッシュ)

例えば、こんな感じです。

./john --mask='?d?d?d?d?d?d' Text.txt

マスク別にパスワードを把握するためのちょっとしたメモをご紹介します。

Static Characters.
Ranges in the syntax [aouei] or [a-z]. Or both, [0-9abcdef] is the same as [0-9a-f].
Fillers that are just an abbreviated form for ranges, such as ?l, which is 100% equivalent to [a-z].
?l is lowercase ASCII letters
?u are ASCII uppercase letters.
?d are numbers
?s are special characters (all printable ASCII characters except those included in ?l, ?u, or ?d)
?a is full "printable" ASCII. Note that for formats that are not case-sensitive (e.g., LM), this designation includes only lowercase characters, which significantly reduces the key space (the number of possible password candidates), but still covers all possible variants available for a given hash type.
?B is all 8-bit (0x80-0xff)
?b is all (0x01-0xff) (the NULL character is currently not supported by the kernel).
?h are lowercase hexadecimal digits (0-9, a-f)
?H are upper case HEX digits (0-9, A-F)
?L are lowercase, non-ASCII letters
?U are uppercase letters, non-ASCII
?D are "numbers", non-ASCII
?S is for non-ASCII "special characters"
?A is all valid characters in the current code page (including ASCII). Note that for formats that do not recognize case (e.g. LM), this includes only lowercase characters, which greatly reduces the number of password candidates without compromising cracking.
Fillers that are user-defined, so we can, for example, set the value to ?1 and assign it a value, such as [?u?l]. In Hashcat, this is called "user-defined character sets".
?1 .. ?9 is a user-defined placeholder 1 . 9
Fillers for hybrid mask mode:
?w is in Hybrid Mask Mode denotes the source word created by the parent mode.
?W is like ?w except that the source word is case-sensitive (so PassWord becomes PASSWORD).

今回は、John the Ripperの用途の一つをざっと見てみましたが、決してそれだけではありません。

LinuxでJohnを使えない場合は、開発者が気を利かせて、WindowsやMacOSで使える可能性を加えてくれましたが、これはお勧めできません。興味のある方は、インターネット上にたくさんのガイドや記事があります。

以上、ここから先は誠意を持って対応してください この記事がどなたかのお役に立てれば幸いです。

出典:Брутфорс - John the Ripper

出典:John The Ripper