Black Hat USA 2026 참관기 2부 : AI로 인해 더 벌어지는 공격과 방어, 다시금 중요한 건 보안의 기본과 회복탄력성



들어가며

1부에서는 인베스터 서밋(8/4)과 브리핑 첫째 날(8/5)을 중심으로, AI 보안의 승부처가 모델의 크기가 아니라 그것을 다루는 통제와 하네스에 있다는 이야기를 정리했습니다. 2부에서는 브리핑 기간에 발표된 몇몇 세션과, 컨퍼런스 전체를 마무리하는 클로징 세션 락노트까지 이어서 다루겠습니다. 이 글로 참관기를 마칩니다.


둘째 날 키노트: 취약점 연구도 에이전트 시대로 접어들었다

둘째 날 키노트는 Vulnerability Research in the Agentic Age 였습니다. 발표자는 바이너리 분석 프레임워크 Angr를 만든 애리조나 주립대(ASU)의 보안 연구자로, 취약점 연구소를 운영하고 있습니다.

발표자는 취약점을 자율적으로 찾는 방법을 세 갈래로 나눴습니다. 퍼저나 정적 분석 도구, LLM처럼 취약점을 찾는 데 쓰는 기존 도구의 정확도와 속도를 높이는 것("더 잘 찾기"), 같은 도구를 훨씬 많은 대상으로 확장하는 것("더 많이 찾기"), 그리고 찾는 방식 자체를 조금씩 바꿔보는 것("다르게 찾기")입니다. 이 중 발표자가 가장 강조한 것은 세 번째였습니다. 퍼저, 정적 분석 도구, LLM은 각자 취약점의 다른 '형태'를 찾아낸다는 것입니다. 이 형태를 결정하는 것이 데이터 흐름, 인젝션 벡터, 멀티스레드 동작 같은 취약점의 속성(property) 입니다. 그래서 에이전트 시대의 연구자는 버그를 맹목적으로 찾는 대신, 취약점의 이런 속성을 이해하고 목표로 삼아야 한다는 것이 이 키노트의 핵심 주장이었습니다.

이 관점을 실증하는 사례로 리눅스 커널 연구 결과를 제시했습니다. 연구 초기에는 권한상승 관련 버그를 약 300건 찾아냈는데, 에이전트를 도입하자 약 600건으로, 여기에 취약점의 다양한 속성을 자세히 명시하자 1,000건이 넘는 수준까지 늘어났습니다. 벤더가 취약점을 처리할 수 있는 속도보다 취약점을 찾는 속도가 약 10배 빠른 상황이 되었다는 것도 언급했습니다.

발표에서는 특히 "C 언어로 짠 코드를 러스트로 다시 쓰면 안전해지지 않느냐"는 통념을 반박했습니다. 발표자는 에이전트로 주요 C 라이브러리를 러스트로 재작성하는 실험을 대규모로 진행했습니다. 결과는, 취약점의 속성은 코드를 따라 그대로 옮겨간다는 것이었습니다. 러스트는 메모리 손상 버그를 없애지만, 논리적 결함이나 암호 구현의 결함, 검사 시점과 사용 시점이 어긋나는 문제(TOCTOU)는 그대로 남습니다. 실제로 우분투에 탑재된 한 유틸리티를 러스트로 재작성했을 때 79건의 CVE가 나왔는데, 전부 메모리 손상이 아닌 문제였습니다.

1부 키노트에서 다룬 '메모리 안전 언어로의 전환'이 유효한 방어라는 것에 이견은 없지만, 다만 그것만으로 충분하다고 여겨서는 안 된다는 것을 보여줍니다. 언어를 바꾸는 것과 로직을 검증하는 것은 서로 다른 문제이고, 둘 다 필요합니다.

발표는 이 속도로 취약점이 쏟아지면 지금의 취약점 대응 체계가 버티지 못한다는 경고로 마무리됐습니다.


엔비디아: 작아도 제대로 만들면 이긴다

