Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
カスタムGPTをHardeningの MPで提供してみた振り返り
Search
Kazuki Takemura
February 07, 2024
0
340
カスタムGPTをHardeningの MPで提供してみた振り返り
2024/02/07 総関西サイバーセキュリティLT大会(第39回)でのLT資料
Hardening 2023 Generatives で LLM を使ったMPサービスを提供した振り返り。
Kazuki Takemura
February 07, 2024
Tweet
Share
Featured
See All Featured
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
RailsConf 2023
tenderlove
30
1.2k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Into the Great Unknown - MozCon
thekraken
40
2k
Site-Speed That Sticks
csswizardry
10
850
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
940
Rebuilding a faster, lazier Slack
samanthasiow
84
9.2k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Practical Orchestrator
shlominoach
190
11k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
114
20k
Transcript
カスタムGPTをHardeningの MPで提供してみた振り返り 2024/2/7 T3 Realize合同会社 H2023G MP:CxT (しばいて!)ドットコム Kazuki Takemura,
CISSP
本日お伝えしたいこと • Hardening 2023 競技会で、生成AI(カスタムGPT)を使ったMPサービスを提供した ので振り返ります • 堅牢先生 Powered by
GPT • 事前にHardening関連資料をRAGで学習させたカスタムGPT • Threat Link Powered by GPT • インシデント管理+脅威情報共有+GPTによる対応アドバイス • 今回の学び • 学習データの品質が非常に重要 • データの選別 • データの分割・要約・整形 • 利用する側の質問のしかたも重要 • といいつつ、競技中にしっかりしたプロンプトを書き切るのは至難の業 • サンプルプロンプトなどを充実させればよかった • GPT先生の支援があれば、初心者でも爆速で開発できる 2
提供したサービス 3
提供したサービス 4 • 堅牢先生 powered by GPT ※画面は開発中のものとなります。実際のサービスでは変更される場合があります。
Threat Link powered by GPT 5 GPT-4 Hardeningナレッジ 今大会の情報 ベクトル検索
全文検索 購入チームの システム調査 (2時間人力x2 チーム) Threat Link ダッシュボード 検知した脅威とその対応案 堅牢先生 powered by GPT 対応済 脅威 /var/www/webshell.phpにWebShell設置 CVE-2021-44228(Log4Shell)攻撃検知 発見した脅威や脆弱性の 登録 手順などの 確認 購入チーム 対応 アドバイス TLP設定による脅威情報共有 発見した脅威や脆弱性の 登録・対応支援 ※画面は開発中のものとなります。実際のサービスでは変更される場合があります。
Threat Link powered by GPT 6 ※画面は開発中のものとなります。実際のサービスでは変更される場合があります。
Threat Link powered by GPT 7
アーキテクチャ 8 userdb teamdb logdb Azure Cosmos DB Azure Cognitive
Search Azure OpenAI GPT-4-32k text-embedding-ada-002 Blog Storage 学習資料PDF(ページ分割) 学習資料index 全文検索 ベクトル検索 Azure App Service フロントエンド バックエンド Google Identity Platform Googleアカウント連携 Python, Flask Discord通知 ダッシュボード • Microsoftが提供している azure-search-openai-demo(https://github.com/Azure-Samples/azure-search- openai-demo )を参考に2週間くらいで作成 • RAG(Retrieval-Augmented Generation)により、事前に学習した資料から検索した結果をもとに回答を 生成(ベクトル検索と全文検索のハイブリッド) • Reactも Flaskもほぼ初心者でしたが、GPT先生に聞きながら開発とデバッグが爆速で進む
GPT先生との開発風景 9
学習データの品質が非常に重要 10
学習データの品質が非常に重要① • データの選別 • 過去のHardening競技会の競技資料を約10年分 • 過去大会の情報がごちゃ混ぜになり怪しい回答に • ハードニングファン!!2023 (のみぞうさん本)
• かなり良い感じに参照してくれた • Softening Day動画の文字起こし • ほとんど役に立たないどころか、ノイズになった • 一度要約させたものはある程度使えたものの、精度が。。。 11 ✓ 最終的には、ハードニングファン!!2023 、1大会分の競技資料(競技前日 に入れ替え)と、追加ナレッジに落ち着く。 ✓ 何でもかんでも食わせればよいというわけではなく、ノイズになるデータの除 外、選別が重要
とつぜんですが勝手に宣伝 • 堅牢先生の学習データにも活用させていただいた、ハードニングファンの2024年版が出るそ うです! • https://yawaraka-sec.com/hardeningfun-2024/ • 寄稿も募集中とのこと 12
迷走する事前学習 13
迷走する事前学習 14
学習データの品質が非常に重要② • データの分割・要約・整形 • GPTで一度に扱える情報量(トークン数)に制限があることから、適切に分割して学習 させる必要がある • 基本的には、ページ・スライド単位での分割した • ページまたぎの文章がぶつ切れになるため、前後15%くらいの文章をオーバーラップさせて分割
• 「ハードニングファン!!2023」のような、ページごとにまとまった文章がある資料はかなり良 い感じに学習してくれる • 競技資料のような、1ページ当たりの文章が少ない、図とコメントだけといったデータは、適切 な回答が出てこないケースも • 議事録、文字起こしのようなデータは、そのままではなく要約などの下処理が必要 15 ✓ 分割のしかたは元データの種類によって工夫が必要 ✓ 書籍、論文などはページ毎+15%くらいのオーバーラップで割とよい感じに ✓ PowerPointスライドの場合は、スライドの作りでかなり変わってくる
利用する側の質問のしかたも重要 16
利用する側の質問のしかたも重要① • 人間に聞くときも、ちゃんと背景や主語がないと答えられないですよね • といいつつ、競技中にしっかりしたプロンプトを書き切るのは至難の業 • サンプルプロンプトなどを充実させればよかった 17
利用する側の質問のしかたも重要② 18 • さすがにそこまではやってくれなかった
まとめ 19
まとめ • Hardening 2023 競技会で、生成AI(カスタムGPT)を使ったMPサービスを提供した学び • 学習データの品質が非常に重要 • データの選別 •
データの分割・要約・整形 • 利用する側の質問のしかたも重要 • といいつつ、競技中にしっかりしたプロンプトを書き切るのは至難の業 • サンプルプロンプトなどを充実させればよかった • GPT先生の支援があれば、初心者でも爆速で開発できる • GPTは適当に学習させれば何でも答えてくれる魔法の仕組みではない。 • でも、しっかりした学習データの準備と、使い方を工夫すれば実業務でも優秀なアシスタン トになるかも? • 組織内のインベントリ情報とか、インシデント管理とか、脅威インテリジェンスとか • 簡単にカスタムGPTが作れる仕組みも増えてます(情報の取り扱いには注意) • 同じようなアプローチ(レベル感はさておき)の製品もでてきている • Microsoft Security Copilot とか 20
おまけ 21
(おまけ)MPの経営戦略にも活用 22
(おまけ)コスト 23 Azure OpenAIよりもCognitive Search の方が高かった。。。
(おまけ)学習内容からのレスポンス 24
(おまけ)具体的なアドバイス 25