テスト環境を使う理由
Aikidoがペンテストをテスト環境で実行するよう求める理由と、一部のテストがデータを変更または削除する可能性がある理由。
テスト環境で実行するよう警告されるのを見たことがあるかもしれません。いくつかのテストはデータを変更したり削除したりできるからです。とはいえ、それは通常起こることよりもずっと悪く聞こえます。このページでは、Aikido のエージェントが実際に何を行うのか、テストがデータを変更しうるのはどんな場合か、そしてそれでもテスト環境で実行していただきたい理由を説明します。
「データを変更または削除する」とは本当は何を意味するのか
Aikido が本番データベースを消去したり、意図的にサイトを停止させたりするという意味ではありません。
つまり、いくつかのバグが本物であることを証明するために、エージェントが時には次のようなことを行う必要があるということです。 変更する ファイル、レコード、または設定を。これはまれです。ほとんどの証明では必要ありませんが、最悪の場合、これで環境が停止する可能性があり、そのリスクを認識しておく必要があります。
問題を避ける最も簡単な方法は、ペンテストをテスト環境で実行することです。
エージェントは何かを見つけた後も攻撃を続けるのですか?
いいえ。Aikido Pentest のエージェントは、 発見事項を証明したら停止するように作られています。デフォルトでは、その後も攻撃を続けたり、データベースをダンプしたり、どこまで侵入できるかを試したりはしません。
後から特定の発見事項についてさらに深く調査し、より先まで攻撃したい場合は、 人間による確認を伴うオプトインです。これはデフォルト実行には含まれません。
使うには さらに攻撃を進める を安心して使うには、最初からテスト環境を用意してください。設定した同じ対象に対して実行されるため、後から切り替えるには新しい評価を始め、すべてを再設定する必要があります。
ほとんどの発見事項は無害な方法で証明できますか?
はい。ほとんどの脆弱性では、証明はダメージではなく、アプリが予期しない動作をしたことを示す無害なシグナルのようなものです。
クロスサイトスクリプティング(XSS): 次のようなものを注入するだけです。
console.log。セッションを盗むスクリプトではありません。SQL インジェクション: データベースを数秒間停止させる(
SLEEP)、DROP TABLE.アクセス制御の不備: 別の テスト ユーザーのレコードを読み取り、ID チェックが欠けていることを証明する。実在の顧客を削除するわけではありません。
唯一の証明が実際の操作になるのはいつですか?
いくつかのバグは、危険なことを実際に行わないと確認できません。
よくある例は パストラバーサル で、誰かがファイルを削除できるようになるものです。「このファイルを読む」という選択肢がない場合もあります。テスト用ファイルを削除することだけが、バグが本物だと知る唯一の方法かもしれません。
それが実際のリスクです。 テスト環境ではダミーのファイルや偽のユーザーを失うだけです。ですが本番環境では、同じ証明で本物のファイル、注文、またはアカウントが削除される可能性があります。
同じ考え方は、削除または更新のエンドポイントでしか現れない一部のアクセス制御バグにも当てはまります。エージェントは、そのチェックが欠けていることを証明するために、 テスト レコードを変更または削除する必要があるかもしれません。
エージェントは後片付けをしてくれますか?
しようとはします。エージェントは使い捨てのテストデータ(ユーザー、ファイル、レコード)を作成し、 それを削除しようとします 。
後片付けが常に可能とは限りません。削除エンドポイントがない、実行中に権限が変わった、またはアプリがもう
利用できなくなっている可能性があります。だからこそ、テスト環境ではダミーデータを使うのが別の理由になります。ステージング環境にテストユーザーやファイルが残るのは面倒です。実在の顧客がいる本番アプリにテストユーザーが残るのは問題です。
良いテスト環境とはどのようなものですか?
壊してもよいテスト環境を使ってください:
A ステージング、QA、またはプレビューの URL。実際の人が使う本番アプリではありません
ダミーデータのみ (実在の顧客の PII なし)
プレビュー URL でも、それがまだ本番データベースや本番キーを使っているなら不十分です
本番に十分近く、発見事項が引き続き重要であること(同じ機能、同じ認証)
完全な事前チェックリストについては、 ペネトレーションテストの準備.
結論
本番を再現したテスト環境で、実在の顧客の代わりにダミーデータを使ってペンテストを実行してください。実際のユーザーや実データを危険にさらすことなく、それでも意味のある発見が得られます。
不明ですか? 安全な対象 URL の選び方が必要なら、右下の Intercom チャット を開いてください。私たちのチームがお手伝いします!
最終更新
役に立ちましたか?