๐Ÿ“บ ์˜์ƒ ์š”์•ฝ ์•„์นด์ด๋ธŒ
โ† ๋ชฉ๋ก

1,000 Agent Tasks in a Sandbox: What Breaks When LLMs Run Code โ€” Kevin Orellana, AWS

AI Engineer ยท 2026-10-12 14:36 ยท 15:19

ํ•œ ์ค„ ํ•ต์‹ฌ

LLM๊ณผ coding agent๊ฐ€ ์‹ค์ œ sandbox ํ™˜๊ฒฝ์—์„œ ๋ฌด์—‡์„ ๋ง๊ฐ€๋œจ๋ฆฌ๋Š”์ง€ 1,000๊ฐœ ์›Œํฌํ”Œ๋กœ๋กœ fuzz ํ…Œ์ŠคํŠธํ•œ ๊ฒฐ๊ณผ, ๋ฌธ์ œ์˜ ํ•ต์‹ฌ์€ ๋ชจ๋ธ๋ณด๋‹ค MCP ๊ฐ™์€ ์ธํ„ฐํŽ˜์ด์Šค ๊ณ„์ธต๊ณผ ํŒŒ์ผยท๊ถŒํ•œยท๋ฉ”๋ชจ๋ฆฌ ๊ฐ™์€ sandbox primitive์˜ ์ œ์•ฝ์— ์žˆ์—ˆ๋‹ค.

