セキュリティ運用のための Python

Python を活用してセキュリティタスクを自動化しましょう。バナーグラビング用のカスタムソケットツールの構築、requests ライブラリを使用した Web インタラクションのスクリプト化、正規表現を用いた大規模ログファイルの解析手法を学びます。

Cybersecurity Engineerサイバーセキュリティ

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

セキュリティ自動化は、繰り返し行う確認を、一貫して証拠を収集・絞り込み・報告するコードへ変えます。この実践コースでは、Python をローカルネットワークサービス、HTTP ワークフロー、Web アクセスログへ適用します。

TCP バナー取得、GET/POST と Cookie セッション、正規表現による Apache 形式ログ解析、CSV 出力を作成します。最後は HTTP ヘッダー解析、Basic 認証、401 イベント抽出、整形済みサマリーを統合します。

学習内容

  • IPv4 TCP ソケットを作成し、エンコードしたバイトデータを送受信する
  • ローカルサービスに接続してバナーを受信し、ソケットを閉じる
  • HTTP GET/POST を送信し、状態コード、ヘッダー、本文を調べる
  • requests.Session で Cookie をリクエスト間に保持する
  • ログを一行ずつ読み、正規表現で IPv4 アドレスを抽出する
  • 準備済み SQLi パターンを判定し、元ログ文脈を保存する
  • Python の csv モジュールで構造化結果を書く
  • ソケット、HTTP 認証、ログ解析、テキスト報告を一つのスクリプトにまとめる

このコースの対象者

この中級コースは、小規模なセキュリティ確認を自動化したい学習者、運用アナリスト、Python 利用者向けです。本番フレームワークより、読みやすいスクリプトとデータフローを重視します。

前提知識: 変数、関数、import、ループ、辞書、ファイル入出力などの Python 基礎と Linux ターミナル操作。TCP/IP、HTTP、ログ、正規表現の基礎があると役立ちます。

学習環境: Python 3、requests、準備済みログ、127.0.0.1 の模擬 TCP・Flask・HTTP サービスを備えた Ubuntu 22.04 ターミナルです。外部対象へ接続しません。

よくある質問

外部システムをスキャンまたは認証しますか?

いいえ。すべて 127.0.0.1 上の準備済みサービスを使います。認証情報、応答、ログは合成データで、ラボ内に限定されます。

どの程度の Python が必要ですか?

関数、import、条件、ループ、コレクション、ファイルを使う短いスクリプトを読んで変更できる必要があります。セキュリティ固有ライブラリは説明しますが、Python 文法の入門ではありません。

正規表現の一致で SQLi や総当たりを証明できますか?

できません。単純な署名と 401 に関連する IP を確認候補として扱います。実運用では文脈、閾値、正規化、調整、検証が必要です。

完成スクリプトは本番対応ですか?

いいえ。教材用です。本番では堅牢な例外処理、タイムアウト、再試行、秘密管理、TLS 検証、設定、テスト、構造化ログ、統合制御が必要です。

講師

labby
Labby
Labby is the LabEx teacher.