494. RASP (Runtime Application Self-Protection) - 실행 환경 내부에서 공격 실시간 방어

핵심 인사이트 (3줄 요약)

  1. 본질: RASP(런타임 애플리케이션 자가 방어)는 해커가 밖에서 쏘는 껍데기(네트워크 패킷)를 보고 막는 옛날 방식(방화벽)을 쓰레기통에 처박고, 아예 서버의 심장(JVM, 앱 메모리) 내부에 요원(Agent)을 직접 침투시켜 코드가 실행되는 그 찰나의 순간에 "이 쿼리가 DB를 죽이는 독약인가?"를 내부 맥락(Context)으로 판단해 멱살 잡고 썰어버리는 궁극의 터미네이터다.
  2. 가치: 2021년 전 세계를 멸망시킬 뻔한 Log4j 대참사 앞에서, WAF(웹 방화벽)는 해커의 우회 꼼수에 뻥뻥 뚫렸지만 오직 RASP만이 서버 내부에서 악성 코드가 폭발하기 0.001초 직전에 스스로 락(Lock)을 걸어 수천억 원의 서버 탈취를 무상으로 100% 방어해 내는 제로데이(Zero-day) 킬러로서의 위용을 증명했다.
  3. 융합: 앞장(493번)의 **IAST(테스팅 에이전트)**와 기술적 뿌리(바이트코드 조작)를 100% 공유하며, 보안의 축을 밖(Network)에서 안(Application)으로 완전히 뒤집어버리는 제로 트러스트(Zero Trust) 사상 및 시프트 라이트(Shift-Right)의 끝판왕인 런타임 방패 아키텍처로 완벽하게 융합된다.

Ⅰ. 개요 및 필요성 (Context & Necessity)

  • 개념: RASP(라스프)는 단어 뜻 그대로 "런타임(서버가 도는 중)에 앱 스스로가 자기를 보호(Self-Protection)한다"는 뜻이다. 자바 서버 켤 때 -javaagent 옵션 하나만 꽂으면 방어막이 서버 뱃속으로 녹아든다. 해커가 ' OR 1=1 을 날렸다. 옛날 같으면 문지기(WAF)가 막았겠지만 해커가 암호화 우회로 문지기를 속였다. 하지만 뱃속에 있는 RASP 요원은 속지 않는다. 쿼리 문자열이 진짜 execute() 함수를 타고 DB로 넘어가려는 최후의 0.1초 순간, "어? 원래 개발자가 짠 쿼리 뼈대랑 모양이 다르네? 인젝션이다!" 라며 DB 문을 쾅 닫고 에러를 뱉어내 버린다.

  • 필요성: 세상의 모든 회사 앞마당엔 1억짜리 **WAF(웹 방화벽)**가 서 있다. 그런데 WAF는 '네트워크 패킷 껍데기'만 보고 막는다. 해커가 악성 코드를 URL 인코딩(%27)하거나 100조각으로 쪼개서(Chunked) 보내면 WAF는 바보같이 다 통과시켜 준다. 결국 악성 코드가 서버 안(JVM)으로 들어와서 예쁘게 하나로 합쳐진 뒤 서버를 펑 터뜨렸다. **껍데기를 보는 문지기(방화벽)는 더 이상 믿을 수 없다. 앱 깊숙한 곳에서, 데이터가 진짜 명령어(무기)로 조립되어 실행되는 마지막 종착지에서 방아쇠를 강제로 뽑아버릴 내부 경호원(RASP)**이 절대적으로 필요해진 것이다.

  • 💡 비유: RASP는 대통령의 뇌 속에 이식한 **'독극물 무효화 나노 칩'**과 같습니다. 방화벽(WAF)은 청와대 정문을 지키는 경호원입니다. 암살자(해커)가 독이 든 캡슐을 비타민 영양제(인코딩 우회)로 완벽하게 위장해서 경호원을 속이고 대통령 입까지 무사히 전달했습니다. 대통령(서버)이 약을 꿀꺽 삼키는 순간! 위장 속에 있던 나노 칩(RASP)이 0.1초 만에 성분을 엑스레이로 분석하고 "이건 비타민이 아니라 청산가리(악성 쿼리)다!"라고 판단하여, 독이 혈관(DB)으로 퍼지기 직전에 화학적으로 싹 다 분해해서 토해내게 만들어버리는 궁극의 최후 방벽입니다.

  • 등장 배경 및 발전 과정:

    1. 네트워크 보안(WAF)의 한계와 절망: WAF는 쏟아지는 해킹 우회 기법을 막으려다 가짜 경고(오탐)를 너무 많이 뱉어내, 화가 난 기업들이 방화벽 필터를 꺼버리는(Bypass) 병크가 일상화되었다.
    2. 가트너의 RASP 개념 선포 (2012): "앱 밖에서 지키니까 털리지. 아예 앱 안쪽 런타임 환경(JVM/.NET) 안으로 뚫고 들어가서 스스로 막게 해라!"라며 RASP라는 미친 사상을 처음 세상에 내놓았다.
    3. Log4Shell 사태를 거치며 신격화 (2021~현재): 전 세계 서버를 초토화시킨 로그포제이 사태 때, WAF는 속수무책으로 다 뚫렸다. 하지만 RASP를 달아둔 소수 기업들의 서버는, RASP가 "어? 로그 찍는 함수가 왜 갑자기 외부 IP(해커 서버)로 쉘 권한을 달라고 통신(RCE)을 시도하지? 미친 거 아냐! 썰어버려!"라며 패치 0일 차(Zero-day)에 아무것도 안 하고 100% 무상으로 서버를 살려내며 그 압도적 위대함을 전 세계에 팩트로 증명해 버렸다.
  • 📢 섹션 요약 비유: WAF가 도둑이 담장을 넘을 때 **'얼굴 생김새(패킷 패턴)'**만 보고 몽둥이로 때리는 기도(경비원)라면, RASP는 도둑이 집 안에 얌전히 앉아있다가 갑자기 품에서 '칼을 빼어 들어 찌르는 그 물리적인 행위(함수 실행 맥락)' 자체를 인지하고 팔을 꺾어버리는 실내 전속 밀착 보디가드입니다.