์‹œ๊ฐ„๋ณ„ ์š”์•ฝ

  1. 0:00
    agent์—๊ฒŒ sandbox๋ฅผ ๊นจ๋ณด๊ฒŒ ํ•œ ์‹คํ—˜ coding agent๋ฅผ ํด๋ผ์šฐ๋“œ sandbox ํ˜ธ์ŠคํŒ… ํ™˜๊ฒฝ์— ๋ถ™์—ฌ ๋ฐค์ƒˆ๋„๋ก ๊นจ๋ณด๊ฒŒ ํ–ˆ๊ณ , ๊ทธ ๊ณผ์ •์—์„œ ์‹ค์ œ๋กœ ์–ด๋–ค ์‹คํŒจ๊ฐ€ ๋‚˜๋Š”์ง€ ํ™•์ธํ•˜๋Š” ์‹คํ—˜์ด ์‹œ์ž‘์ ์ด ๋˜์—ˆ๋‹ค.
  2. 0:37
    Amazon Bedrock AgentCore ๊ฐœ์š” Amazon Bedrock AgentCore๋Š” ์—์ด์ „ํŠธ๋ฅผ ํด๋ผ์šฐ๋“œ์—์„œ ๋งŒ๋“ค๊ณ  ํ˜ธ์ŠคํŒ…ํ•˜๊ธฐ ์œ„ํ•œ ํ”Œ๋žซํผ์œผ๋กœ, identity, memory, runtime environments, sandboxes, gateways๊นŒ์ง€ ํ•จ๊ป˜ ์ œ๊ณตํ•œ๋‹ค.
  3. 0:57
    coding agent๋กœ ๊ณ ๊ฐ์„ ๋ชจ์‚ฌํ•˜๊ธฐ ์‹ค์ œ ๊ณ ๊ฐ์ด ํ”Œ๋žซํผ์„ ์“ฐ๋Š” ๋ฐฉ์‹์„ ์—์ด์ „ํŠธ๋กœ ํ‰๋‚ด ๋‚ด๊ณ , ์‚ฌ๋žŒ์ด ์•„๋‹ˆ๋ผ agent๊ฐ€ ์‹คํ–‰ํ•˜๋Š” ์›Œํฌํ”Œ๋กœ ๊ด€์ ์—์„œ ์„œ๋น„์Šค๋ฅผ ์‹œํ—˜ํ•˜๋Š” ์ ‘๊ทผ์ด ํ•„์š”ํ•˜๋‹ค๋Š” ๋ฌธ์ œ์˜์‹์ด ๋‚˜์˜จ๋‹ค.
  4. 1:37
    MCP ์„œ๋ฒ„๋กœ ํ”Œ๋žซํผ ๊ฐ์‹ธ๊ธฐ Frontier model๊ณผ coding agent๊ฐ€ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ๋‹ค๋ฃฐ ์ˆ˜ ์žˆ๋„๋ก MCP ์„œ๋ฒ„๋ฅผ ๋งŒ๋“ค์–ด ํ™˜๊ฒฝ์„ ๋…ธ์ถœํ–ˆ๊ณ , ์†์œผ๋กœ ๋ช‡ ๊ฐ€์ง€ ๊ธฐ๋ณธ ์ž‘์—…์„ ์‹คํ–‰ํ•˜๋ฉฐ ์ ‘๊ทผ ๊ฐ€๋Šฅํ•œ ๋„๊ตฌ๋ฅผ ๋‹ค๋“ฌ์—ˆ๋‹ค.
  5. 2:27
    10๊ฐœ ๋„๋ฉ”์ธ์— ๊ฑธ์นœ 1,000๊ฐœ ํ…Œ์ŠคํŠธ ์ƒ์„ฑ ๋„“์€ ์‹คํŒจ ์ง€์ ์„ ๋ณด๊ธฐ ์œ„ํ•ด 10๊ฐœ ๋„๋ฉ”์ธ์— ๊ฑธ์ณ 1,000๊ฐœ์˜ ํ…Œ์ŠคํŠธ๋ฅผ ์ƒ์„ฑํ–ˆ๊ณ , ์ž๊ฒฉ ์ฆ๋ช… ๊ด€๋ฆฌ์™€ ์‹คํŒจ ์›์ธ ๊ตฌ๋ถ„ ๊ฐ™์€ ์กฐ๊ฑด๋“ค๋„ ํ•จ๊ป˜ ์‹œํ—˜ํ–ˆ๋‹ค.
  6. 3:02
    ํ…Œ์ŠคํŠธ ํ•˜๋‹ˆ์Šค์™€ SQLite ๊ฒฐ๊ณผ ์ €์žฅ coding agent, MCP ์„œ๋ฒ„, ํด๋ผ์šฐ๋“œ sandbox๋ฅผ ์—ฐ๊ฒฐํ•œ ๋‹จ์ˆœํ•œ ํ•˜๋‹ˆ์Šค๋กœ ์‹คํ—˜์„ ๊ตฌ์„ฑํ•˜๊ณ , ๊ฒฐ๊ณผ๋Š” markdown ํŒŒ์ผ ๋Œ€์‹  SQLite์— ์ €์žฅํ•ด ๋Œ€๊ทœ๋ชจ ๋™์‹œ ์‹คํ–‰๊ณผ ์ง‘๊ณ„๋ฅผ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ–ˆ๋‹ค.
  7. 3:47
    1,000๊ฐœ ์›Œํฌํ”Œ๋กœ๊ฐ€ ๋‹ค๋ฃฌ ๋ฒ”์œ„ ํ…Œ์ŠคํŠธ๋Š” sandbox ์ƒ๋ช…์ฃผ๊ธฐ, ํŒŒ์ผ ์—…ยท๋‹ค์šด๋กœ๋“œ, ์„ฑ๋Šฅ, ํŒจํ‚ค์ง€ ์ž‘์„ฑ, PDF ์ƒ์„ฑ, ์›นํŽ˜์ด์ง€ ์—ด๊ธฐ ๊ฐ™์€ ์‹ค์ œ ๊ณ ๊ฐ ์›Œํฌํ”Œ๋กœ๋ฅผ ํฌ๊ด„ํ–ˆ๊ณ , code sandbox์™€ cloud browser๋Š” ์„œ๋กœ ๋‹ค๋ฅธ ์‹คํŒจ ํŒจํ„ด์„ ๋ณด์˜€๋‹ค.
  8. 5:11
    ์„ธ ๊ฐ€์ง€ ์‹คํŒจ: ์ธ์ฝ”๋”ฉ, null byte, ํŒŒ์ผ ์ด๋ฏธ์ง€ ์—…๋กœ๋“œยท๋‹ค์šด๋กœ๋“œ์˜ ๋ถˆ์ผ์น˜๋Š” MCP ๊ณ„์ธต์˜ ์ธ์ฝ”๋”ฉ ์˜ค๋ฅ˜์˜€๊ณ , null byte๋Š” ํ…Œ์ŠคํŠธ๋ฅผ ํ”๋“ค์—ˆ์œผ๋ฉฐ, ํŠน์ • ๋””๋ ‰ํ„ฐ๋ฆฌ์— ์“ด ํŒŒ์ผ์ด ๋‹ค์‹œ ๋ณด์ด์ง€ ์•Š๋Š” ๋ฌธ์ œ๋Š” sandbox ๊ณ„์ธต์˜ ๊ฒฐํ•จ์œผ๋กœ ๋“œ๋Ÿฌ๋‚ฌ๋‹ค.
  9. 6:11
    ์ธํ„ฐํŽ˜์ด์Šค ๊ณ„์ธต๊ณผ sandbox ๊ณ„์ธต ๊ตฌ๋ถ„ ์‹คํŒจ๋ฅผ ์ธํ„ฐํŽ˜์ด์Šค์™€ sandbox ๊ณ„์ธต์œผ๋กœ ๋‚˜๋ˆ„์–ด ๋ด์•ผ ์›์ธ์„ ๋ถ„๋ฆฌํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์—์ด์ „ํŠธ ์›Œํฌ๋กœ๋“œ๋Š” API ์„œ๋น„์Šค๋ณด๋‹ค ํ›จ์”ฌ ๋‹ค์–‘ํ•œ ๋ฉ”๋ชจ๋ฆฌยทCPUยท๊ถŒํ•œยทํŒŒ์ผ์‹œ์Šคํ…œ ์กฐ๊ฑด์„ ์š”๊ตฌํ•œ๋‹ค.
  10. 7:51
    code sandbox์™€ cloud browser์˜ ์‹คํŒจ ์ฐจ์ด cloud browser๋Š” ํƒญ์„ ๋งŽ์ด ์—ด๋ฉด ๋ฉ”๋ชจ๋ฆฌ ๋ถ€์กฑ์œผ๋กœ ์ž์ฃผ ์‹คํŒจํ–ˆ๊ณ , ์‹คํŒจ ์›์ธ์€ ํŒŒ์ผ์‹œ์Šคํ…œ ๊ถŒํ•œยท๋งˆ์šดํŠธยท์˜์†์„ฑ ๊ฐ™์€ sandbox primitive์— ์ˆ˜๋ ดํ–ˆ๋‹ค.
  11. 9:16
    sandbox primitive: seccomp, eBPF, ๊ถŒํ•œ seccomp, eBPF, kernel capabilities, ํŒŒ์ผ ์‹คํ–‰ ๊ถŒํ•œ ๊ฐ™์€ ํ•˜์œ„ ์ œ์•ฝ์ด ์—์ด์ „ํŠธ์˜ ํ”„๋กœ์„ธ์Šค ์ƒ์„ฑ, ํŒจํ‚ค์ง€ ์„ค์น˜, ๋‚ด๋ถ€ API ํ˜ธ์ถœ ๊ฐ€๋Šฅ ์—ฌ๋ถ€๋ฅผ ์ขŒ์šฐํ•˜๋ฉฐ ์ž‘์—… ์„ฑ๊ณต๋ฅ ์— ์ง์ ‘ ์˜ํ–ฅ์„ ์ค€๋‹ค.
  12. 10:55
    LLM ์ƒ์„ฑ ํ…Œ์ŠคํŠธ์˜ ํ•œ๊ณ„ LLM์€ ๋‹จ์œ„ ํ…Œ์ŠคํŠธ๋‚˜ ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ๋ฅผ ์ž˜ ๋งŒ๋“ค์–ด๋‚ผ ์ˆ˜ ์žˆ์ง€๋งŒ, ๋‚ฎ์€ ์ˆ˜์ค€์˜ ํ™˜๊ฒฝ ์ œ์•ฝ์ด ๋ชฉํ‘œ ๋‹ฌ์„ฑ์„ ๋ง‰๋Š” ๋ฌธ์ œ๊นŒ์ง€๋Š” ์‰ฝ๊ฒŒ ๋“œ๋Ÿฌ๋‚ด์ง€ ๋ชปํ•˜๋ฏ€๋กœ fuzz testing์ด ๋” ํšจ๊ณผ์ ์ด๋‹ค.
  13. 12:00
    ๋กœ์ปฌ๊ณผ ์›๊ฒฉ ์—์ด์ „ํŠธ ํ™˜๊ฒฝ ๋กœ์ปฌ์—์„œ๋Š” ์ž˜ ๋˜๋˜ MCP ๋„๊ตฌ์™€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์›๊ฒฉ sandbox์—์„œ๋Š” ๊ฐ™์ง€ ์•Š์„ ์ˆ˜ ์žˆ๊ณ , ์ž‘์—… ๊ทœ๋ชจ๊ฐ€ ์ปค์งˆ์ˆ˜๋ก ๋…ธํŠธ๋ถ ํ•œ๊ณ„๋ฅผ ๋„˜์–ด์„œ ์›๊ฒฉ ํ™˜๊ฒฝ์œผ๋กœ ์˜ฎ๊ธธ ํ•„์š”๊ฐ€ ์ƒ๊ธด๋‹ค.
  14. 12:35
    AgentCore sandbox์— SSH ์ ‘์†ํ•˜๊ธฐ ์‚ฌ์šฉ์ž๊ฐ€ sandbox ๋‚ด๋ถ€๋ฅผ ์ง์ ‘ ๋“ค์—ฌ๋‹ค๋ณด๊ณ  ๋ฌธ์ œ๋ฅผ ์ถ”์ ํ•  ์ˆ˜ ์žˆ๋„๋ก SSH ์ ‘๊ทผ์„ ์ œ๊ณตํ–ˆ์œผ๋ฉฐ, ์ด๋Š” ์—์ด์ „ํŠธ๊ฐ€ ์™œ ์ œ๋Œ€๋กœ ์‹คํ–‰๋˜์ง€ ์•Š๋Š”์ง€ ํ™•์ธํ•˜๋Š” ๋ฐ ์ค‘์š”ํ•œ ์ˆ˜๋‹จ์ด ๋œ๋‹ค.
  15. 13:25
    SWE-bench ์ต์Šคํ”Œ๋กœ์ž‡๊ณผ ๋ง๊ฐ€์ง„ ๋„๊ตฌ ์ ์ ˆํ•œ ํ™˜๊ฒฝ ์ œ์–ด์™€ ์ต์Šคํ”Œ๋กœ์ž‡์ด ์žˆ์œผ๋ฉด SWE-bench ์ ์ˆ˜๊ฐ€ ํฌ๊ฒŒ ๋‹ฌ๋ผ์งˆ ์ˆ˜ ์žˆ๊ณ , ๋ฐ˜๋Œ€๋กœ ๋„๊ตฌ๊ฐ€ ๊นจ์ง„ ์ƒํƒœ์—์„œ๋Š” ๋™์ผํ•œ ์—์ด์ „ํŠธ๋„ ์„ฑ๋Šฅ์ด ๊ธ‰๊ฒฉํžˆ ๋–จ์–ด์ง„๋‹ค.
  16. 14:10
    ์›๊ฒฉ์œผ๋กœ sandbox๋ฅผ fuzz ํ…Œ์ŠคํŠธํ•˜๋ผ ์—์ด์ „ํŠธ๋ฅผ sandbox์—์„œ ์šด์˜ํ•  ๋•Œ๋Š” ๋กœ์ปฌ ํ™•์ธ๋งŒ์œผ๋กœ๋Š” ๋ถ€์กฑํ•˜๋ฉฐ, ๋‹ค์–‘ํ•œ ๋„๋ฉ”์ธ ์›Œํฌํ”Œ๋กœ๋กœ ์›๊ฒฉ fuzz testing์„ ํ•ด์•ผ ์ˆจ์€ ์ œ์•ฝ๊ณผ ์ทจ์•ฝ์ ์„ ์ฐพ์„ ์ˆ˜ ์žˆ๋‹ค.

