AI 사이버 보안은 작업 증명이 아니다
원문은 Salvatore Sanfilippo님이 에 게재했습니다. 이 블로그 구독하기
작업 증명이라는 비유는 틀렸다. 해시 충돌을 찾는 일은 N이 커질수록 기하급수적으로 어려워지지만, 충분한 연산을 투입하면 H(S)가 N을 만족하는 어떤 S든 반드시 찾을 수 있다. 따라서 투입된 자원에 비대칭이 존재하면 결국 "작업 능력"이 더 큰 쪽이 승리하게 된다.
하지만 버그는 다르다:
- LLM을 실행할 때마다 서로 다른 분기를 탐색하지만, 결국 코드가 가질 수 있는 상태를 기반으로 한 가능한 분기는 포화된다.
- 주어진 코드에서 버그를 찾기 위해 모델을 M번 샘플링한다고 상상해 보자. M이 충분히 크면, 결국 한계는 (코드 상태와 LLM 샘플러의 유의미한 경로가 모두 포화되기 때문에) "M"이 아니라 모델의 지능 수준인 "I"가 된다.
OpenBSD SACK 버그는 이를 명확히 보여준다. 성능이 낮은 모델을 무한한 토큰으로 돌려도, 시작 윈도우에 대한 검증 부재가 정수 오버플로와 결합되고, 다시 절대 NULL이 되어서는 안 되는 노드가 존재하는 분기에 그럼에도 진입한다는 사실과 결합될 때 버그가 발생한다는 것을 절대 깨닫지 못한다(*).
따라서 내일의 사이버 보안은 "더 많은 GPU가 승리한다"는 의미에서의 작업 증명과 같지 않을 것이다. 대신 더 뛰어난 모델, 그리고 그런 모델에 더 빠르게 접근할 수 있는 쪽이 승리할 것이다.
* 약한 모델이 OpenBSD SACK 버그를 찾을 수 있다고 말하는 사람은 믿지 마라. 내가 직접 시험해 봤다. 실제로 일어나는 일은 약한 모델이 환각을 일으켜 (때로는 우연히 실제 문제를 맞추기도 하지만) 윈도우 시작 부분의 검증 부재(이론상으로는 start < end 검증 때문에 무해하다)와 정수 오버플로 문제를, 왜 두 문제가 결합됐을 때 문제가 되는지 이해하지 못한 채 지적한다는 것이다. 이는 문제가 있어 보이는 코드에서 버그 유형을 패턴 매칭하는 것에 불과하며, 문제를 진정으로 이해하고 익스플로잇을 작성할 능력은 전혀 없다. 직접 테스트해 보라. GPT 120B OSS는 저렴하고 쉽게 구할 수 있다.
참고로, 바로 이 때문에 이 버그에서는 (진짜 버그를 발견할 만큼 충분히 강하지는 않은) 더 강력한 모델을 고를수록 오히려 버그가 있다고 주장할 가능성이 낮아진다. 더 강력한 모델은 환각을 덜 일으키기 때문에 스펙트럼의 어느 쪽에서도 문제를 볼 수 없게 된다. 작은 모델들의 환각 쪽에서도, Mythos의 진정한 이해 쪽에서도 말이다.
글을 무작위로 읽기
댓글
로그인하고 댓글 남기기