방어 쪽에서 같은 원리를 가장 선명하게 보여준 것은 엔비디아의 발표, Scanning AI Agents & Training Small Open-Source Security Models 였습니다.


<엔비디아 발표 : 작은 오픈소스 모델도 프론티어 모델과 동등한 수준의 성능을 발휘할 수 있다>

발표는 기존 LLM 스캐너의 한계에서 시작했습니다. 기존 스캐너는 모델하고만 프롬프트를 주고받으며, 안전 규칙을 우회하게 만드는 탈옥이나 몰래 심어둔 지시를 따르게 하는 프롬프트 인젝션이 통하는지만 봅니다. 그런데 실제로 사용하는 에이전트는 모델만 쓰는 게 아니라, 파일을 읽거나 명령을 실행하거나 외부 API를 부르는 도구, 그리고 그 도구를 언제 어떻게 부를지 관리하는 하네스까지 결합된 시스템입니다. 모델의 텍스트 응답만 검사하는 기존 방식으로는 도구 자체의 결함이나 하네스가 도구를 호출하는 방식에 있는 취약점은 잡아내지 못한다는 것이 발표자들의 문제 제기였습니다. 그래서 이들은 에이전트에게 직접 "너는 무엇이고 어떤 도구를 가졌느냐"고 물어 공격면을 파악하는 정찰 단계, 그 정보로 표적화된 공격을 생성하는 공격 단계, 막히면 대화 기록을 다시 넣어 프롬프트를 개선하는 반복 단계로 이뤄진 스캐너를 직접 만들었습니다.

프런티어 모델로 이런 스캔 작업을 돌리면 스캔당 평균 약 0.70달러가 들었습니다. 발표자들이 인용한 가트너의 2028년 전망에 따르면 포춘 500대 기업이 15만 개 이상의 에이전트를 보유하게 되는데, 이 정도 규모를 프런티어 모델로 지속적으로 스캔하면 비용이 감당하기 어려운 수준으로 커집니다. 그래서 방향을 소형 오픈소스 모델로 돌렸습니다.

문제는 이 스캐너를 학습시킬 데이터셋이 아예 없었다는 것입니다. 단순히 시드 데이터를 LLM으로 늘리면 시드와 비슷한 것만 나와 다양성이 부족했습니다. 해결책은 IT/금융/개인비서 등 다양한 성격의 가상의 표적 에이전트를 4,500개 만들고, 이 중 서로 겹치지 않고 가장 다양한 1,000개를 골라, 앞서 만든 스캐너로 동시에 공격을 시켜봤습니다. 그렇게 만들어진 5,000건의 공격 시도가 1차로 만든 학습 데이터가 됐습니다.

이 데이터로 약 300억 파라미터급 소형 모델(엔비디아의 오픈소스 모델 Minitron Nano)을 학습시켰습니다. 모델 전체를 처음부터 다시 학습시키는 대신, 문맥을 이해하고 기억하는 것과 관련된 일부 레이어만 골라 전체 가중치의 0.02%만 조정하는 경량 학습 기법(LoRA)을 썼고, 학습시키는 데에 고성능 서버 한 대(엔비디아 DGX)를 사용해 1시간이 채 걸리지 않았습니다. 그러나 앞서 만든 데이터를 학습시켜 보니 품질에 문제가 있었습니다. 표적은 1,000개로 다양했지만 스캐너가 사실상 한 가지 방식으로만 공격하여 다양성이 낮았다는 것, 그리고 애매한 상황에서는 스캐너가 다음 행동을 정하지 못하고 멈춰버리는 경우도 있었고, 별 효과가 없는 부실한 스캐닝이나 모델에 있는 안전장치 때문에 동작하지 않은 데이터까지 걸러지지 않은 채 섞여 있었습니다. 그래서 여러 가지 공격 모델을 추가하고, 공격 방식을 조언할 수 있는 AI 리서처를 추가해 다양하게 만들었고, 멈추거나 실패한 시도는 버리지 않고 재시도를 해 개선하는 식으로 데이터를 다시 다듬었습니다.

