KaliLinuxでCloudFlareセキュリティで保護されているWebサイトの情報を取得する

KaliLinuxでCloudFlareセキュリティで保護されているWebサイト(ドメイン)の情報を取得することについて解説しています。

Cloudflareのセキュリティサービスでは、サービス拒否攻撃、顧客データの漏えい、​迷惑ボットからインターネットプロパティを保護し、安全が確保されています。しかし、Cloudflareセキュリティによって保護されているドメインに関する情報を取得したいこともあります。違法行為を行っているサイト(海賊版動画,漫画配信サイトなど)。

このような場合に、使える戦術的な偵察ツール「CloudFail(https://github.com/m0rtem/CloudFail)」を紹介します。CloudFaiは、GitHubで利用できる無料のオープンソースツールです。CloudFailを使用すると、サーバーの実際のIPを提供し、CloudFlareのマスクを解除するのに役立ちます。

なお、サイバーセキュリティ対策や情報セキュリティ教育が目的でツールを利用しますので、悪用・違法行為が目的はございません。ツールを利用することで発生したトラブルや損失、損害(ウイルス感染など)に対して、一切責任を負いません。

■PC環境

Windows 10 Pro

VirtualBox6.1

Kali Linux 2021.1(Debian (64-bit),Python3.9.2)

■Kali Linuxを起動する

クリックすると、Kali Linuxが起動します。起動後、ログイン画面が表示されますのでユーザIDとパスワードを入力し「Log in」ボタンをクリックします。

クリックすると、Kali Linuxにログインすることができました。

ログイン後、上部メニューになる「ターミナルエミュレーター」をクリックし、ターミナルを起動します。

$sudo su

起動後、上記のコマンドを入力し、Enterキーを押します。スーパーユーザ(root)権限に切り替えます。

■Cloudflareのインストール

#git clone https://github.com/m0rtem/CloudFail

切り替えた後に、上記のコマンドを入力し、Enterキーを押します。リポジトリをクローンします。

Cloning into 'CloudFail' ...
remote: Enumerating objects: 302, done.
remote: Counting objects: 100% (18/18), done.
remote: Compressing objects: 100% (16/16), done.
remote: Total 302 (delta 4), reused 7 (delta 2), pack-reused 284
Receiving objects: 100% (302/302), 39.89 MiB | 4.10 MiB/s, done.
Resolving deltas: 100% (133/133). done.
#cd CloudFail

クローン後、上記のコマンドを入力し、Enterキーを押します。「CloudFail」ディレクトリに移動します。

#chmod +x cloudfail.py

移動後、上記のコマンドを入力し、Enterキーを押します。cloudfail.pyに、すべてのユーザーに実行権限を与えます。

#pip3 install -r requirements.txt

権限を与えた後、上記のコマンドを入力し、Enterキーを押します。依存関係をインストールします。

Enterキーを押すと、依存関係のインストールが開始され、しばらくするとインストールが完了となります。これでCloudflareのインストールは完了となります。

■Cloudflareのインストール確認

#python3 cloudfail.py --help

インストール後、上記のコマンドを入力し、Enterキーを押します。インストール確認のために、Cloudflareを実行します。

Enterキーを押すと、「Cloudflare」と出力されます。これでインストールの確認は完了となります。今回はCloudflareのバージョン1.0.2をインストールしました。

■Cloudflareでドメインに関する情報を取得

python3 cloudfail.py -t targetdomain.com <対象となるドメイン>

インストール後、Cloudflareでドメインに関する情報を取得してみます。取得する場合は、上記のコマンドを入力し、Enterキーを押します。

Enterキーを押すと、対象となるドメインが、CloudFlareネットワーク上にあるかどうかをテストし、テストの結果、「part of the Cloudflare network!(Cloudflareネットワークの一部です!)」となれば、Cloudflareを利用しています。

その後、[FOUND: HOST(発見:ホスト)]や[FOUND: DNS(発見:DNS)]と表示され、ホストやDNSの情報が表示されます。

cloudfail.py:180: SyntaxWarning: "is not" with a literal. Did you mean "!="?
while choice is not 'y' and choice is not 'n':
cloudfail.py:180: SyntaxWarning: "is not" with a literal. Did you mean "!="?
while choice is not 'y' and choice is not 'n':
cloudfail.py:182: SyntaxWarning: "is" with a literal. Did you mean "=="?
if choice is 'y':

Cloudflareを実行する時に、上記の「SyntaxWarning(構文警告)」という警告が表示されましたが、Cloudflareを実行することができました。