Ⅱ. 아키텍처 및 핵심 원리 (Deep Dive)

1. RASP 방어 아키텍처: 바이트코드 조작(Instrumentation)과 훅(Hooking)

IAST와 100% 같은 뿌리다. RASP는 서버 코드 1줄도 안 고치고 뱃속으로 침투한다.

[ 1. 서버(WAS) 부팅 시 RASP Agent 탑재 ]
   - JVM이 뜰 때 `java -javaagent:rasp.jar` 딱 1줄 넣으면 마법 시작.
   - 자바의 핵심 심장부 파일(`java.sql.Statement`, `java.io.File`)들이 메모리에 올라갈 때,
   - RASP가 몰래 앞뒤로 "경고망(Hook)"을 씌워서 코드를 마개조(Instrumentation)해 버림.

[ 2. 해커의 트래픽 유입 (WAF 우회 성공) ]
   - WAF: "오, 암호화 꼼수로 보냈네? 정상 패킷 ㅋ 통과!"

[ 3. 런타임 맥락 분석 (Context-Aware Analysis) 💥 핵심 ]
   - 트래픽이 쫙 풀려서 진짜 SQL 쿼리 `SELECT * FROM A WHERE id = 1 OR 1=1` 로 조립됨.
   - 이 쿼리가 DB로 날아가기 0.001초 전! RASP 훅(Hook)이 낚아챔.
   - RASP: "깐깐한 문법 분석(Tokenizing)을 해보니, 개발자가 짠 뼈대(SELECT) 외에 
     `OR 1=1` 이라는 악성 뼈대가 추가로 붙었네? 이거 인젝션이야!"

