AI VIDEO BRIEFING
음향 키로거 실습: 키보드 타건음을 딥러닝으로 분류해 타이핑 내용을 복원하는 방법과 대응책
NDC 코펜하겐 강연에서 엔지니어 데이비드 폰테넨이 키보드 타건음을 스펙트로그램 이미지로 바꿔 딥러닝으로 분류하는 음향 사이드채널 공격을 직접 시연하고, 단일 키보드 100% 정확도라는 결과와 함께 현실적인 방어법을 제시했다.

핵심 메시지
쉽게 이해하기
NDC 코펜하겐에서 AI·ML 엔지니어 데이비드 폰테넨은 '당신 비밀의 소리'라는 제목으로 음향 키로거를 다뤘다. 일반적인 키로거가 컴퓨터에 설치돼 입력을 가로채는 프로그램이라면, 음향 키로거는 오직 소리만으로 같은 일을 한다. 그는 발표를 AI의 도덕적 양면성에서 시작했다. 인공지능이 단백질 접힘 문제를 풀고 새로운 약물을 발견하는 한편, 미국의 소매점에서는 전자 가격표와 머신러닝으로 시간대에 따라 소비자가 지불할 의향이 있는 최대 가격을 뽑아내는 데 쓰인다는 것이다.
기술의 출발점은 그가 직접 만든 것이 아니라 '키보드에 대한 실용적 딥러닝 기반 음향 사이드채널 공격'이라는 arXiv 논문이다. 그는 이 논문을 구현하면서 여러 개선을 더했고, 방어하려면 먼저 이해해야 한다는 이유로 코드와 데이터셋을 공개했다. 원리 자체는 단순하다. 소리는 시간에 따른 주파수이므로, WAV 파일을 스펙트로그램 이미지로 바꾸면 어느 시점에 어떤 주파수가 얼마나 강한지가 히트맵처럼 드러난다. 눈으로만 봐도 같은 키에서 난 소리와 다른 키에서 난 소리를 구분할 수 있을 정도다.
데이터셋은 두 가지가 쓰였다. 하나는 2024년 싱가포르 해커톤에서 사용된 단일 키보드 데이터셋이고, 다른 하나는 레노버·HP·애플·MSI 등 여섯 종류의 키보드를 대상으로 한 데이터셋이다. 특히 후자에는 같은 타건음을 줌(Zoom)과 메신저로 녹음한 것도 포함돼 있다. 각 키의 오디오를 알파벳 폴더에 넣어 스펙트로그램으로 변환하고, 폴더 이름을 라벨 삼아 PyTorch로 학습시킨다. 분류 대상은 A~Z, 0~9, 스페이스, 엔터를 합친 38개 키다. 타건 시점이 정확히 0초가 아닐 수 있으므로 잡음 추가와 시간 이동 같은 증강도 적용한다.
결과는 단일 키보드에서 100% 정확도였다. 여러 키보드를 섞은 모델에서는 1순위 예측 정확도가 46%로 떨어지지만, 38개 중 하나를 무작위로 맞히는 확률과 비교하면 결코 낮지 않다. 그는 여기서 상위 K개 후보를 남기는 방식을 활용한다. 'hello people'을 타이핑한 소리를 넣으면 'hello'는 1순위로 맞히고 'people'의 P는 2순위에 걸린다. 원 논문이 1순위만 봤던 것이 실수였다는 것이 그의 지적이다.
조합 폭발은 스페이스바로 해결한다. 스페이스바는 크기가 커서 다른 키와 뚜렷이 구별되는 소리를 내므로, 이를 단어 구분자로 쓰면 12자 전체를 한 번에 푸는 대신 5자와 6자로 쪼갤 수 있다. 각각 32가지, 64가지 조합만 확인하면 되고, 여기에 온라인 맞춤법 검사를 붙여 실제 단어인 조합만 골라낸다. 끝내 풀리지 않는 단어는 빈칸으로 남기고 문장 맥락을 언어모델에 넘겨 가장 그럴듯한 단어를 채운다. 그는 '덴마크의 수도는 ___'에 '코펜하겐'을, '증류 모델은 대형 모델의 ___'에 '더 작은 것'을 채워 넣는 시연으로 이 단계를 보여줬다.
주요 인사이트
- 발표자는 현실적인 공격 대상으로 ATM 키패드를 꼽았다. 고정된 단일 키보드이고 모두가 같은 기기를 쓰기 때문에, 자주 가는 은행에서 숫자별 소리를 충분히 모으면 모델을 만들 수 있다는 것이다.
- 카드 스키머가 자기 정보를 복사하는 순간을 '녹음 시작 신호'로 삼으면 카드 정보와 PIN을 묶을 수 있다는 시나리오까지 제시되는데, 이는 물리 보안과 음향 공격이 결합될 수 있음을 보여준다.
- 여섯 대의 키보드 데이터에 줌·메신저로 녹음한 트랙이 포함돼 있다는 사실은, 화상회의 중 마이크를 켠 채 타이핑하는 습관이 그 자체로 노출 경로임을 뜻한다.
- 발표자는 학습에 쓰이지 않은 완전히 새로운 키보드로는 시도하지 않았다고 밝혔다. 이 공격이 성립하려면 대상 키보드가 '이미 아는 키보드'여야 한다는 점이 현재의 실질적 방어선이다.
- 이 접근이 성립하려면 12시간 H100 학습이 필요하지만, 학습된 모델 파일만 받으면 어떤 노트북에서도 추론은 즉시 가능하다. 공격 비용의 무게중심이 학습 단계에 몰려 있다는 뜻이다.
자주 묻는 질문
음향 키로거는 어떻게 소리를 글자로 바꾸나?
먼저 각 키를 누르는 소리를 WAV 파일로 녹음하고, 이를 시간축과 주파수축을 갖는 스펙트로그램 이미지로 변환한다. 이 이미지의 RGB 값이 특정 시점·특정 주파수의 세기를 나타낸다. 알파벳별 폴더에 이미지를 모아 폴더 이름을 라벨로 삼고, 합성곱 신경망과 셀프어텐션을 결합한 구조로 학습시켜 A~Z, 0~9, 스페이스, 엔터 등 38개 키를 분류한다.
정확도가 46%인데도 왜 위험한가?
1순위 예측만 보면 낮아 보이지만, 38개 중 하나를 무작위로 고르는 것과 비교하면 훨씬 높다. 게다가 상위 2~3순위까지 후보로 남기고 스페이스바를 단어 구분자로 써서 조합 수를 줄인 다음, 맞춤법 검사로 실제 단어만 걸러내면 문장 단위 복원이 가능해진다. 그래도 풀리지 않는 단어는 문맥을 언어모델에 넘겨 가장 그럴듯한 단어로 채운다.
개인이 취할 수 있는 방어책은?
발표자는 하드웨어 보안키를 이용한 2단계 인증을 권한다. 타이핑 내용이 새어나가더라도 물리 키가 없으면 접근할 수 없기 때문이다. SMS 기반 2FA는 가짜 기지국이나 가짜 핫스팟 때문에 안전하지 않다고 본다. 또한 본인도 모르는 무작위 비밀번호를 오프라인 생성기로 만들어 서비스마다 다르게 쓰고 주기적으로 교체할 것, 그리고 음악이나 물소리 같은 소음으로 타건음에 간섭을 주는 방법을 제안한다.
원문과 출처
이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.
YouTube 원본 영상 보기 ↗