AI 사이버 보안은 작업 증명(PoW)이 아니다
AI를 활용한 취약점 발굴은 단순히 연산 자원(GPU)을 많이 쏟아붓는다고 해결되는 작업 증명(PoW) 방식과 다릅니다. 오히려 모델 자체의 지능 수준이 한계를 결정하므로, 더 강력한 모델을 더 빠르게 활용하는 쪽이 보안의 미래를 주도하게 될 것입니다. 실제로 성능이 낮은 모델은 무한한 토큰을 소비해도 복잡한 버그를 발견하지 못하며 단순 환각에 그칩니다.
AI 사이버 보안은 작업 증명(PoW, proof of work)이 아닙니다. antirez 작성, 2시간 전, 7184회 조회.
작업 증명은 잘못된 비유입니다. 해시 충돌을 찾는 것은 N에 따라 기하급수적으로 어려워지지만, 충분한 작업을 거치면 H(S)가 N을 만족하는 어떤 S를 반드시 찾을 수 있습니다. 따라서 자원의 비대칭성이 존재할 때, 더 많은 '작업 능력'을 가진 쪽이 결국 승리하게 됩니다.
하지만 버그는 다릅니다:
- 다양한 LLM 실행은 각기 다른 분기(branch)를 탐색하지만, 결국 코드가 가질 수 있는 가능한 상태를 기반으로 한 분기는 모두 포화 상태에 도달하게 됩니다.
- 주어진 코드에서 버그를 찾기 위해 모델을 M번(매우 큰 수) 샘플링한다고 상상해 봅시다. 결국 한계치는 'M'(코드의 포화 상태와 LLM 샘플러의 의미 있는 경로 때문)이 아니라 모델의 지능 수준인 'I'가 됩니다.
OpenBSD SACK 버그가 이를 명확히 보여줍니다. 하위 모델을 무한한 토큰을 생성하도록 실행해도, 윈도우 시작 값의 검증 누락가 정수 오버플로우, 그리고 노드가 절대 NULL이 되면 안 되는 분기가 무조건 진입된다는 사실이 결합하여 버그가 발생한다는 것을 결코 깨닫지 못할 것입니다(*).
따라서 미래의 사이버 보안은 단순히 '더 많은 GPU를 가진 쪽이 이긴다'는 의미에서 작업 증명과 같지 않을 것입니다. 대신 더 나은 모델을 보유하고, 그러한 모델에 더 빠르게 접근할 수 있는 쪽이 승리할 것입니다.
- 약한 모델도 OpenBSD SACK 버그를 찾을 수 있다고 말하는 사람을 믿지 마세요. 저는 직접 테스트해 봤습니다. 실제로 일어나는 일은 약한 모델이 환각(hallucination)을 일으켜 (때로는 인과적으로 실제 문제를 건드리기도 함) 윈도우 시작 값의 검증 누락(start < end 검증이 있으므로 이론적으로는 무해함)과 정수 오버플로우 문제가 있다고 주장하지만, 이 둘이 결합해 왜 문제를 일으키는지는 이해하지 못한다는 것입니다. 이는 단순히 문제가 있어 보이는 코드에 대한 버그 클래스의 패턴 매칭일 뿐, 문제를 진정으로 이해하고 익스플로잇(exploit)을 작성하는 능력은 전혀 없습니다. 직접 테스트해 보세요, GPT 120B OSS는 저렴하고 접근하기 쉽습니다.
참고로, 이것이 바로 이 버그에서 모델을 선택할수록(단, 실제 버그를 발견할 만큼 강력하지는 않은 경우) 버그가 있다고 주장할 가능성이 적어지는 이유입니다. 더 강력한 모델은 환각을 덜 일으키기 때문에 스펙트럼의 어느 쪽에서도 문제를 볼 수 없습니다. 즉, 작은 모델의 환각 쪽과 '신화(Mythos)' 같은 진정한 이해의 측면 모두에서 말입니다.
Disqus 기반의 댓글을 보려면 JavaScript를 활성화해 주세요.