[ 4. 킬 스위치 작동 (Block & Report) ]
   - RASP가 그 자리에서 `SecurityException`을 터뜨려 DB 연결선을 끊어버리고 통신을 박살 냄. 해커에게는 403 에러 반환.

2. RASP가 막아내는 기적의 방어 목록 (OWASP Killer)

WAF가 못 잡는 심해의 괴물들을 RASP는 런타임 맥락(Context)으로 갈아버린다.

  1. 제로데이(Zero-day) 원격 코드 실행 (RCE, Log4j 사태)
    • RASP는 "게시판 저장 로직이 갑자기 리눅스 Runtime.exec('wget 해커주소') 를 호출하는 것" 자체가 비정상적인 문맥(Context)임을 감지하고 함수 호출 자체를 차단한다. 패치 코드가 세상에 안 나왔어도 스스로 막는 맷집이다.
  2. 블라인드 SQL 인젝션 & 파일 탈취 (Directory Traversal)
    • 해커가 ../../../etc/passwd 를 요청했다. RASP는 파일 입출력(I/O) 함수 목덜미를 쥐고 있다가, "어? 웹 서버 루트 폴더 바깥쪽에 있는 OS 코어 파일을 열려고 하네?" 라며 즉시 뺨을 때리고 스레드를 킬(Kill)해버린다.
  • 📢 섹션 요약 비유: WAF(방화벽)는 검색대에서 **"총 가지고 있냐?"**만 봅니다. 플라스틱 총으로 분해해서 숨겨 들어오면 다 뚫립니다. RASP는 총을 들고 오든 말든 관심 없습니다. 사파리 안에서 누군가 조립한 장난감 총으로 "호랑이를 향해 방아쇠를 당기는 찰나의 행위(DB 탈취 시도)" 그 자체를 인지하고 하늘에서 그물을 떨어뜨려 덮쳐버리는 행위 통제(Behavior Control) 기반의 절대 신입니다.

Ⅲ. 융합 비교 및 다각도 분석

1. 웹 방화벽 (WAF) vs 런타임 자가 방어 (RASP)

수백억짜리 WAF 시장을 RASP가 "너흰 멍청해"라며 도발하고 있는 사이버 방어 삼국지의 하이라이트다.

척도WAF (Web Application Firewall)RASP (Runtime App Self-Protection)
설치 위치집 밖의 대문 앞 (네트워크망 단)집 안의 거실 (JVM / 앱 메모리 속)
방어 잣대나쁜 단어 리스트 대조 (정규표현식, Blacklist)함수 실행 맥락과 문법 구조 (Context-Aware)
오탐률 (가짜 경고)툭하면 억울한 정상인 차단 (오탐 엄청 많음)진짜 치명적 함수 찌를 때만 쳐냄 (오탐 거의 제로 0%)
최대 단점우회(Bypass) 꼼수에 너무 쉽게 털림서버 성능(CPU)을 5~10% 파먹음 (오버헤드)
시너지 (융합)폭주하는 단순 쓰레기 디도스(DDoS) 트래픽을 1차로 싹 다 쳐내주는 몸빵 역할.WAF를 뚫고 들어온 정예 암살자 1명을 1:1로 모가지 따버리는 저격수 역할.