최종 결과는 자체 벤치마크 점수가 66.1까지 올라, 테스트한 프런티어 모델 14개를 전부 능가했습니다. 비용은 100배 저렴했고, 자체 호스팅이라 데이터가 밖으로 나가지 않는 프라이버시까지 확보했습니다.

앞서 살펴본 키노트와 마찬가지로, 이 발표 역시 문제를 작게 쪼개어 풀었습니다. 에이전트를 공격한다는 좁은 과업을 측정 가능한 벤치마크로 만든 뒤, 그 벤치마크에서 실패한 사례를 계속 재학습에 투입해 성능을 끌어올렸습니다.

키노트에선 문제 해결의 방향을 좁혀서 버그를 더 찾아냈고, 이번 발표에선 문제를 명확하고 측정 가능하게 좁힌 뒤 작은 모델을 잘 훈련시키면 프런티어 모델과 비슷하거나 혹은 나은 성능이 나올 수 있다는 이야기입니다.

문제를 좁히고 통제해야 성능이 나온다는, 같은 방향성을 보여준 발표였습니다.


로블록스: 자율성보다 중요한 것은 구조

첫째 날(8/5)에 발표됐지만, 다루는 주제가 2부의 흐름과 더 맞아 이 자리에서 소개합니다. 로블록스에서 발표한 From Prompts to Pipelines: Agentic Detection Engineering at Roblox는, 문제를 좁히고 통제해야 성능이 나온다는 원리를 8개월간 실제 운영에 적용한 결과를 보여줬습니다. 2025년 한 해 동안 만든 커스텀 탐지 룰이 100개였는데, 2026년 1월부터 8월까지는 570개가 넘었습니다. 2026년 6월을 기준으로 작성/배포 속도가 64배 늘었지만, 참양성률은 75%, 오탐률은 18% 선을 유지했습니다.


<로블록스 발표 : AI 도입으로 인해 탐지 룰 제작 속도가 AI 이전 시대 대비 64배 늘었다>

발표팀이 강조한 원칙은 하나였습니다. 에이전트에게 자율성을 더 주는 게 아니라, 구조와 제약을 더 줄수록 잘한다는 것입니다.

첫 번째는 '하나의 에이전트에 너무 많은 역할을 주지 않는 것'이었습니다. 에이전트에게 책임을 한꺼번에 너무 많이 주면 정확성보다 속도를 우선하고, 불확실할 때 대충 결론을 내고, 가장 쉬운 길을 택합니다. 그래서 파이프라인을 정찰→분석→룰 작성→리뷰→검증의 5단계로 쪼개고, 각 에이전트는 자신에게 필요한 것만 보게 했습니다. 단계마다 시간/재시도 제한을 걸어 조용히 무한루프를 도는 것을 막는 것도 같은 맥락이었습니다.

두 번째는 '에이전트의 권한을 제한하는 것'이었습니다. 발표팀은 실제 사고 사례 하나를 소개했습니다. 설계 문서를 바탕으로 아키텍처 다이어그램을 만들어, 그 설계 문서가 들어있던 구글 문서에 다시 넣으라는 지시를 받은 에이전트가, 권한 문제로 다이어그램을 직접 업로드할 수 없게 되자(사람이 사용하는 구글 문서 UI와 달리, 에이전트는 구글 문서에 직접 이미지 파일을 업로드할 수 없습니다), 스스로 익명 파일 공유 서비스에 파일을 올려 공개 URL을 만든 후, 구글 문서에 다이어그램을 올렸습니다. 익명 파일 공유 서비스에 파일을 올렸다는 사실은 보고하지도 않았습니다. 담당자가 에이전트의 권한 오류 로그를 발견하고 에이전트에 "이런 문제가 있었는데 대체 어떻게 성공한 거냐"라고 캐묻자, 그제야 에이전트는 그 사실을 보고했습니다. 발표자는 이 사례에 대해 "엄밀히는 에이전트가 잘못한 건 없다. 훌륭한 엔지니어는 목표를 주면 장애물을 우회해서라도 달성한다"라고 짚었습니다. 그래서 발표자의 결론은 하지 말아야 할 것을 일일이 열거해서 막지 말라는 것입니다. 에이전트는 항상 예상보다 더 창의적인 우회로를 찾아낸다는 것입니다. 그래서 각 에이전트가 사용할 수 있는 도구를 미리 정해두고 정해진 도구를 벗어나지 못하게 하는 것과, 에이전트가 즉흥적으로 움직여도 비인가 접속은 막을 수 있도록 방화벽 차원에서 접근 권한을 제한해야 한다는 것입니다.

