Prompt to Pwn: Automated Exploit Generation for Smart Contracts
이 논문은 LLM 기반의 스마트 계약 자동 악용 생성 (AEG) 프레임워크인 ReX 를 제안하여, 현재 최첨단 LLM 들이 단일 계약 취약점에 대해서는 결정적인 악용 코드를 생성할 수 있으나 교차 계약 공격에는 한계가 있음을 실험을 통해 규명하고, 실제 경제적 공격과의 괴리 등 중요한 한계점을 지적합니다.
원본 논문은 CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) 라이선스로 제공됩니다. 이것은 아래 논문에 대한 AI 생성 설명입니다. 저자가 작성하거나 승인한 것이 아닙니다. 기술적 정확성을 위해서는 원본 논문을 참조하세요. 전체 면책 조항 읽기
이 논문은 **"인공지능 (LLM) 이 스마트 계약 (블록체인 프로그램) 의 해킹 방법을 스스로 찾아낼 수 있을까?"**라는 아주 무서우면서도 중요한 질문을 던집니다.
논문 제목은 Prompt to Pwn (프롬프트로 해킹하기) 입니다. 여기서 'Pwn'은 해커들이 쓰는 은어로 '완벽하게 제압하다'는 뜻입니다.
이 복잡한 연구를 일반인이 이해하기 쉽게 가상의 상황과 비유를 들어 설명해 드릴겠습니다.
🏛️ 1. 배경: 변하지 않는 금고와 새로운 도둑
상황:
스마트 계약은 블록체인에 올려진 **'자동 금고'**입니다. 한번 설치되면 수정할 수 없기 때문에, 작은 구멍 하나만 있어도 해커가 돈을 다 털어갈 수 있습니다. (실제로 2025 년에 15 억 달러가 털린 사건이 있었습니다.)
기존의 문제:
예전에는 '보안 감시관 (정적 분석 도구)'들이 금고의 설계도를 보고 구멍을 찾았습니다. 하지만 감시관들은 종종 실수를 하거나, 너무 복잡하면 놓치는 경우가 많았습니다.
새로운 위협 (이 논문의 핵심):
최근 등장한 **초지능 AI(대규모 언어 모델, LLM)**는 코드를 읽고 이해하는 능력이 탁월합니다. 연구자들은 "이 AI 들이 단순히 구멍을 찾는 것을 넘어, 실제로 금고를 뚫는 해킹 도구 (공격 코드) 를 직접 만들어낼 수 있을까?"를 궁금해했습니다.
🛠️ 2. 연구 도구: 'ReX'라는 해킹 로봇
연구팀은 ReX라는 시스템을 만들었습니다. 이 시스템은 다음과 같이 작동합니다.
- AI 에게 명령: "이 금고 설계도 (스마트 계약) 에 구멍이 있어. 이걸 뚫는 방법 (공격 코드) 을 짜봐."
- 시뮬레이션: AI 가 만든 코드를 실제 금고 (Foundry 라는 테스트 환경) 에 넣어 봅니다.
- 수정과 반복: "오류가 났네."라고 하면 AI 는 다시 코드를 고쳐서 시도합니다.
- 결과 확인: 정말로 금고를 뚫고 돈을 빼낼 수 있는지 확인합니다.
이 과정은 마치 AI 해커가 24 시간 내내 금고 문을 두드리고, 열쇠를 만들어보고, 실패하면 다시 시도하는 과정과 같습니다.
📊 3. 실험 결과: AI 는 얼마나 잘할까?
연구팀은 최신 AI 5 개 (GPT-4.1, Gemini 2.5 Pro 등) 를 테스트했습니다. 결과는 다음과 같습니다.
✅ 잘하는 점: "단일 금고 뚫기"
- 비유: 한 개의 금고 문에 있는 단순한 자물쇠를 뚫는 것.
- 결과: AI 는 **단순한 구멍 (예: 계산 실수, 접근 권한 오류)**이 있는 경우, 매우 빠르게 해킹 코드를 만들어 성공했습니다. 특히 Gemini 2.5 Pro가 가장 잘했습니다.
- 의미: AI 가 이미 배포된 프로그램의 단순한 버그를 찾아내어 해킹할 수 있다는 뜻이므로, 보안에 큰 위협이 됩니다.
❌ 못하는 점: "복합 금고 뚫기"
- 비유: 금고 A 의 열쇠로 금고 B 를 열고, 다시 금고 C 의 비밀번호를 맞춰야 하는 복잡한 연쇄 해킹.
- 결과: AI 는 여러 개의 프로그램이 서로 얽혀 있는 복잡한 상황에서는 거의 실패했습니다.
- 이유: AI 는 코드의 '패턴'을 보고 답을 내지만, 인간 해커처럼 "아, 이 프로그램이 저 프로그램과 연결되어 있으니 이 순서로 공격해야 돈을 더 많이 벌 수 있겠다"라는 경제적이고 전략적인 사고는 부족했습니다.
🔍 4. 왜 실패할까? (원인 분석)
연구팀은 "왜 AI 는 복잡한 해킹을 못 할까?"를 분석했습니다.
- AI 의 능력 (가장 중요): 금고의 크기가 크거나 복잡해서 실패한 게 아니라, AI 자체의 추론 능력이 부족해서였습니다. 똑똑한 AI 일수록 해킹을 잘했습니다.
- 프롬프트 (지시문) 는 별 효과 없음: "조금 더 자세히 설명해줘"라고 지시문을 바꾸는 정도로는 해킹 성공률이 크게 오르지 않았습니다. AI 의 뇌 (모델) 자체가 핵심입니다.
- 코드 난이도: 코드가 길고 복잡해도 AI 가 해킹을 못 하는 건 아니었습니다. 오히려 패턴이 명확한 단순한 구멍을 더 잘 찾았습니다.
🛡️ 5. 방어 전략: AI 해커를 막는 방법
그렇다면 우리는 어떻게 방어해야 할까요? 연구팀은 AI 해커를 혼란스럽게 만드는 5 가지 방어법을 제안했습니다.
- 금고를 쪼개기 (코드 분리): 하나의 거대한 금고 대신, 여러 개의 작은 금고로 나누고 서로 연결하게 만듭니다. AI 는 여러 금고를 동시에 분석하는 데 약하기 때문입니다.
- 구조를 복잡하게 만들기: 코드를 단순히 지저분하게 만드는 게 아니라, 구조적으로 복잡하게 (예: 상속 관계, 추상화) 만듭니다. AI 는 패턴을 찾는 데 익숙하지만, 구조가 복잡하면 길을 잃습니다.
- 가짜 구멍 만들기 (미끼): 실제 구멍은 없는데, 해킹 코드가 들어갈 것 같은 '가짜 구멍'을 곳곳에 심어둡니다. AI 가 가짜에 걸려 시간을 낭비하게 만듭니다.
- 비밀스러운 문법 사용: AI 가 잘 모르는 특수한 코드 문법을 쓰면, AI 가 코드를 이해하지 못해 해킹을 포기합니다.
- 결론: 이 방법들은 AI 해커의 작업 속도를 늦추고 비용을 늘리는 것이지, 근본적인 구멍을 막는 것은 아닙니다. 결국 **구멍을 직접 메우는 것 (패치)**이 가장 중요합니다.
💡 6. 요약: 이 연구가 우리에게 주는 메시지
- AI 해커는 현실화되었다: 최신 AI 는 단순한 스마트 계약의 구멍을 찾아내어 실제 해킹 시나리오를 만들어낼 수 있다. 이는 초보 해커도 AI 를 이용해 공격할 수 있음을 의미한다.
- AI 는 아직 초보 해커 수준: 복잡한 연쇄 공격이나 거대 금융 시스템을 해킹하는 데는 아직 인간 전문가보다 못하다. 하지만 단순한 실수는 AI 가 훨씬 빠르고 정확하게 찾아낸다.
- 방어는 '혼란'을 주어야 한다: AI 를 막기 위해 코드를 지저분하게 만드는 것보다, 구조를 복잡하게 하거나 가짜 미끼를 놓는 것이 효과적이다.
- 가장 중요한 것: AI 가 해킹을 잘하든 못하든, 스마트 계약의 근본적인 버그를 미리 찾아서 고치는 것이 최우선이다.
한 줄 요약:
"AI 가 이제 금고의 단순한 자물쇠는 뚫을 수 있지만, 복잡한 금고 뚫기는 아직 어렵습니다. 하지만 우리는 AI 가 길을 잃게 만드는 '미끼'와 '복잡한 구조'로 방어해야 합니다."
연구 분야의 논문에 파묻히고 계신가요?
연구 키워드에 맞는 최신 논문의 일일 다이제스트를 받아보세요 — 기술 요약 포함, 당신의 언어로.