요즘 인공지능(AI) 업계는 딥러닝을 통해 시각 인식 및 자연어 처리 분야에서 비약적인 발전을 이루어내면서 그 기쁨을 만끽하고 있다. 그러나 모든 새로운 혁신 기술과 마찬가지로 인공지능에도 보안 문제가 따른다. 핵심은 혁신 기술을 다루는 방식에 있을 것이다. 새로운 기술로 비즈니스 및 업무 방식에 혁신을 가져오기 위해서는 최대한 신중하게 다루어 오류, 오용 또는 악화를 피해야 한다. 다행히도, 인공지능 기술 자체가 인공지능을 더욱 강력하게 만드는 열쇠가 될 수 있다.
양날의 검 : 인공지능의 가장 큰 힘이 또 한편 가장 큰 위험인 이유
인공지능에만 보안 문제가 있는 것은 아니다. 모든 종류의 소프트웨어 시스템은 보안 문제를 안고 있다. 그러나 인공지능이 가진 두 가지 고유한 속성으로 인해 그 보안을 더욱 강화해야 할 필요성이 대두된다. 첫 번째는 인공지능의 힘이다. 인공지능 시스템은 일반적으로 사람의 생산성을 향상시킬 목적으로 구축되기 때문에 업무 수행에서, 특히 반복적인 작업에 있어서는 인력 자원보다 훨씬 효율적일 수밖에 없다. 따라서 운영자가 악의를 갖고 시스템을 통제한다면 그 악의적인 영향력도 비례해서 증가할 것이다. 즉, 인공지능의 가장 큰 장점인 엄청난 힘이 나쁜 사람의 손에 들어가면 오히려 가장 위험한 요소가 될 수 있는 양날의 검이라 할 수 있다. 이 위험은 인공지능이 보편화됨에 따라 더욱 확대될 수밖에 없다. 앞으로 인공지능 시스템은 산업 전 분야에 걸쳐 널리 보급될 것이 분명한데, 이러한 도구가 악의적인 사용자의 손에 넘어가면 잠재적으로 커다란 문제를 야기할 수 있다. 두 번째 고유 속성은 인공지능이 데이터에 의존한다는 사실이다. 대부분의 인공지능 시스템은 데이터를 토대로 의사결정 결과를 도출한다. 이것은 악의적인 용도로 사용하기 위해 인공지능 시스템을 손상시킬 필요 없이 데이터를 조작하면 가능하다는 뜻이다. 데이터 소스를 오염, 변형, 또는 훼손하면 인공지능 시스템의 효과는 떨어질 수밖에 없다. 따라서 인공지능 시스템 뿐만 아니라 원래의 소스 데이터도 보호해야 한다.
새로운 보안 위협의 시대 : 두 가지 공격 유형
악의적인 의도로 인공지능 시스템을 공격하기 위해 데이터를 조작하는 방법에는 크게 블랙박스와 화이트박스의 두 가지 유형이 있다. 블랙박스 유형은 공격자가 인공지능 시스템이 어떻게 구성되어 있는지 전혀 모를 때 감행하는 방식이다. 아는 것이 없기 때문에 시스템에 대한 데이터를 수집해야 한다. 대략 1,000 개의 입력 및 출력 관계 샘플을 관찰하여 그 데이터에 따라 시스템 내에 무엇이 있는지 추측하고 공격 모델을 구축할 수 있다. 인공지능 시스템에서 수집한 데이터가 많으면 많을수록 공격이 성공할 가능성이 높아진다. 따라서 블랙박스의 경우 시간이 길어질수록 공격자가 선택할 수 있는 샘플이 많아지기 때문에 오랜 기간 운영해 온 인공지능 시스템에 더 많이 발생하는 패턴이다. 화이트박스 유형은 공격자가 시스템 아키텍처, 매개 변수 등을 포함하여 내부에 무엇이 있는지 이미 알고 시작한다. 이런 정보를 토대로 시스템을 무력화시키기에 충분한 정도로만 데이터를 변경하며, 블랙박스 공격보다 성공률이 훨씬 높다. 그러나 공격자가 시스템의 작동 방식을 완전히 이해하고 데이터를 조작하려면 일단은 시스템 침투에 성공해야 하는데, 이것이 쉽지는 않다. 직관적으로 납득이 안될 수 있다. 시스템 해킹에 성공했다면 왜 직접 제어하지 않는 것일까? 화이트박스 공격은 보다 장기적이고 지속적인 기간에 걸쳐 시스템을 악용하기 때문에 결과적으로 더 많은 피해를 입힐 수 있기 때문이다. 공격자는 시스템을 빠른 속도로 해킹할 수 있고, 이어서 시스템 전체를 복사할 수도 있다. 그러나 시스템을 직접 제어하는 대신 자신들이 활용할 동일한 버전을 만들어 둔다. 그러면 화이트박스 공격을 감행할 수 있다.
구조대원으로 나선 인공지능 (AI)
이와 같은 위협은 모두 매우 부정적으로 들린다. 하지만, 희망의 실마리는 있다. 인공지능 자체가 이런 공격으로부터 인공지능 시스템을 보호할 수 있다. 머신러닝을 사용하여 과거의 공격 패턴을 연구함으로써 공격이 임박했을 때 시스템이 어떤 행동의 변화를 일으킬지 예측할 수 있다. 그러면 특정 위험 시그널이 감지될 때 시스템에 경고를 울리거나 나아가 시스템을 종료하는 모델을 구축할 수 있다. 이는 사람이 직접 위험 시그널을 모니터링하는 것보다 훨씬 효율적이다. 충분한 트레이닝 데이터만 수집하면 된다. 문제는 새로운 공격 유형이 계속 만들어지고 있다는 점이다. 새로운 유형의 경우 시스템이 무엇을 주의해서 살펴봐야 할지 모르기 때문에 머신러닝 접근법이 효과를 낼 수 없다. 그러나, 이 부분도 곧 개선될 전망이다. 인공지능 스스로 시스템의 어느 부분이 취약한지 알아낼 수 있도록 훈련시키는 방법에 대한 연구가 활발히 진행중이다. 이것은 무엇을 주의할지에 대한 교육 자료를 기록하여 시스템을 가르치는 것보다 한층 사전 예방적인 접근법이다. 현재는 인공지능이 취약 부분을 테스트할 행동 반경을 인간이 정의해주고 있다. 이는 트레이닝 데이터를 수집하는 것보다 훨씬 어렵다. 정의해야 할 행동 반경 자체가 방대하고 복잡하기 때문이다. 앞으로 인공지능을 활용하여 이 부분을 완전히 자동화할 수 있다. 그러면 최소한의 추가 비용 투입으로 효율성 및 생산성 향상과 같은 인공지능의 모든 이점을 누릴 수 있다.
Best Practice
인공지능과 관련된 위험성에 대해 생각할 때 ‘터미네이터’와 같은 SF 영화를 떠올린다. 하지만 걱정할 필요 없다. 현재의 기술 발전 속도로 봤을 때 영화와 같은 상황은 정말로 먼 미래의 일이며, 인공지능이 가진 이점이 위험보다 훨씬 크다. 인공지능을 사용하는 기업이나 사람들이 보안 문제를 인지하고 있어야 한다. 모든 소프트웨어와 마찬가지로 잠재적인 취약점을 해결하기 위해 인공지능 시스템을 항상 최신 버전으로 유지하는 것이 좋다. 또한, 시스템의 취약점을 테스트하여 시스템이 작동하지 않기 위해서는 얼마나 많은 데이터를 변경해야 하는지 확인해야 한다. 이상적으로는 시스템이 모든 변경 사항을 감지하여 사전에 시스템을 종료하거나 백업 시스템으로 전환할 수 있어야 한다. 컴퓨터 시스템이 점점 더 복잡해짐에 따라 인간이 보안 취약점을 발견하기가 더 어려워지고 있다. 세계 최고 수준의 해커도 복잡한 시스템을 완전히 해킹할 수는 없지만, 이것이 곧 그 시스템이 완벽하다는 의미는 아니다. 오히려 인공지능을 적극 활용하여 취약한 부분이 어디인지 선제적으로 조사하고, 이를 토대로 인간의 요구사항을 충족시킬 수 있는 보다 견고한 시스템을 구축해가야 한다.