์‹ค๋ฌด ์ธ์‚ฌ์ดํŠธ

  • ์—์ด์ „ํŠธ ์‹คํŒจ๋ฅผ ๋ชจ๋ธ ๋Šฅ๋ ฅ ๋ฌธ์ œ๋กœ๋งŒ ๋ณด์ง€ ๋ง๊ณ , MCPยท๊ถŒํ•œยทํŒŒ์ผ์‹œ์Šคํ…œยท๋ฉ”๋ชจ๋ฆฌ ๊ฐ™์€ ์‹คํ–‰ ํ™˜๊ฒฝ ๊ณ„์ธต๋ณ„๋กœ ๋ถ„ํ•ดํ•ด ๊ด€์ฐฐํ•ด์•ผ ์›์ธ์„ ๋น ๋ฅด๊ฒŒ ์ขํž ์ˆ˜ ์žˆ๋‹ค.
  • ์‹ค์„œ๋น„์Šค์— ๊ฐ€๊นŒ์šด ํ…Œ์ŠคํŠธ๋ฅผ ํ•˜๋ ค๋ฉด ๋‹จ์ผ ์‹œ๋‚˜๋ฆฌ์˜ค๋ณด๋‹ค ์—…๋กœ๋“œ, ๋‹ค์šด๋กœ๋“œ, ๋กœ๊ทธ์ธ, ์Šคํฌ๋ž˜ํ•‘, ํŒจํ‚ค์ง€ ์‹คํ–‰์ฒ˜๋Ÿผ ์‹ค์ œ ๊ณ ๊ฐ ์›Œํฌํ”Œ๋กœ๋ฅผ ๋„“๊ฒŒ ๋ฎ๋Š” fuzz ํ…Œ์ŠคํŠธ๊ฐ€ ํšจ๊ณผ์ ์ด๋‹ค.
  • ์›๊ฒฉ sandbox๋ฅผ ์šด์˜ํ•˜๋Š” ํŒ€์€ SSH๋‚˜ ์œ ์‚ฌํ•œ ๊ด€์ธก ๊ฒฝ๋กœ๋ฅผ ์ œ๊ณตํ•ด ์—์ด์ „ํŠธ๊ฐ€ ์–ด๋–ค ์ œ์•ฝ์— ๊ฑธ๋ฆฌ๋Š”์ง€ ์ง์ ‘ ํ™•์ธํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์•ผ ํ•œ๋‹ค.