492. DAST (Dynamic Application Security Testing) - 런타임 환경에 공격 페이로드 주입 분석 (블랙박스)
핵심 인사이트 (3줄 요약)
- 본질: DAST(동적 애플리케이션 보안 테스팅)는 소스코드를 까보지 않고, 실제 해커가 밖에서 인터넷을 통해 살아 숨 쉬는 웹 서버(런타임 환경)를 향해 미친 듯이 수만 개의 가짜 폭탄(공격 페이로드)을 쏴보며 서버가 뻗는지(Crash) 확인하는 블랙박스(Black-box) 파괴 공격 훈련이다.
- 가치: SAST(정적 분석)가 텍스트만 보고 "이거 에러 날 것 같아(오탐 천국)"라며 설레발을 치는 놈이라면, DAST는 진짜 때려보고 코피(500 에러)가 터지는 놈만 잡아내기 때문에 **"오탐률(False Positive) 제로(0)에 수렴하는, 실제로 해커에게 100% 당할 수밖에 없는 진짜 취약점만 완벽하게 증명"**해 내는 실전 타격기다.
- 융합: 파이프라인의 뒷단인 **QA/Staging 테스트 환경(시프트 라이트 관점)**에서 발동되며, 퍼즈 테스팅(Fuzzing) 기술과 결합하여 인간 모의 해커를 자동화된 스크립트 봇(ZAP, Burp Suite)으로 완벽하게 대체해 버리는 DevSecOps의 최종 돌격대 역할로 융합된다.
Ⅰ. 개요 및 필요성 (Context & Necessity)
-
개념: DAST는 소스코드를 절대 보지 않는다(눈을 감고 쏜다). 대신 앱을 서버에 띄운다(Runtime). 스캐너 툴(ZAP 등)이 웹 브라우저처럼 행동하며, 쇼핑몰 게시판의 검색창을 찾아낸다. 그리고 검색어 대신
<script>alert(1)</script>(XSS 공격)나' OR 1=1(SQL 공격) 같은 독극물 데이터(Payload)를 1초에 1만 번씩 날려본다. 서버가 에러를 뱉거나 뚫리면 "어? 여기 뚫렸다!"라고 팩트 리포트를 출력한다. -
필요성: SAST(정적 분석기)만 썼더니 거짓 경고(오탐)가 5만 개나 떠서 개발자들이 쌍욕을 하며 스캐너 코드를 뽑아버렸다. 게다가 SAST는 소스코드(로직)만 보지, "웹 서버의 방화벽이 어떻게 쳐져 있는지, 톰캣 서버의 포트(Port) 설정이 틀렸는지"와 같은 '인프라 환경(Runtime Environment)'의 구멍은 절대 찾을 수 없다. 개발자가 완벽하게 짠 코드라도, 운영 서버의 아파치 설정이 뚫려있으면 털리는 법이다. 이 때문에 실제 서버가 켜진 상태에서 밖에서 문을 걷어차 보는 진짜 도둑질 시뮬레이션이 100% 필수적이다.
-
💡 비유: DAST는 **'자동차 충돌 크래시 테스트'**와 똑같습니다. SAST가 공장에서 도면과 나사(소스코드)를 엑스레이로 쳐다보며 "튼튼하네!"라고 박수 치는 거라면, DAST는 그렇게 만든 차에 더미 인형을 태우고 진짜 시속 100km로 벽에 갖다 쳐박아버리는 짓입니다. 도면엔 완벽했는데 쳐박아보니 에어백이 안 터집니다(런타임 환경 에러). 진짜 피를 흘려봐야만 아는 팩트를 증명하는 가장 확실한 맷집 검증입니다.
-
등장 배경 및 발전 과정:
- 초기 모의 해킹 노가다: 과거엔 비싼 화이트해커를 1주일 고용해서 손으로 직접 키보드를 치게 했다(수동 DAST).
- 자동화 스캐너의 붐 (2000년대 중반): 해커들이 치는 단골 해킹 패턴 1만 개(Payload)를 모아놓고, 기계가 밤새도록 버튼을 누르며 대신 폭격을 쏴주는
Burp Suite나OWASP ZAP같은 위대한 DAST 툴이 상용화되었다. - DevSecOps 파이프라인 합체 (현재): 젠킨스가 빌드를 끝내고 QA 서버(Docker)를 띄우자마자, DAST 툴이 1시간 동안 무자비하게 폭격하고 젠킨스 파이프라인을 부숴버리며 배포를 컷오프(Fail)시키는 파이프라인 자동화의 끝판왕이 되었다.
-
📢 섹션 요약 비유: SAST가 **'공항 엑스레이 검색대'**라면, DAST는 **'경비견 셰퍼드를 풀어놓기'**입니다. 엑스레이(SAST)는 가방 속의 철(코드) 모양은 잘 보지만 밀봉된 마약 냄새(환경 설정)는 못 찾습니다. 경비견(DAST)은 가방 속은 안 봐도, 밖에서 킁킁대며 냄새(실제 반응)를 맡고 독이 든 가방만 정확히 물어뜯어 갈기갈기 찢어버리는 실전 짐승입니다.
Ⅱ. 아키텍처 및 핵심 원리 (Deep Dive)
1. DAST 폭격의 3단계 파이프라인 아키텍처
DAST 로봇은 눈먼 좀비가 아니다. 치밀하게 시스템의 뼈대를 스캔하고 때린다.
- 크롤링 및 스파이더링 (Crawling & Spidering)
- 탐색전: DAST 봇이
http://shop.com에 처음 들어간다. 구글 검색 봇처럼 사이트 내의 모든 링크, 숨겨진 관리자 버튼, 게시판 페이징 버튼 등 **해킹할 수 있는 모든 구멍(Attack Surface)**의 지도를 싹 다 그린다. (이때 수천 개의 URL 트리가 만들어짐)
- 탐색전: DAST 봇이
- 페이로드 주입 (Fuzzing / Payload Injection) 💥 핵심
- 폭격: 찾아낸 1,000개의 구멍(ID 입력창, 검색창 등)에 족보에 있는 악성 스크립트(Payload) 10,000개를 모조리 다 쑤셔 넣어본다.
id=1대신id=1' AND SLEEP(5) --같은 블라인드 인젝션을 날려본다.
- 분석 및 팩트 리포팅 (Analysis & Triage)
- 판정: 독극물을 쐈는데 서버가
200 OK나500 Error를 뱉으며 시뻘건 서버 에러 코드(DB 경로 등)를 토해낸다? ➡ "오! 뚫렸다!" - 스캐너는 자기가 쏜 독과 서버의 반응을 교차 검증하여 "URL /board/search 경로에 XSS 100% 뚫림" 이라는 피비린내 나는 영수증을 개발자에게 발급한다.
- 판정: 독극물을 쐈는데 서버가
2. DAST의 치명적 약점: "그래서 어딜 고치라고?"
DAST는 완벽한 팩트를 잡지만, 아키텍트 입장에서 혈압이 오르는 한계가 있다.
-
원인(코드 라인) 파악 불가: SAST는 "너
UserController.java의 45번 줄 틀렸어!"라고 코드를 딱 집어준다. 하지만 DAST는 밖에서 블랙박스로 때렸기 때문에 **"어? /search URL 뚫리던데? 근데 네 소스코드 파일 1만 개 중에 어딜 고쳐야 하는지는 난 몰라 ㅋ 알아서 찾아~"**라고 뺑소니 리포트만 던져두고 도망간다. 이 때문에 DAST 에러를 수정(Patch)하는 리드타임은 굉장히 오래 걸린다. -
인증의 벽(Login Barrier): DAST 봇은 바보다. 로그인 페이지에 캡차(CAPTCHA)나 MFA(지문인증)가 걸려있으면 문을 못 열고 밖에서만 때리다 끝난다. (그래서 DAST 돌릴 땐 봇 전용 마스터 토큰이나 세션을 강제로 뚫어줘야 한다.)
-
📢 섹션 요약 비유: DAST는 **'옆집에서 던진 돌팔매질'**과 같습니다. 돌(페이로드)을 휙 던져서 우리 집 유리창(URL)이 와장창 깨졌습니다(해킹 성공). 확실히 깨진 팩트는 증명됐지만, "유리창을 만든 유리가공소(소스코드)의 배합 비율이 틀렸는지, 실리콘(DB)이 썩었는지" 그 원인은 돌을 던진 놈은 절대 모릅니다. 집주인(개발자)이 유리창 파편을 주워 들고 밤을 새워 원인을 추적해야 합니다.
Ⅲ. 융합 비교 및 다각도 분석
1. 천적의 공조: SAST (정적) vs DAST (동적)
왜 글로벌 1티어 기업들은 돈을 이중으로 써가며 이 두 개를 섞어 쓰는가? 서로의 약점을 100% 가려주기 때문이다.
| 비교 척도 | SAST (정적 분석 / 도면 검사) | DAST (동적 분석 / 실전 타격) |
|---|---|---|
| 검사 타이밍 | 코딩할 때 (맨 왼쪽, Shift-Left) | 서버 띄우고 테스트할 때 (오른쪽, Shift-Right 관점) |
| 장점 (가치) | 에러 난 "코드 라인 번호"를 1초 만에 짚어줌. 버그 수정 비용이 매우 저렴함. | 인프라 설정 오류까지 잡아냄. 오탐(가짜 경고)이 없어서 발견되면 100% 진짜 치명상. |
| 단점 (한계) | 실행 환경(서버/DB)을 몰라서 가짜 알람(False Positive)이 수만 개 터져 피곤함. | 테스트가 엄청 느림(수 시간). 터져도 코드 어디를 고칠지 안 알려줘서 빡침. |
| 탐지 불가 영역 | 환경 설정 오류 (A05 Security Misconfig) | 숨겨진 코드 (백도어, 주석 등 실행 안 되는 찌꺼기) |
과목 융합 관점
-
소프트웨어 공학 (블랙박스 테스팅, Black-box Testing): DAST의 학문적 뿌리다. 소프트웨어 공학에서 블랙박스 테스트는 "내부 소스코드(if문, for문)는 1도 관심 없고, 그냥 쓰레기 입력값 10을 넣었을 때 에러값 -10이 나오면 통과(또는 실패)"라는 사상이다. 이를 보안 영역으로 극대화하여 10만 개의 악성 페이로드를 쑤셔 박는 자동화 기법으로 융합된 것이 바로 DAST다.
-
클라우드 데브옵스 (Ephemeral Environment, 임시 환경): 과거 DAST의 최대 문제는 "라이브 서버를 때리면 데이터가 다 망가져요!" 였다. 그래서 아키텍트는 데브옵스와 융합하여 기가 막힌 파이프라인을 짰다. 젠킨스가 빌드를 마치면, 도커(Docker)를 이용해 라이브와 똑같은 가짜 서버(임시 환경)를 허공에 1초 만에 띄운다. DAST가 이 서버에 1시간 동안 미친 듯이 핵폭탄을 쏘아 부수며 리포트를 뽑아낸다. 끝나면 젠킨스가 이 쑥대밭이 된 도커 컨테이너를 가차 없이 킬(Kill)해버려 휴지통에 버린다. 라이브 서버의 평화와 완벽한 해킹 테스트를 동시에 잡은 극강의 아키텍처다.
-
📢 섹션 요약 비유: SAST가 자동차 공장에서 엔진 도면(코드)의 결함을 찾는 것이라면, DAST는 다 조립된 차를 고속도로에 올려놓고 엑셀을 미친 듯이 밟으며 **타이어가 빠지는지 덜컹거리는지(런타임)**를 몸으로 느끼는 것입니다. 도면엔 멀쩡했는데 타이어 나사를 덜 조였다면(인프라 설정 오류) 오직 달리는(DAST) 차에서만 발견됩니다. 둘 중 하나라도 빼먹으면 완벽한 자동차는 나오지 않습니다.
Ⅳ. 실무 적용 및 기술사적 판단
실무 시나리오
-
시나리오 — 운영 서버(Production)를 무지성으로 DAST 폭격한 주니어의 만행: 신입 사원이 "우리 회사 라이브 서버 진짜 안전한가?" 궁금해서 툴(Burp Suite)을 켜고 사내 라이브 도메인(shop.com)에 DAST 자동화 폭격을 1만 번 날렸다(Fire and Forget). 다음 날, 회사 게시판 DB에는 해커가 쓴 것 같은 쓰레기 글(
<script>alert(1)</script>) 1만 개가 쌓였고, '게시글 전체 삭제 API'를 봇이 건드리는 바람에 진짜 고객 리뷰가 다 지워지는 대참사가 났다.- 아키텍트의 해결책: **운영 환경(Live)을 향한 무분별한 DAST의 파멸적 부수 효과(Side-effect)**다. DAST는 데이터베이스(DB)를 강간한다. 아키텍트는 1) DAST는 무조건 라이브가 아닌 똑같이 복제된 격리된 Staging/QA 환경에서만 돌리게 인프라 방화벽 정책(IP White-list)으로 강제해야 한다. 2) 라이브 서버를 칠 일이 있다면, 절대 데이터를 변경하는 POST/DELETE 요청을 금지하고, 오직 읽기 전용(GET) 스캔만 허용하는 Read-Only 프로파일을 장착시켜 수동(Manual)으로만 찔러야 한다.
-
시나리오 — 화이트해커 컨설팅 비용 절감을 위한 DAST의 등판: 1년에 한 번 3천만 원을 주고 외부 해커를 불러 모의 해킹을 받았다. 해커들은 1주일간 수박 겉핥기로 뻔한 "SQL 인젝션 열려있네요" 리포트만 주고 돈을 챙겨갔다. CISO가 "돈 아까워 죽겠네, 이거 기계로 대체 못 해?"라고 묻는다.
- 아키텍트의 해결책: 기본(Baseline) 취약점 사냥의 자동화 전환이다. 인간 해커에게 뻔한 구멍(OWASP Top 10)을 찾게 하는 건 낭비다. 아키텍트는 오픈소스
OWASP ZAP을 젠킨스(CI/CD) 야간 빌드(Nightly Build) 파이프라인에 달아, 매일 밤 12시부터 아침 6시까지 봇(DAST)이 서버를 미친 듯이 쥐어 패게 만든다. 기계가 SQL 인젝션, XSS 같은 1차원적인 버그를 365일 꽁짜로 다 잡아내면(Baseline Security), 1년에 한 번 부르는 3천만 원짜리 비싼 인간 해커(모의해킹)는 기계가 절대 못 찾는 **'권한 우회, 비즈니스 로직 결함'**이라는 극상위 난이도의 수술에만 핀셋 투입하여 보안 예산의 ROI를 10배 펌핑시킬 수 있다.
- 아키텍트의 해결책: 기본(Baseline) 취약점 사냥의 자동화 전환이다. 인간 해커에게 뻔한 구멍(OWASP Top 10)을 찾게 하는 건 낭비다. 아키텍트는 오픈소스
도입 체크리스트
- 비즈니스적: DAST 스캔 시간에 의한 릴리즈 병목을 감당할 수 있는가? 코드가 10만 줄 넘어가면 DAST 봇이 수만 개의 URL과 파라미터 조합을 탐색하느라 스캔 한 번에 5시간이 걸린다. 하루에 10번 배포(Agile)해야 하는 팀의 CI 파이프라인에 이 5시간짜리 렉덩어리를 박아넣으면 개발팀이 폭동을 일으킨다. 아키텍트는 CI 파이프라인(낮)에는 SAST(1분 컷)만 돌리고, DAST(5시간 컷)는 주말이나 야간 배치(Asynchronous Batch)로 찢어내어 개발 속도와 보안 퀄리티의 타협점(Trade-off)을 절묘하게 갈라쳐야 한다.
- 기술적: 인증(Auth) 장벽을 뚫고 내장(DB)까지 타격하게 스크립트를 짰는가? DAST 봇을 그냥 도메인에 던져놓으면 로그인 화면에서 튕겨서 껍데기만 1시간 동안 스캔하다 종료된다(Scan Coverage 10%). 아키텍트는 DAST 봇의 설정 파일에 "로그인 창 나오면 이 테스트용 ID/PW 치고 들어가서 JWT 토큰 발급받고, 그걸 헤더에 박고 게시판을 털어라"라는 오토 로그인 매크로(Authentication Script) 뼈대를 완벽하게 주입해 주어야만 진짜 심층 해킹 스캔이 비로소 시작된다.
안티패턴
-
"DAST 통과했으니 우리 앱은 무적이다!" (블랙박스 맹신주의): DAST 봇은 화면에 버튼이 안 보이면(숨겨진 API) 때릴 수조차 없다(Crawling Blind-spot). 개발자가 꼼수를 부려
/hidden_admin_delete_all이라는 API를 만들어놓고 화면(HTML)에는 아무 링크도 안 달아놓으면, DAST 봇은 길을 찾지 못해 평생 거기를 공격하지 못하고 "취약점 0개(안전)!"라고 헛발질 리포트를 낸다. DAST는 눈에 띄는 창문을 부술 뿐, 땅속에 숨은 비밀 터널(백도어)은 결국 코드를 직접 읽는 SAST나 인간 아키텍트만이 잡아낼 수 있다. -
📢 섹션 요약 비유: DAST 스캐너는 **'장님 코끼리 만지기 식의 폭행범'**과 같습니다. 코끼리(시스템)의 겉면만 미친 듯이 만져보며 "여기가 눈인가? 푹!(공격)" 찔러봅니다. 눈을 정확히 찌르면 코끼리가 소리를 지르니까(에러) 거기가 약점인 걸 알지만, 가죽 밑에 묻혀 있는 핏줄(내부 API)은 밖에서 만져지지 않으니 절대 찌를 수가 없습니다. 그래서 겉을 만지는 놈(DAST)과 엑스레이로 뼛속을 비추는 놈(SAST)이 반드시 2인 1조로 움직여야만 완벽한 진단이 가능합니다.
Ⅴ. 기대효과 및 결론
정량/정성 기대효과
| 구분 | 인간의 수동 모의 해킹(연 1회)에만 의존 (AS-IS) | 파이프라인에 DAST 자동 봇(Bot) 스캔 장착 (TO-BE) | 개선 효과 |
|---|---|---|---|
| 정량 | 운영 중 XSS, SQLi 같은 기본적 버그 연 30건 폭발 | 배포 전 야간 DAST 빌드로 기본 버그 100% 압살 | 런타임 웹 해킹 취약점(OWASP) 발생률 99% 극감 |
| 정량 | 수천만 원짜리 모의 해킹 용역의 낭비성 기본 점검 | 봇(Bot)이 365일 24시간 공짜로 1만 번 타격 무한 반복 | 단순 취약점 탐지 비용(Cost) 0원 및 테스트 시간 무한 복사 |
| 정성 | "설정 에러로 서버 뻗으면 어떡하지?" 막연한 두려움 | "서버 띄워서 기계가 때려봤는데 안 터졌어"라는 팩트 | 인프라/런타임 환경에 대한 강건성(Robustness) 완벽한 보증 |
미래 전망
- DAST와 Swagger(OpenAPI) 명세의 대통합 (API-Driven DAST): 옛날 DAST 봇은 눈먼 좀비처럼 화면 링크(a 태그)를 긁어모았다(HTML Crawling). 하지만 화면이 없는 API 서버(MSA) 시대가 왔다. 미래의 DAST는 바보처럼 화면을 긁지 않는다. 개발자가 짜놓은 API 도면인 Swagger(OpenAPI.yaml) 파일을 통째로 씹어먹고, 그 도면에 적힌 1,000개의 API 주소(Hidden API 포함)로 바로 다이렉트 미사일 1만 개를 쏴버리는 '초정밀 폭격 API DAST' 시대로 완전히 패러다임이 역전되었다.
- IAST (상호작용 분석)로의 진화 강제: SAST(가짜 알람 많음)와 DAST(어딜 고쳐야 할지 모름)의 단점에 빡친 전 세계 보안 아키텍트들이, 결국 이 둘을 미친 듯이 하나로 섞어 짬뽕시킨 **IAST(Interactive AST)**라는 궁극의 프랑켄슈타인을 낳았다. 밖에서 DAST가 대포를 쏠 때, 서버 안에 숨어있는 SAST 에이전트가 "야! 네가 밖에서 쏜 포탄이 내 코드 45번 줄에 정확히 꽂혀서 피가 났어!"라고 무전기로 알려주는 궁극의 하이브리드 기술이다. (다음 장 493번)
참고 표준
- OWASP ZAP (Zed Attack Proxy): 구글, 넷플릭스 등 전 세계 해커와 개발자들이 가장 많이 쓰는 부동의 1위 오픈소스 DAST 폭격기. 젠킨스에 컨테이너로 띄워서 자동화하기 제일 좋고 공짜다.
- Burp Suite: 모의 해킹을 해본 사람이라면 누구나 켜보는 상용 DAST 툴의 황제. 가격은 비싸지만 인터페이스가 미쳤고, 내가 직접 패킷을 손으로 뜯어고쳐(Proxy) 쏘아 보내는 수동+자동 융합 타격의 최강자.
동적 애플리케이션 보안 테스팅(DAST)은 실험실의 온실 속 화초(소스코드)를 거친 비바람과 진흙탕이 튀는 실전 야생(런타임 환경)으로 끄집어내어 뺨을 후려갈기는 차가운 실전 스파링이다. 아무리 책상머리에서 예쁜 도면(SAST)을 그리고 박수를 쳐도, 해커는 그 도면대로 들어오지 않는다. 그들은 브라우저 개발자 도구를 켜서 자바스크립트를 비틀고, 비정상적인 헤더(Header)에 독을 발라 당신의 라이브 서버 턱주가리를 날린다. 기술사는 코드를 짰다고 오만에 빠져선 안 된다. 내가 만든 성벽을 내가 스스로 가장 비열한 적군의 입장이 되어 무자비하게 대포로 박살 내보는 이 가학적인 파괴의 과정(DAST)을 파이프라인 끝단에 박아넣어야만, 비로소 내 코드가 실전 인터넷 망망대해에서도 침몰하지 않는다는 피 묻은 생존 증명서를 얻을 수 있다.
- 📢 섹션 요약 비유: DAST는 불에 갓 구워낸 도자기를 **'망치로 두들겨 깨보는 도공(장인)의 의식'**과 같습니다. 흙(코드)의 배합이 완벽했다(SAST 통과)고 해서 명작이 아닙니다. 불가마(런타임 서버)에서 구워져 나왔을 때 눈에 보이지 않는 미세한 실금이 있다면, 그 도자기에 뜨거운 물(트래픽)을 부으면 쩍 갈라집니다. 그래서 장인은 밖에서 쇠막대기로 직접 탕탕 쳐보며(DAST 타격) 경쾌한 소리가 나지 않는 놈은 가차 없이 산산조각을 내어 휴지통(Build Fail)에 버리는 지독한 검열을 거쳐야만 명작을 세상에 내보냅니다.
📌 관련 개념 맵 (Knowledge Graph)
| 개념 명칭 | 관계 및 시너지 설명 |
|---|---|
| SAST (정적 분석 도구) | DAST의 영원한 라이벌이자 콤비. SAST가 시프트 레프트(초기)로 코드를 1분 만에 훑어 잔챙이들을 쳐내면, 살아남은 악질 보스들을 DAST가 서버에 띄운 채 대포를 쏴서 마무리하는 환상의 듀오. (이전 장 491번) |
| IAST (상호작용 테스팅) | SAST와 DAST가 하도 서로 단점만 욕하니까, 두 놈의 장점(오탐 없음 + 코드 위치 알려줌)을 합쳐버린 최강의 돌연변이 하이브리드 병기. (다음 장 493번) |
| 퍼즈 테스팅 (Fuzzing) | DAST 봇이 총알로 쓰는 무기. 무의미하고 기형적인 쓰레기값 10만 개(Fuzz)를 미친 듯이 갈겨서 서버가 뻗는지 간을 보는 미친 공격 기술. (이전 장 457번) |
| 블랙박스 테스팅 (Black-box) | DAST의 존재 철학. 서버 안에 코드가 자바로 짜였든 파이썬으로 짜였든 1도 관심 없다. 그냥 밖에서 URL 찌르고 HTTP 500 에러 뜨나 안 뜨나 결과만 보는 심플하고 잔인한 방식. |
| 모의 해킹 (Penetration Test) | DAST 로봇의 상위 호환 버전인 '진짜 인간 해커'. 로봇(DAST)은 뻔한 족보(XSS)만 때리지만, 인간 해커는 봇이 못 뚫은 인증 우회나 논리적 맹점을 파고들어 끝장을 본다. (이전 장 455번) |
👶 어린이를 위한 3줄 비유 설명
- 내가 레고로 거대한 댐을 만들고, "코드가 빈틈없이 끼워졌어!"라며 눈으로만 보고 완벽하다고 박수를 쳤어요(정적 분석/SAST).
- 그런데 진짜로 거기에 물을 콸콸콸 붓고 밖에서 커다란 바위(페이로드)를 마구 던져보니까, 레고가 부서지고 물이 다 새어나오는 거예요(에러/크래시)!
- 이렇게 설계도만 보는 게 아니라, 진짜로 물을 채워놓고(서버 실행) 밖에서 폭탄을 마구마구 던져보며 무너지는지 안 무너지는지 실제로 두드려 패보는 거친 시험을 **'DAST(동적 분석)'**라고 부른답니다!