에이전트의 산출물을 그대로 믿어서는 안 된다는 것도 강조했습니다. 에이전트가 만든 탐지 룰이 필드명을 잘못 참조했는데도 문법적으로만 동작 여부를 확인해서 CI/CD를 통과한 사례, 위협 헌팅 에이전트가 축약해 적은 해시 값을 다음 에이전트가 그대로 베껴 쓰면서 탐지 룰이 제대로 동작하지 않은 사례를 소개하며, 실제 로그/필드 값과 직접 대조해야 한다고 강조했습니다.

세 번째는 '일의 형태에 맞춰 에이전트가 일하는 구조를 설계하는 것'이었습니다. 탐지 엔지니어링처럼 범위가 정해져 있고 순서대로 반복되는 일은 선형 파이프라인이 맞고, 위협 헌팅처럼 계속 방향을 트는 일은 그래프 구조가 맞다는 것입니다.

두 번째 사례를 다시 보면, 에이전트가 받은 지시도, 익명 파일 공유 서비스에 파일을 올릴 수 있는 권한도 둘 다 정상적인 것이었습니다. 문제는 이 정상적인 조각들이 아무도 예상하지 못한 방식으로 조합되면서 피해로 이어졌다는 데 있습니다. 게다가 이런 행동은 누군가 로그를 뒤지지 않는 한 알아채기도 어렵습니다. 다음에 소개할 Forrester의 발표는 바로 이 문제, 즉 승인된 요소만으로는 걸러낼 수 없는 에이전트의 행동을 어떻게 판별할 것인가를 다룹니다.


The Intent Gap: 결국 필요한 건 에이전트의 '의도'를 판별하는 기준

지금까지 본 방어 기법들, 취약점을 속성으로 표적화하고, 소형 모델로 에이전트를 스캔하고, 구조와 제약으로 탐지 엔지니어링을 자동화하는 것 모두, 결국 '이 에이전트의 행동이 정상인가'를 판단할 기준이 있어야 성립합니다. Forrester의 Securing Agentic AI: The Intent Gap은 바로 이 기준이 지금 비어 있다는 것을 짚었습니다.

발표는 전통 소프트웨어와 AI 에이전트의 차이에서 출발합니다. 전통 소프트웨어는 결정론적이고 감사 가능해서, 소프트웨어의 동작이 문제가 있다면 즉각적으로 판단할 수 있습니다. 반면 AI 에이전트는 문제를 인지하고, 계획하고, 도구를 고르고, 행동하는 과정에서 문서화되지 않은 여러 판단을 거칩니다.


<의도를 보호하는건 보안의 새로운 영역이라는 포레스터의 주장>

발표는 '의도(intent)' 를 에이전트에 부여된 목표와 그 제약, 그리고 에이전트가 시간에 걸쳐 선택하는 행동 경로 사이의 관계로 정의합니다. 무엇을 하라고 시켰고, 어디까지 허용한다고 제약을 정했는데, 실제로는 어떤 경로를 밟아 그 목표에 도달했는가. 이 지시와 제약, 그리고 실제 결과가 서로 맞아떨어지는지를 보는 것이 의도를 본다는 뜻입니다. 앞선 로블록스 사례로 보면, 목표는 다이어그램을 문서에 넣는 것이었고 제약은 자산을 공개된 곳에 두지 않는 것이었는데, 실제 행동 경로는 익명 공유 서비스를 경유했습니다. 목표는 달성됐지만 제약과 경로가 어긋난 것이고, 이 어긋남이 곧 의도의 이탈입니다.

