--- id: P-REINFORCE-AUTO-4C10C5 category: "10_Wiki/๐Ÿ’ก Topics/AI" confidence_score: 0.90 tags: [auto-reinforced] last_reinforced: 2026-04-20 github_commit: "[P-Reinforce] Continuous Worker - SAST (์ •์  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ณด์•ˆ ํ…Œ์ŠคํŠธ)" --- # [[SAST (แ„Œแ…ฅแ†ผแ„Œแ…ฅแ†จ แ„‹แ…ขแ„‘แ…ณแ†ฏแ„…แ…ตแ„แ…ฆแ„‹แ…ตแ„‰แ…งแ†ซ แ„‡แ…ฉแ„‹แ…กแ†ซ แ„แ…ฆแ„‰แ…ณแ„แ…ณ)|SAST (์ •์  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ณด์•ˆ ํ…Œ์ŠคํŠธ)]] ## ๐Ÿ“Œ ํ•œ ์ค„ ํ†ต์ฐฐ (The Karpathy Summary) > SAST(์ •์  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ณด์•ˆ ํ…Œ์ŠคํŠธ)๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹คํ–‰ํ•˜์ง€ ์•Š๊ณ  ์†Œ์Šค ์ฝ”๋“œ๋‚˜ ๋ฐ”์ดํŠธ์ฝ”๋“œ ์ž์ฒด๋ฅผ ๋ถ„์„ํ•˜์—ฌ ์ž ์žฌ์ ์ธ ๋ณด์•ˆ ์ทจ์•ฝ์ ์„ ์ฐพ์•„๋‚ด๋Š” ํ™”์ดํŠธ๋ฐ•์Šค ํ…Œ์ŠคํŠธ(White-box testing) ๊ธฐ๋ฒ•์ž…๋‹ˆ๋‹ค [1]. ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ์ˆ˜๋ช… ์ฃผ๊ธฐ(SDLC)์˜ ์ดˆ๊ธฐ ๋‹จ๊ณ„์— ํ†ตํ•ฉ๋˜์–ด ๊ฒฐํ•จ์„ ์‚ฌ์ „์— ์‹๋ณ„ํ•˜๊ณ  ์กฐ์น˜ํ•จ์œผ๋กœ์จ ๋ณด์•ˆ ๋ฌธ์ œ๋ฅผ ๋น ๋ฅด๊ณ  ์ €๋ ดํ•˜๊ฒŒ ํ•ด๊ฒฐํ•˜๋Š” '์‹œํ”„ํŠธ ๋ ˆํ”„ํŠธ(Shift-Left)' ์ ‘๊ทผ๋ฒ•์˜ ํ•ต์‹ฌ์ž…๋‹ˆ๋‹ค [2-4]. ์ตœ๊ทผ์—๋Š” ์ „ํ†ต์ ์ธ ๊ทœ์น™ ๊ธฐ๋ฐ˜์˜ ํ•œ๊ณ„๋ฅผ ๊ทน๋ณตํ•˜๊ธฐ ์œ„ํ•ด ๋จธ์‹ ๋Ÿฌ๋‹๊ณผ LLM์„ ๊ฒฐํ•ฉํ•˜์—ฌ ์ฝ”๋“œ์˜ ๋ฌธ๋งฅ์„ ์ดํ•ดํ•˜๊ณ  ์˜คํƒ์„ ์ค„์ด๋Š” AI ๊ธฐ๋ฐ˜ SAST๋กœ ๋ฐœ์ „ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค [5, 6]. ## ๐Ÿ“– ๊ตฌ์กฐํ™”๋œ ์ง€์‹ (Synthesized Content) * **ํƒ์ง€ ์˜์—ญ ๋ฐ ์ž‘๋™ ๋ฐฉ์‹:** SAST๋Š” ์ฝ”๋“œ๊ฐ€ ์‹คํ–‰๋˜๊ธฐ ์ „ ๊ตฌ๋ฌธ, ๊ตฌ์กฐ, ์ œ์–ด ๋ฐ ๋ฐ์ดํ„ฐ ํ๋ฆ„์„ ์ •์ ์œผ๋กœ ๋ถ„์„ํ•ฉ๋‹ˆ๋‹ค [1, 7]. ์ด ๊ฒ€์‚ฌ๋ฅผ ํ†ตํ•ด SQL ์ธ์ ์…˜, ํฌ๋กœ์Šค ์‚ฌ์ดํŠธ ์Šคํฌ๋ฆฝํŒ…(XSS), ํ•˜๋“œ์ฝ”๋”ฉ๋œ ๋ฏผ๊ฐ์ •๋ณด(๋น„๋ฐ€๋ฒˆํ˜ธ ๋ฐ API ํ‚ค), ๊ฒฝ๋กœ ํƒ์ƒ‰, ๋ถˆ์ถฉ๋ถ„ํ•œ ์ž…๋ ฅ ๊ฒ€์ฆ ๋“ฑ ๋‹ค์–‘ํ•œ ๋ณด์•ˆ ๊ฒฐํ•จ์„ ์‹๋ณ„ํ•ฉ๋‹ˆ๋‹ค [2, 8, 9]. * **์ฃผ์š” ์ด์ :** * **๋น ๋ฅด๊ณ  ๋…๋ฆฝ์ ์ธ ๋ถ„์„:** ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋ฅผ ์„ค๊ณ„ํ•˜๊ฑฐ๋‚˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹คํ–‰ํ•  ํ•„์š”๊ฐ€ ์—†์–ด ์ „์ฒด ์ฝ”๋“œ๋ฒ ์ด์Šค๋ฅผ ์‹ ์†ํ•˜๊ฒŒ ์Šค์บ”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค [10]. * **์ •ํ™•ํ•œ ์œ„์น˜ ์•ˆ๋‚ด:** ์ทจ์•ฝ์ ์ด ๋ฐœ์ƒํ•œ ์†Œ์Šค ์ฝ”๋“œ์˜ ์ •ํ™•ํ•œ ํŒŒ์ผ ๋ฐ ์ค„ ๋ฒˆํ˜ธ์™€ ๋ฐ์ดํ„ฐ ํ๋ฆ„์„ ์งš์–ด์ฃผ์–ด ๊ฐœ๋ฐœ์ž๊ฐ€ ์ฆ‰๊ฐ์ ์œผ๋กœ ๋ฌธ์ œ๋ฅผ ํŒŒ์•…ํ•˜๊ณ  ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋•์Šต๋‹ˆ๋‹ค [10]. * **์ „ํ†ต์ ์ธ SAST์˜ ํ•œ๊ณ„์ :** * ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์‹คํ–‰ ๋Ÿฐํƒ€์ž„์˜ ์ปจํ…์ŠคํŠธ๋‚˜ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์˜ ์˜๋„๋ฅผ ์™„๋ฒฝํžˆ ์ดํ•ดํ•˜์ง€ ๋ชปํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋‹ค์ˆ˜์˜ ์˜คํƒ(False Positives)๊ณผ ๋ฏธํƒ(False Negatives)์„ ๋ฐœ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค [11]. * ๋ถ„์„์ด ์‚ฌ์šฉ๋œ ํŠน์ • ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์˜ ์ง€์› ์—ฌ๋ถ€์— ํฌ๊ฒŒ ์ข…์†๋œ๋‹ค๋Š” ๋‹จ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค [11]. * **AI ๋„ค์ดํ‹ฐ๋ธŒ(AI-native) SAST์˜ ๋“ฑ์žฅ:** * ๊ธฐ์กด์˜ ๋‹จ์ˆœ ํŒจํ„ด ๋งค์นญ ๊ทœ์น™์„ ๋„˜์–ด ๋จธ์‹ ๋Ÿฌ๋‹์„ ๋„์ž…ํ•œ ์ตœ์‹  SAST ์—”์ง„(์˜ˆ: Snyk Code์˜ DeepCode AI, Corgea ๋“ฑ)์€ ์ˆ˜๋ฐฑ๋งŒ ๊ฑด์˜ ์‹ค์ œ ์˜คํ”ˆ์†Œ์Šค ์ปค๋ฐ‹๊ณผ ์ˆ˜์ • ํŒจํ„ด์„ ํ•™์Šตํ•˜์—ฌ ์ฝ”๋“œ์˜ ์˜๋ฏธ๋ฅผ ํŒŒ์•…ํ•ฉ๋‹ˆ๋‹ค [6, 12, 13]. * ์—ฌ๋Ÿฌ ๋ชจ๋“ˆ์ด๋‚˜ ํ•จ์ˆ˜ ๊ฒฝ๊ณ„๋ฅผ ๋„˜์–ด ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”์ ํ•˜๋Š” ํŒŒ์ผ ๊ฐ„ ๋ถ„์„(Interfile analysis)์ด ๊ฐ€๋Šฅํ•ด์กŒ์œผ๋ฉฐ, ํƒ์ง€๋œ ์ทจ์•ฝ์ ์— ๋Œ€ํ•ด AI๊ฐ€ ์ž๋™ ์ˆ˜์ • ์ฝ”๋“œ(Auto-remediation)๋ฅผ ์ œ์•ˆํ•˜๊ณ , ๊ฐœ๋ฐœ์ž์—๊ฒŒ ๋ถˆํ•„์š”ํ•œ ๊ฒฝ๊ณ ๋ฅผ ์ค„์—ฌ์ค๋‹ˆ๋‹ค [14-17]. * **ํƒ€ ๋ณด์•ˆ ํ…Œ์ŠคํŠธ์™€์˜ ์—ฐ๊ณ„:** SAST๋Š” ์ž‘๋™ ์ค‘์ธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์™ธ๋ถ€์—์„œ ๋Ÿฐํƒ€์ž„ ๋ฌธ์ œ๋ฅผ ์ง„๋‹จํ•˜๋Š” DAST(๋™์  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ณด์•ˆ ํ…Œ์ŠคํŠธ), ์„œ๋“œํŒŒํ‹ฐ ์˜คํ”ˆ์†Œ์Šค ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ์ทจ์•ฝ์ ์„ ์Šค์บ”ํ•˜๋Š” SCA(์†Œํ”„ํŠธ์›จ์–ด ๊ตฌ์„ฑ ๋ถ„์„) ๋“ฑ๊ณผ ํ•จ๊ป˜ ์‚ฌ์šฉ๋  ๋•Œ ์ƒํ˜ธ ๋ณด์™„์ ์œผ๋กœ ์ „์ฒด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ณด์•ˆ์„ ๊ทน๋Œ€ํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค [7, 18-20]. ## โš ๏ธ ๋ชจ์ˆœ ๋ฐ ์—…๋ฐ์ดํŠธ (Contradictions & RL Update) - **๊ณผ๊ฑฐ ๋ฐ์ดํ„ฐ์™€์˜ ์ถฉ๋Œ:** ์ž๋™ํ™” ์—”์ง„์— ์˜ํ•ด ๋งคํ•‘๋œ ์ง€์‹์œผ๋กœ, ์ถ”ํ›„ ์ •๋ฐ€ ๊ฒ€์ฆ ํ•„์š”. - **์ •์ฑ… ๋ณ€ํ™”:** AI ๋ถ„์•ผ์˜ ์ž๋™ ์ž์‚ฐํ™” ์ˆ˜ํ–‰. ## ๐Ÿ”— ์ง€์‹ ์—ฐ๊ฒฐ (Graph) - **Related Topics:** [[DAST (แ„ƒแ…ฉแ†ผแ„Œแ…ฅแ†จ แ„‹แ…ขแ„‘แ…ณแ†ฏแ„…แ…ตแ„แ…ฆแ„‹แ…ตแ„‰แ…งแ†ซ แ„‡แ…ฉแ„‹แ…กแ†ซ แ„แ…ฆแ„‰แ…ณแ„แ…ณ)|DAST (๋™์  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ณด์•ˆ ํ…Œ์ŠคํŠธ)]], [[SCA (แ„‰แ…ฉแ„‘แ…ณแ„แ…ณแ„‹แ…ฐแ„‹แ…ฅ แ„€แ…ฎแ„‰แ…ฅแ†ผ แ„‡แ…ฎแ†ซแ„‰แ…ฅแ†จ)|SCA (์†Œํ”„ํŠธ์›จ์–ด ๊ตฌ์„ฑ ๋ถ„์„)]], [[แ„‰แ…ตแ„‘แ…ณแ„แ…ณ แ„…แ…ฆแ„‘แ…ณแ„แ…ณ (Shift-Left)|์‹œํ”„ํŠธ ๋ ˆํ”„ํŠธ (Shift-Left)]], [[แ„‹แ…ฉแ„แ…กแ†ท (False Positive)|์˜คํƒ (False Positive)]], [[แ„แ…ฉแ„ƒแ…ณ แ„…แ…ตแ„‡แ…ฒ (Code Review)|์ฝ”๋“œ ๋ฆฌ๋ทฐ (Code Review)]] - **Projects/Contexts:** Snyk Code, [[Corgea|Corgea]], [[SonarQube|SonarQube]], [[แ„‰แ…ฉแ„‘แ…ณแ„แ…ณแ„‹แ…ฐแ„‹แ…ฅ แ„€แ…ขแ„‡แ…กแ†ฏ แ„‰แ…ฎแ„†แ…งแ†ผ แ„Œแ…ฎแ„€แ…ต (SDLC)|์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ์ˆ˜๋ช… ์ฃผ๊ธฐ (SDLC)]] - **Contradictions/Notes:** ์†Œ์Šค์— ๋”ฐ๋ฅด๋ฉด ์ˆ˜๋™ ์ฝ”๋“œ ๋ฆฌ๋ทฐ๋Š” ๋ฌธ๋งฅ๊ณผ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง, ์•„ํ‚คํ…์ฒ˜๋ฅผ ๊นŠ์ด ์ดํ•ดํ•˜์ง€๋งŒ ์†๋„๊ฐ€ ๋А๋ฆฌ๊ณ  ๋น„์šฉ์ด ํฐ ๋ฐ˜๋ฉด, ์ž๋™ํ™”๋œ SAST ๋„๊ตฌ๋Š” ๋งค์šฐ ๋น ๋ฅด๊ณ  ์ผ๊ด€์ ์ด์ง€๋งŒ ์ฝ”๋“œ์˜ ์˜๋„๋ฅผ ํŒŒ์•…ํ•˜์ง€ ๋ชปํ•ด ์˜คํƒ์ด ๋ฐœ์ƒํ•œ๋‹ค๋Š” ๋šœ๋ ทํ•œ ๋Œ€๋น„๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค [21-23]. ์ด์— ๋”ฐ๋ผ 2025๋…„์˜ ๋ชจ๋ฒ” ์‚ฌ๋ก€๋Š” SAST์™€ ๊ฐ™์€ ์ž๋™ํ™” ์Šค์บ” ๋„๊ตฌ๋กœ ์ฝ”๋“œ ์Šคํƒ€์ผ๊ณผ ์ผ๋ฐ˜์ ์ธ ๋ณด์•ˆ ๊ฒฐํ•จ์„ 1์ฐจ์ ์œผ๋กœ ๊ฑธ๋Ÿฌ๋‚ด๊ณ , ์ธ๊ฐ„ ๊ฒ€ํ† ์ž๋Š” ์ž๋™ํ™”๊ฐ€ ๋†“์น˜๋Š” ํ•ต์‹ฌ ๋กœ์ง ๋ฐ ํฌ๋กœ์Šค ์„œ๋น„์Šค ์˜ํ–ฅ๋„ ํ‰๊ฐ€์— ์ง‘์ค‘ํ•˜๋Š” 'ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ์ฝ”๋“œ ๋ฆฌ๋ทฐ' ๋ชจ๋ธ์„ ์ฑ„ํƒํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค [21, 24, 25]. --- *Last updated: 2026-04-18* - Raw Source: 00_Raw/2026-04-20/SAST (์ •์  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ณด์•ˆ ํ…Œ์ŠคํŠธ).md ---