과목 융합 관점

  • 소프트웨어 공학 (IAST와의 쌍둥이 융합): IAST(493번)와 RASP는 완벽하게 같은 엔진을 쓴다(바이트코드 조작). 하지만 IAST는 QA 서버에서 "어디가 아프네" 하고 알려주기(Testing)만 하는 모니터링 툴이다. 이 똑같은 에이전트를 라이브 운영 서버(Production)에 던져놓고 스위치 모드를 "알려만 주지 말고 방아쇠 당기는 놈을 직접 죽여버려(Block)!"로 딸깍 바꾸면, 그 즉시 이 툴은 RASP라는 라이브 무적 방패로 둔갑한다. 테스팅과 운영 방어가 단 하나의 에이전트 칩으로 통일되는 DevSecOps 궁극의 융합 기술이다.

  • 클라우드 컴퓨팅 (서버리스 람다의 RASP): RASP의 단점은 에이전트를 달아야 한다는 것이다. 옛날엔 톰캣(WAS) 띄울 때 옵션으로 넣기 편했다. 그런데 클라우드 서버리스(AWS Lambda) 시대가 왔다. 서버 부팅 옵션 칠 곳도 없고 1초 만에 떴다 죽는다. 여기서 혁신이 터졌다. 아키텍트는 람다 함수(Python, Node.js) 소스코드 맨 윗줄 첫 번째 줄에 require('rasp-agent'); 딱 한 줄을 선언한다(코드 래핑, Code Wrapping). 그러면 람다가 호출되는 0.1초의 순간에도 RASP 방패가 귀신같이 람다 코어에 빙의하여 인젝션을 튕겨내는 마법의 서버리스 보안 방벽이 완성되었다.

  • 📢 섹션 요약 비유: **WAF(방화벽)**는 파리채입니다. 파리가 날아오면 무식하게 때려잡지만, 파리가 투명 인간 흉내를 내면(인코딩) 못 잡고 놓칩니다. RASP는 집 안의 **'모기향(훈증기)'**입니다. 파리가 아무리 투명 인간 흉내를 내고 방에 들어와도, 방 안의 공기(메모리 런타임 환경) 자체가 방어 모드라 1초 만에 숨을 못 쉬고 바닥에 떨어져 즉사합니다. 파리채(WAF)와 모기향(RASP)을 둘 다 켜는 것이 제일 좋습니다.


Ⅳ. 실무 적용 및 기술사적 판단

실무 시나리오

  1. 시나리오 — WAF 룰셋(Rule-set) 업데이트 지연과 RASP의 제로데이 캐리(Carry): 0-day 해킹 수법이 터졌다. 해커들이 수만 가지 우회 문자열로 사이트를 찌른다. 보안팀이 허덕이며 WAF 벤더사에 전화한다. "빨리 이 패턴 막는 방화벽 룰 업데이트 쏴주세요!" 벤더사는 "수만 개 패킷 패턴 분석하느라 3일 걸려요. 버티세요!"라고 한다. 그 3일 동안 WAF를 우회한 트래픽이 쏟아져 DB가 박살 나야 정상이지만... 멀쩡하다.

    • 아키텍트의 해결책: 구조적 문맥 분석(Structural Context Analysis)의 승리다. RASP는 WAF처럼 '해커의 입력 문자열 패턴'을 공부하지 않는다. 해커가 천재적으로 글씨를 꼬아서 WAF를 속이고 들어왔다 치자. 하지만 RASP 입장에서는 그 문자가 결국 SELECT * FROM 이라는 쿼리 트리를 뚫고 나오는 그 '구조적 파괴' 행위를 탐지한다. 즉, 해커가 무슨 화장(우회)을 하든 상관없이 RASP는 "알려지지 않은 신규 공격(Zero-day)조차, 룰 업데이트 0일 차에 원천 방어해 내는" 자가 면역의 기적을 낳는다.
  2. 시나리오 — RASP의 치명적 독, 성능 오버헤드와 시스템 마비: 아키텍트가 RASP 뽕에 취해서 블랙프라이데이 세일 중인 메인 결제 라이브 서버에 RASP 에이전트를 붙였다. 1초에 1만 건의 트래픽이 터지자, 평소 0.1초 걸리던 결제 로직이 RASP 에이전트의 '모든 쿼리 감시 연산' 때문에 0.5초로 5배가량 지연(Latency)되었다. 서버 스레드 풀이 터져버렸고, 정작 해킹은 안 들어왔는데 성능 저하 오버헤드(Performance Overhead) 때문에 결제 서버가 마비되어 100억 원의 매출이 날아갔다.

    • 아키텍트의 해결책: Instrumentation 오버헤드를 무시한 무지성 은탄환(Silver Bullet) 맹신이다. RASP는 공짜가 아니다. 내부 코드를 감시하느라 무조건 5~15%의 CPU/메모리 자원을 퍼먹는다. 아키텍트는 트래픽이 극단적으로 몰리는 초고속(Low Latency) 아키텍처 구간에는 절대 RASP를 켜면 안 된다. **"RASP는 사내망 횡적 이동을 막는 B2B 관리자 서버나, 트래픽은 낮지만 정보가 민감한 핵심 백오피스 구간에 핀셋으로 적용하여 보안을 챙기고, 1,000만 명이 몰리는 B2C 대고객 입구는 거대한 WAF와 하드웨어 장비로 1차 고기 방패를 세우는 것"**이 진짜 하이브리드 인프라 지휘술이다.

