Kali Linux 2021.1でXSStrikeを使用しクロスサイトスクリプティング(XSS)の脆弱性を検出する

Kali Linux 2021.1でXSStrikeを使用しクロスサイトスクリプティングXSS)の脆弱性を検出することについて解説しています。

XSStrike(https://github.com/s0md3v/XSStrike)は、クロスサイトスクリプティングXSS)の脆弱性を検出するために使用される高速なクローラーを備えた高度なWebアプリケーション侵入テストツールです。このツールは本来の機能の他に、クローリング、ファジング、パラメータディスカバリー、WAFの検出機能も備えています。また、DOM XSS脆弱性をスキャンすることもできます。

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

■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)権限に切り替えます。

■XSStrikeのインストール

#git clone https://github.com/s0md3v/XSStrike

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

Cloning into 'XSStrike' ... remote: Enumerating objects: 1629, done. remote: Total 1629 (delta 0), reused o (delta 0), pack-reused 1629 Receiving objects: 100% (1629/1629), 1.14 MiB 1.12 MiB/s, done. Resolving deltas: 100% (954/954), done.
#cd XSStrike

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

#pip3 install –r requirements.txt

移動後、上記のコマンドを入力し、Enterキーを押します。依存関係(python-Levenshtein,prettytable,requests,tld,fuzzywuzzy)をインストールします。Enterキーを押すと、インストールが開始され、「Successfully installed」と表示されれば、完了となります。

■XSStrikeのインストール確認

#python3 xsstrike.py –h

完了後、上記のコマンドを入力し、Enterキーを押します。インストール確認のために、ヘルプを表示してみます。

Enterキーを押すと、ヘルプが表示されます。今回はXSStrikeのバージョン3.1.4を使用します。

これでインストールの確認は完了となります。

■対象からXSS脆弱性を見つける

#python3 xsstrike.py –u <ターゲットWebアプリケーション,Webサイト>

完了後、上記のコマンドを入力し、Enterキーを押します。XSStrikeを使用し、対象からXSS脆弱性を見つけてみます。今回はセキュリティ教育のため、当サイト(https://laboratory.kazuuu.net/)を指定します。

Enterキーを押すと、「Check for DOM vulnerabilities(DOMの脆弱性をチェックする)」と表示され、DOMの脆弱性のチェックが開始されます。

開始後、「Potentially vulnerable objects found(潜在的に脆弱なオブジェクトが見つかる)」と表示されました。その後、コードが出力され、潜在的に脆弱なオブジェクトの部分が赤色などで表示されます。

表示された後に、XSS脆弱性チェックが完了し、XSStrikeの起動が終了します。今回セキュリティ教育のため、当サイト(https://laboratory.kazuuu.net/)を指定しましたが、潜在的に脆弱なオブジェクトが見つかりましたので、対処方法を考えて講じます。