web-dev-qa-db-ja.com

APIセキュリティテストの方法論

脆弱性のテストが行​​われたAPI(通常はREST)エンドポイントを必要とするクライアントがますます増えており、私が行っている以上の推奨事項があるかどうかを確認したいと考えています。

私はOWASPのRESTセキュリティチートシートに精通しており、多くのAPIを自分で構築しているので、HTTPメソッド、CSRF、機密データの開示、入力検証、SSL構成を探すことを知っています。など、しかし何か不足していますか?APIの脆弱性/エクスプロイトを見つけるために、誰もがどのような手法を使っていますか?古き良きインターセプトプロキシとカールよりもうまく機能する推奨ツールはありますか?

5
jmbmxer

私のお気に入りのRESTfulクライアントはhttpieです(Pythonソースから)。easy_install httpieまたはpip install httpieから簡単に入手できます。REST = Firefoxアドオンとしてのクライアント/デバッガ(addons.mozilla.orgで検索)。

特定の会社にいる間、Maven SecurityのREST-WSデモ Web Security Dojo 仮想マシンやOWASP GoatDroidプロジェクトのようなRESTful Webサービスに対して「カスタムパラメータ」と呼ばれるWebInspect機能を使用したことを思い出しますJAX-RSの使用。 Fortify SecurityScope製品にもアクセスできる場合は、それを使用して [〜#〜] wadl [〜#〜] を自動的に作成し、WebInspect RTで使用することができます。大規模なアプリ(200万行を超えるコードなど)をテストする場合、これは特に役立ちます。

SecTooigno レポートを見ると、9以下の入力ベクトルを持つほとんどのツールはRESTful Webサービスを適切に処理できず、最高のもの(Burp Suite Professional、NTOSpider、IBM Appscanなど)も処理できません。これらのインターフェース/ APIをテストするための明確な道がありません。これが、適切なAPIドキュメント(おそらくできればWADL形式)と共に、httpie(またはcurl)などのツールをインターセプトプロキシとして使用する理由の多くです。

2
atdre

あなたは一つの重要なことを見逃しています:

エンドユーザーにデータセキュリティに関するトレーニング/情報を提供する

フィッシングとソーシャルエンジニアリングは、あらゆる展開における最大のリスク要因です

1
dprogramz