도입 체크리스트

  • 비즈니스적: "우리의 레거시 서버를 고칠 개발자가 퇴사했는가?" 10년 된 C# / Java 게시판이 있다. 툭하면 인젝션으로 털리는데, 이 코드를 짠 사람이 퇴사해서 아무도 소스코드를 건드릴(수정) 엄두를 못 낸다(Technical Debt 파산). 이때 RASP가 신의 한 수가 된다. 소스 코드를 단 1바이트도 수정할 필요 없이, 서버 부팅 쉘 스크립트에 RASP 에이전트 옵션 딱 1줄만 끼워 넣고 재부팅하면, 10년 된 썩은 좀비 서버에 최첨단 아이언맨 수트(가상 패치, Virtual Patching)가 입혀지며 수억 원의 레거시 재개발 비용을 합법적으로 방어해 낸다.
  • 기술적: 지원 언어(Supported Language) 풀이 협소하지 않은가? IAST와 똑같은 맹점이다. RASP는 Java, .NET, Node.js, Ruby, Python 등 'VM이나 인터프리터' 위에서 도는 언어들 뱃속에만 기생할 수 있다. C, C++, Rust, Go 같이 기계어로 바로 통째 컴파일되어 굳어버리는 쇳덩어리 언어들에는 비집고 들어갈 구멍이 없어서 99% 사용 불가능하다(사각지대 발생). 회사 스택이 Golang 메인이라면 RASP 카드는 찢어버려야 한다.

안티패턴

  • "RASP 깔았으니까 시큐어 코딩 대충 짜도 돼!" (도덕적 해이, Moral Hazard): 보험을 빵빵하게 들었다고 눈 감고 무단 횡단하는 안티패턴. 주니어 개발자가 "RASP가 인젝션 다 쳐내주던데, 귀찮게 PreparedStatement 바인딩 처리 왜 해요? 걍 문자열 + 로 쌩코딩할래요!" 라며 기초를 붕괴시킨다. RASP는 만병통치약이 아니다. RASP 엔진을 뚫어버리는 RASP-Bypass 해킹 기법(에이전트 무력화)도 이미 다크웹에 돌아다닌다. "가장 완벽한 RASP는, RASP가 일할 일이 영원히 없게 만드는 완벽한 시큐어 코딩이다." RASP는 방탄조끼지 불사신 포션이 아니다.

  • 📢 섹션 요약 비유: RASP에 의존해 시큐어 코딩을 포기하는 것은, 자동차에 **'최첨단 자동 긴급 제동 시스템(RASP)'**을 달았다고 운전자가 눈을 감고 엑셀(엉망인 코딩)을 끝까지 밟는 짓입니다. 기계가 99번은 차를 멈춰 살려주겠지만, 폭우가 내려 카메라 센서가 1번 에러를 일으키는 순간 그대로 절벽으로 떨어져 사망합니다. 진짜 운전(기본 방어)은 운전자가 하고, 기계는 내가 기절했을 때 목숨을 구하는 1%의 기적으로만 놔두어야 합니다.


Ⅴ. 기대효과 및 결론

정량/정성 기대효과