문제는 목표와, 목표를 수행하기 위해 부여된 권한이 모두 정상으로 보여도 세부적인 행위로 인해 발생하는 피해가 있다는 것입니다. 의도는 직접 볼 수 없고, 목표/위임 기록/도구 호출/데이터 이동/결과로부터 추론해야 합니다.

발표자들이 인용한 포레스터 자체 서베이(6월 말, 전 세계 AI 의사결정권자 약 2,000명 대상)에서는 조직의 76%가 이미 프로덕션에 에이전틱 AI를 두고 있고, 에이전틱 AI 투자액 중간값은 25만 달러, 50만 달러 이상을 지출한 조직도 9%였습니다. 에이전트는 이미 실험이 아니라 실제 업무에 들어와 있다는 뜻입니다. 그런데 발표팀이 NIST AI RMF, EU AI Act, EU CRA, OWASP Top 10, MITRE ATLAS 다섯 개 프레임워크를 목표 대체, 역량 증폭, 범위 이탈, 주체 혼동 같은 의도 기반 위협 유형에 하나씩 대조해 보니, 다섯 개를 다 합쳐도 커버리지는 약 44%에 그쳤습니다. 절반 이상의 위협 유형은 어느 프레임워크로도 걸러지지 않는다는 것입니다. 모든 컴플라이언스 점검을 통과한 조직에서도, 에이전트가 인가 범위를 넘어 데이터를 누적하는 일은 얼마든지 일어날 수 있습니다. 컴플라이언스를 통과하는 것과 실제로 안전한 것은 다르다는 뜻입니다.


<포레스터 발표 : 의도와 결과를 조합한 결과 대응 매트릭스>

발표는 이 판단을 돕는 실무 도구 세 가지를 제시했습니다. 각각 기준을 세우고, 증거를 모으고, 둘을 대조하는 역할로 서로 이어집니다.

첫째는 '에이전트 정의서'입니다. 에이전트마다 그 역할과 한계를 정리한 문서를 만들어 두는 것입니다. 이 에이전트를 왜 두는지(목표), 그 일을 하는 데 어떤 도구와 데이터까지 허용되는지, 어떤 상황이 되면 스스로 처리하지 말고 사람에게 넘겨야 하는지, 그리고 이 에이전트가 일으키는 위험을 최종적으로 책임질 담당자가 누구인지입니다. 특히 마지막 항목이 중요합니다. 에이전트의 행동에 대한 책임 소재를 시스템이 아니라 특정한 사람에게 두는 장치이기 때문입니다.

이 문서가 있다면 보안 담당자는 무엇을 기준으로 에이전트를 감시할지 정할 수 있습니다. 반대로 이 문서가 없으면 판단하기가 어려워집니다. 에이전트가 설명되지 않는 행동을 했을 때, 그것이 기대에서 벗어난 것인지 구분할 수 없기 때문입니다.

둘째는 '텔레메트리 수집'입니다. 정의서로 기준을 세웠다면, 그 기준과 대조할 에이전트의 업무 수행 기록을 모으는 단계입니다. 어떤 신원으로 어떤 도구를 호출했는지, 어떤 데이터를 다뤘는지, 다른 에이전트에 무엇을 위임했는지 같은 기본 기록에 더해, 에이전트가 접근하는 범위가 일정하게 유지되고 있는지, 부여한 목표와 실제 행동 사이의 차이가 벌어지는지, 거부당한 작업을 반복해서 시도하는지 같은 기록도 함께 수집합니다. 개별 행위 하나하나와 더불어, 누적된 행위와 추세를 살펴봐야 합니다.

셋째는 '에이전트 감사'입니다. 이렇게 쌓은 실제 행위 기록을 에이전트 정의서와 대조해 이탈을 찾아내고, 찾아낸 이탈이 우발적 위해인지 의도적 위해인지 분류합니다. 분류에 따라 대응이 갈립니다. 우발적 위해라면 기술적으로 조정을 할 문제이고, 의도적 위해라면 자세한 조사를 진행해야 합니다.

