データ分析

AIを作ってみよう:Webセキュリティ(1/4)

更新日:

サーバクライアント通信

 

Webサーバ管理者のあなた、Web開発者のあなた、セキュリティ対策はいつまでも終わりませんね。ハッカーとのいたちごっこです。

しかしやっとAIなるものが支援してくれる兆しが見えてきました。少しでも自動化できたら助かりますね。

AIなんて専門家じゃないと分からない。

このように思っているかもしれませんが、そんなことありません。現在はだいぶ難易度が下がり、AIも身近になってきました。

簡単なものであれば、あなたのサーバやパソコンで実行できます。
それを体験してもらいたいと思い、できるだけ簡単なAIを用意しました。これを機に興味を持ってもらい、一緒にAIを発展させていけたらと思います。

この記事では、統計的機械学習を使ってWebサーバのアクセスログをチェックするAIを作ります。あなたのWebサーバのアクセスログがそのまま使えるプログラムです。

まず環境の準備を見ていない人は、先にこちらを見てください。AIを作ってみよう:環境の準備から

 

WebアクセスチェックAI

 

今回作るのは「WebサーバのアクセスログをチェックするAI」です。

過去ログを読み込んでチェックするものですので、リアルタイム検知を狙うものではありません。

AIには大きく統計的機械学習とディープラーニングの2種類がありますが、今回は統計的機械学習を使います。その中でも教師なし学習という分類のKMeansというアルゴリズムを使います。

教師あり学習答えを学習してから予測を行う一方、教師なし学習はデータを読み込んだらいきなり答えを出します。答えというよりグルーピングを行うという動作ですね。

 

分類学習

 

AIの種類についてはこちらを参照してください。この分類表はあまり見かけないので貴重です。 AIの種類~ありそうで無い分類表~

 

プログラムの仕様

 

今回のプログラムは以下の仕様です。

目的:Webサーバのアクセスログを読み込み、特徴の似たグループで分類する。(ここまでがAIの仕事) 分類結果を人の目で見て、攻撃的なアクセスのグループがないかチェックする。(ということで半分は人間の目が必要な半自動化になります。)

学習データ:apache httpサーバの/var/log/httpd/access_log
      ・何日分でも可
      ・ログの出力項目はapacheのデフォルトのままが前提

欲しい結果:同じ傾向のログをグルーピングした結果
AIモデル:統計的機械学習/教師なし学習/KMeansアルゴリズム

 

それでは、実際にプログラムとデータを作り、実行していきましょう。

次の記事へ。 AIを作ってみよう:Webセキュリティその2

 

  

-データ分析

Copyright© やさしいAIの始め方 , 2024 All Rights Reserved Powered by STINGER.