구분WAF(방화벽)만 켜두고 알려진 패턴만 차단 (AS-IS)JVM 내부에 RASP 에이전트 심어 실시간 차단 (TO-BE)개선 효과
정량Log4j 같은 제로데이 터지면 패치 전까지 서버 다 털림제로데이 터진 첫날 스스로 맥락 감지해 방어 100%미확인 제로데이 공격에 대한 사전 셧다운 방어력 100% 확보
정량WAF의 가짜 경고(오탐) 100개, 정상 유저 차단 클레임 폭주런타임 확실한 에러 맥락만 잡아 차단, 오탐률 1% 미만비정상적 알람 소멸로 보안 관제 조직(SecOps) 피로도 99% 감소
정성"오래된 레거시 시스템, 털릴까 봐 무서워서 잠 못잠"소스코드 수정 0줄로 레거시 전면에 최첨단 무적 쉴드 전개낡은 시스템 폐기(Sunset) 유예 및 기술 부채 관리 숨통 틔움

미래 전망

  • 클라우드 네이티브 eBPF 기반 에이전트리스 RASP의 패권 장악: RASP의 치명적 귀찮음은 "앱마다 톰캣 설정에 들어가서 에이전트 jar 파일을 심어줘야 한다"는 것이다. 미래는 인프라 레벨의 흡수다. 리눅스 커널의 신이라 불리는 eBPF 기술을 쿠버네티스 노드 바닥에 한 겹 깔아둔다. 컨테이너나 코드를 단 1도 수정할 필요 없이(Agentless), eBPF가 리눅스 커널을 타고 날아다니는 메모리와 시스템 콜을 밑에서 통째로 훔쳐보며 해킹을 1초 만에 모가지 따버리는 무설정 초투명 런타임 방어 시대(Tetragon, Cilium 등)가 RASP의 영혼을 덮어쓰고 왕좌를 계승 중이다.
  • AI 런타임 자가 치유(Auto-remediation)의 마침표: 현재 RASP는 해커의 쿼리가 들어오면 "차단(Block)!" 하고 403 에러를 뱉고 로그를 찍는 데 그친다. 미래엔 RASP 에이전트에 경량형 LLM(AI)이 탑재된다. 해커가 찌른 궤적을 런타임에 0.1초 만에 분석하고, "어? 이 공격 패턴을 막으려면 이 파일 45번 줄 소스 코드를 이렇게 바꿔야 해!" 라며 차단을 넘어, 그 자리에서 백그라운드로 소스코드를 알아서 패치 생성해 깃허브 PR까지 던져주는 궁극의 **스스로 진화하는 자가 치유 생명체(Self-healing System)**로 진화할 것이다.

참고 표준

  • Gartner (가트너): RASP라는 개념을 이 세상에 처음 작명하고, "WAF의 시대는 가고 RASP의 런타임 시대가 온다!"라고 예언하며 글로벌 기업 지갑을 털어내게 만든 절대 트렌드 메이커.
  • OWASP RASP Top 10: "RASP를 도입할 거면 이 10가지(오탐률 낮음, 퍼포먼스 오버헤드, 차단 후 롤백 기능 등)를 꼼꼼히 따져보고 솔루션을 사라!"라고 재단에서 떠먹여 주는 RASP 벤더 평가 가이드라인 바이블.

