Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
LLM-powered AppのSDLCとテストにトライしてみる
Search
mark t
July 17, 2025
290
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
LLM-powered AppのSDLCとテストにトライしてみる
SDLC includes testing, though...
mark t
July 17, 2025
More Decks by mark t
See All by mark t
SOC 2はサイバーディフェンスに役立つか? (SOC2ゆるミートアップ#2)
marktshr
2
560
Featured
See All Featured
Optimizing for Happiness
mojombo
378
71k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Visualization
eitanlees
152
17k
Utilizing Notion as your number one productivity tool
mfonobong
4
590
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
530
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
6
1.2k
For a Future-Friendly Web
brad_frost
183
10k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.3k
The World Runs on Bad Software
bkeepers
PRO
72
12k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
[SF Ruby Conf 2025] Rails X
palkan
3
1.4k
Transcript
LLM-powered AppͷSDLCͱςετʹ τϥΠͯ͠ΈΔ 2025.07 markt, Security Team, primeNumber Inc.
2 markt Security Engineer at primeNumber Inc. (@NKMGR_OldSchool) BurpAIͰͳΜͱ͔ͳΕʔ (ͳΒͳ͔ͬͨ)
͖ͳΫϥυαʔϏε : … ͖ͳ੬ऑੑ : ͳ͍Α, ͳ͍΄͏͕ྑ͍Α
ձࣾ֓ཁ 3 גࣜձࣾprimeNumber දऔకCEO ాᬑ ༤थ 201511݄ 116໊ 34ԯԁ ౦ژ্۠େ࡚3ஸ1൪1߸
JR౦ٸࠇϏϧ5F ձ໊ࣾ ද ۀ ϝϯόʔ ྦྷܭௐୡֹ ΦϑΟε © primeNumber Inc.
4 primeNumber͕ఏڙ͢ΔαʔϏε σʔλϚωδϝϯτ֤ϑΣʔζͷ՝ʹԠ͑Δ͘ɺෳͷSaaSΛఏڙ͍ͯ͠·͢ɻ ·ͨɺίϯαϧςΟϯάαʔϏεɺͯ͢ͷϑΣʔζΛϫϯετοϓͰࢧԉՄೳͰ͢ɻ © primeNumber Inc. ׆༻ ੳ ՄࢹԽ
ੵ ౷߹ ࡏ σʔλར׆༻ͷ࣮ݱʹ͚ͨ θϩ͔ΒͷεςοϓΛϫϯετοϓͰαϙʔτ ΫϥυETLαʔϏε σʔλΛ׆༻ͨ͠ࢪࡦ࣮ߦʹ ಛԽͨ͠࿈ܞαʔϏε AI σʔλϓϥοτϑΥʔϜ
5 GenAI(LLM)ΈࠐΜͰ·͔͢? Bedrock (Claude)Λͬͯ AIػೳΛ࣮͢Δͧ! σβΠϯϨϏϡʔͱ͔ςετ ͱ͔ࢹͱ͔Ͳ͏͠Α͏͔… ͋Δ… me…
6 LLM-powered AppͷSecure SDLCͷظͱݱ࣮ 👍 OWASP Top 10 for LLM
Apps => ςετख๏Λߟ͑Δͷʹʹཱͬͨ ͦͷ··͑Δprompt͕͋ΔΘ͚Ͱͳ͍ ग़ճ͍ͬͯΔprompt injectionଞͷcheat sheet => LLMΛ͏web appͷ߈ܸʹweight͕ͳ͍ Bedrockެࣜdocs => BedrockΛηΩϡΞʹ͏ͨΊͷ༰ Guardrail·͘͠ͳ͍ձΛ͙త => SDLCख୳ΓͰΔ͔͠ͳ͍… ेݟཷ·͍ͬͯͯ ͦͷ··͑ΔͷͰ?
7 Ͳ͜ͷ߈ܸΛ͙ͷ͔ ෦tool ෦tool general Q ͜͜ͷѱ༻ ͍͗ͨ ͜͜Bedrock ΑΖ͘͠…
݁ہͲ͜ʹॏཁͳࢿ࢈͕͋Δ͔ɺ Ͳ͏͞ΕͨΒݏ͔ͱ͍͏ جຊతͳڴҖϞσϦϯά༗ޮ ౸ୡ͞Εͨ͘ͳ͍DBs Design ͷதͰAI͕༡Ϳͷ ڐ༰͢Δ(͜ͱʹͳΔ) Design Coding
8 OWASP Top 10͞ΜͬͯΈΔ OWASP Top 10 for LLM 2024
→ 2025Ͱ͔ͳΓมΘͬͨ - Prompt injectionͷົԽͱͦͷରࡦ - LibraryΛૂ͏ख๏͕ڧԽ - system prompt࿙Ӯ͢Δલఏͷೝࣝ - ϓϩόΠμͷنมߋ͏ LLMͷਫ਼(৴པ)্͕͕Δ -> Ͱ͖Δݖݶͱ߈ܸγφϦΦ͕૿͑Δ OWASPࢼߦࡨޡதͬΆ͍ - ؔ࿈WG͕ͨ͘͞Μൃੜத https://genai.owasp.org/ - OWASP Global Slack https://join.slack.com/t/owasp/signup dev team͚ʹཧͨ͠͠Ϧετ Testing
9 Prompt InjectorΛ࡞ͬͯΈΔ PromptsΛಡΈࠐ·ͤͯͨͩྲྀ͠ࠐΉscanͰcheck͍ͨ͠ (ձͣͬͱ͚ͭͮΔͷπϥ͍/Կࢼ͔ͨ͠Εͯ͠·͏…) ↓ BurpͳΒExtension͕͋Δͣ… AI Prompt Fuzzer͑Δ͔ͳ
↓ PayloadsҰ੪ʹૹΔλΠϓͰձ༻Ͱͳ͔ͬͨ ↓ →Extensionͷextension͕͍࣌͢͠ʹͳͬͨ #PoCʹཹΊΑ͏ɺcontributionߟ͑Α͏ -༧ΊಡΈࠐΜͩpromptsΛPLACEHOLDERʹ͍ Εͯॱ൪ʹ͍͛ͯ͘ - AI͔Βͷฦstatus֬ೝ͕݅Εɺ֬ೝޙʹ ࣍ͷpromptΛPOSTͰ͖Δ ✨ (վ) Testing
Prompt InjectorΛ࡞ͬͯΈ͕ͨ… 10 Context is everything… - publicʹ͋Δpromptsmodelͷ߈ܸ͕ϝΠϯ - ੍Λແࢹͯ͠Έ͍ͨͳϕλͳpromptͰ
Bedrockͼ͘ͱ͠ͳ͍ɺͱ͍͏͔ͦ͜Λ ૂͬͯςετͷޮՌ͍ - Tool useͰͷγφϦΦͱσʔλͱͷݟൺ͕ඞ ཁ LLMsʹΑΔpromptఏҊ - Code baseಡ·ͤͨAIʹpromptΛߟ͑ͤ͞Δͱ ࡉ͔͍ࢦࣔग़ͯ͘͠Δ(ಛఆͷvalidationΛࢦఆ͠ ͯແޮԽ͠Ζͱ͔) - େྔσʔλੜͱ͔ϩάશআͱ͔᪳ͷͳ͍ ࢦࣔΛఏҊͯ͘͠Δ
11 ·ͱΊ: LLM-powered AppͷSecure SDLCͷݱ࣮ Design - σβΠϯϨϏϡʔޮՌେ (ಛʹॳճ) -
AmazonͷͷAmazonʹ(कͬͯΒ͏) - Ͳ͜ͰLLMʹૹΔͷ͔(Chat͚ͩͱݶΒͳ͍) - DoS͕͔ͳΓݱ࣮తͳϦεΫ - ๏ϨϏϡʔେࣄ (LLMͷૹ৴ͱن) - Trial & error͔͠ͳͦ͞͏ - LLMʹLLMΛ߈ܸ͢ΔpromptΛߟ͑ͤ͞Δ (֤ࣾϝϞϦҭͯதͩͱࢥ͏ͷͰͦͷagentͳΒ ώτΑΓࡓ͑ͨprompt͕ग़ͤΔͱظ) Top 10ղઆdocΛ࡞͠ ઃܭ&࣮ஈ֊ͰͲΜͳ߈ܸ͕ དྷΔ͔Πϝʔδͯ͠Β͏ Monitoring - қɾߴ (ಛʹinlineͰͷblock) - ࢦࣔͷ“ҙຯ”͕ΘΕLLM͕উखʹͯ͠ actionͯ͠͠·͏ - taggingLLM Observability Tools͕ॏཁͦ͏ Coding Testing