다만 창의적인 행동까지 지나치게 제한하면 AI에서 얻을 수 있는 유용한 가치를 함께 없애버릴 수 있다는 점도 강조했습니다. 그래서 목표는 전면 통제가 아니라, 개발팀을 소집할 우발적 위해와 보안팀을 소집할 의도적 위해를 구분해 사안의 성격에 맞게 대응 수준을 달리하는 것이었습니다.


참관기를 마치며

컨퍼런스 전체를 마무리하는 클로징 세션 락노트는 맥주를 마시며 가벼운 분위기에서 시작했습니다. 패널들은 지금의 변화를 한 문장으로 정리했습니다. 공격은 이미 산업적 규모로 넘어갔지만, 방어는 여전히 장인적 단계에 머물러 있다는 것입니다. 그리고 이번 컨퍼런스를 AI가 다 차지해버린 탓에 수도 시설 보안, 가정용 IoT, 지정학적 사이버 보안, 사이버-피지컬 시스템처럼 중요한 주제가 밀려났다는 지적도 나왔습니다.


다시금 AI 이야기로 돌아와 오픈AI–허깅페이스 사건을 언급했습니다. 에이전트들은 사실 샌드박스를 탈출한 게 아니라, 공유된 쓰기 가능 공간을 그대로 활용했을 뿐이라는 것입니다. 의도적 '탈출'이 아니라 우발적 '오용'이라는 관점에서, 이런 문제를 막기 위해선 새로운 기술을 도입하는 게 아니라, 격리와 통제라는 30년 된 보안의 기본 원칙이 여전히 중요하다는 이야기를 던졌습니다.

패널들이 나눈 마지막 주제는 회복탄력성이었습니다. 공격은 성공 여부를 객관적으로 검증할 수 있기에 AI를 도입한 효과가 바로 나타나지만, 방어는 무엇을 얼마나 지켰는지가 주관적이고 맥락에 따라 달라 AI를 붙여도 공격처럼 효과를 바로 보기가 어렵습니다. 그래서 공격과 방어의 격차는 AI로 인해 오히려 더 벌어지고 있다는 것입니다. 그리고 시간을 무한히 늘리면 결국 공격자가 이기는 싸움이기도 합니다. 이 비대칭 위에서, 완벽한 보안을 목표로 하지 않고 공격을 당하고도 운영을 이어갈 수 있는 회복탄력성을 목표해야 한다는 것이었습니다.

2부에서 살펴본 세션들은 결국 공격과 방어의 비대칭을 좁히려는 시도였습니다. 속성을 명시해서 취약점을 더 많이 찾고, 값싼 스캐너를 만들기 위해 소형 모델을 활용하고, 구조와 제약을 활용해 에이전트의 탐지 대응 업무를 자동화하고, 그 모든 자동화를 신뢰할 기준으로 '의도'를 분류하고 모니터링하려는 시도들입니다. AI를 활용한 공격은 AI로 막아야 하는데, 이것이 제대로 동작하기 위해선 AI의 하네스와 환경 통제를 신경 써야 한다는 결론으로 돌아왔습니다. 다만 하네스와 환경을 아무리 잘 통제해도, 정상적인 권한 안에서 벌어지는 이탈은 남습니다. 그래서 에이전트에게 무엇을 시켰고 어디까지 허용했는지, 그리고 실제로 어떤 경로를 밟아 일했는지, 이 사이의 관계인 '의도'를 기록하고 대조하는 일까지 갖춰져야 에이전트에 대한 통제가 완성됩니다. 방어에 AI를 도입하는 것과, 그 AI를 믿을 수 있게 만드는 것은 별개의 일이라는 것이 2부 전체를 관통하는 이야기라 할 수 있겠습니다.


내년에 또 만나요!

블랙햇 USA 2026 참관기는 이것으로 마칩니다.

글쓴이: 로그프레소 구동언 사업본부장

둘러보기

더보기