RASP(런타임 애플리케이션 자가 방어)는 소프트웨어 공학이 인프라 보호망(방화벽)에 기대어 징징대던 나약함을 씻어내고, "내 코드는 내가 스스로 지킨다"며 권총을 뽑아 든 가장 독립적이고 고독한 수호자다. 아키텍트는 구름 위에 떠 있는 화려한 해킹 방어 룰(WAF, IPS) 10개를 믿어서는 안 된다. 해커의 칼날이 성벽(네트워크)을 넘고 안방 문(컨트롤러)을 뚫고 들어와 기어이 심장(DB)을 찌르기 위해 0.1초 남은 그 최후의 절대절명 찰나, 피를 튀기며 육탄전으로 해커의 칼을 맨손으로 부러뜨려 멈춰 세우는 이 지독한 뱃속의 특수 요원(Agent)이야말로, 제로데이(Zero-day)라는 공포의 학살극 속에서 내 회사의 1,000만 고객의 목숨을 구원해 낼 마지막 단 하나의 은탄환(Silver Bullet)이다.

  • 📢 섹션 요약 비유: RASP는 **'아이언맨 수트의 인공지능 자비스(J.A.R.V.I.S)'**입니다. 날아오는 미사일을 밖에서 요격(WAF)하는 것도 훌륭하지만 미사일은 언젠가 수트에 맞습니다. 미사일이 수트를 뚫고 들어와 토니 스타크의 심장(DB)에 파편이 꽂히려는 그 0.1초의 순간! 토니가 명령하지 않아도 자비스(RASP)가 알아서 수트 내부의 에너지 쉴드를 재배열하여 파편을 튕겨내고 멈춰버립니다. 운전자(개발자)가 코딩 실수를 하거나 잠들어 있어도, 수트(앱) 스스로가 주인의 생명을 살려내는 궁극의 인공지능 자가 방어막입니다.

📌 관련 개념 맵 (Knowledge Graph)

개념 명칭관계 및 시너지 설명
IAST (상호작용 분석)RASP의 친엄마. 똑같은 뱃속 에이전트(주사 바늘)를 쓰지만, IAST가 "아프다고 소리치는(테스트) 모니터"라면, RASP는 운영 서버에 나가서 몽둥이를 휘두르는 "전투 특수 부대(차단)"다. (이전 장 493번)
WAF (웹 방화벽)RASP의 든든한 콤비. WAF가 바깥 담장에서 미친 듯이 쏟아지는 잡동사니 디도스(DDoS)와 1차원적 공격을 싹 다 맞아주는 고기 방패를 서줘야, RASP가 서버 뱃속에서 조용히 1:1로 정밀 저격을 할 체력을 확보할 수 있다.
제로데이 취약점 (Zero-day)패치가 세상에 나오지 않아 WAF도 방어 룰이 없어서 전 세계가 그냥 털리며 울고만 있어야 하는 재앙의 날. 오직 맥락(Context)을 보는 RASP만이 "어? 이 쿼리 이상해!"라며 룰 없이도 혼자 막아내는 멱살 캐리를 보여준다.
시큐어 코딩 (Secure Code)RASP가 훌륭하긴 하지만 엄청난 CPU 메모리(퍼포먼스)를 잡아먹는 독약이다. 아예 처음부터 개발자가 PreparedStatement로 인젝션 코드를 완벽히 짰다면, RASP가 헉헉대며 방어할 일 자체를 없애주는 근본 예방주사.
바이트코드 조작 (Instrumentation)RASP 흑마법의 심장. 톰캣이 서버를 켤 때 .class 파일을 메모리에 올리기 전, 몰래 코드 앞뒤에 감시망과 차단 스위치를 욱여넣는 자바 생태계(JVM)의 가장 위대한 후킹 기술.

👶 어린이를 위한 3줄 비유 설명

  1. 나쁜 벌레(해커)가 들어오는 걸 막으려고 집 밖에 엄청 큰 모기장(방화벽)을 쳤어요. 그런데 아주 작고 똑똑한 벌레가 모기장을 몰래 뚫고 내 방(서버)까지 기어 들어왔어요!
  2. 벌레가 나를 꽉 물려는 찰나! 내 몸속에 미리 심어둔 **'마이크로 로봇 백혈구(에이전트)'**가 0.1초 만에 "이건 나쁜 독이다!"라고 알아채고 벌레를 빵! 하고 터뜨려 날려버렸어요!
  3. 이렇게 밖에서 막는 걸 포기하고, 아예 내 몸(프로그램) 안에서 악당이 공격하는 그 순간을 스스로 알아채고 자동으로 튕겨내 버리는 최첨단 뱃속 방패를 **'RASP (런타임 자가 방어)'**라고 부른답니다!