핵심 요약
공격 서버에 중국어 화면이 떠 있었다. “ARTEX — 自主渗透测试控制台(자율 침투 테스트 콘솔).” 9월 말부터 시중은행 외곽망이 잇따라 침해당한 가운데, 가장 먼저 사고를 신고한 신한은행 공격 서버에서 중국어권 오픈소스 AI 침투 도구 ‘아르텍스(ARTEX)’의 흔적이 나왔다. 이어 금융당국이 KB국민은행 공격 IP와의 교차 분석에 착수하면서 “중국 AI가 국내 은행을 해킹했다”는 의혹이 일파만파 번졌다. 하지만 확인된 팩트를 차분히 뜯어보면 세 군데에서 결정적 모순이 드러난다.
특히 공격 서버에서 콘솔 제목이 확인됐다는 정황과 해당 도구가 실제 침해 과정에 쓰였다는 사실은 전혀 다른 차원의 문제다. 연합뉴스 팩트체크 보도에서도 아르텍스 관련 문구가 서버에 노출된 정황은 확인됐으나, 실제 유출 공격에 이 도구가 사용됐는지는 공식 확인되지 않았다고 명확히 선을 그었다.
외곽 지원 API 집중 노출… 신한·KB 뚫어낸 침투 경로
이번 사안의 실체는 아르텍스 활용 정황이 직접 포착되거나 공격 IP가 연계된 신한은행과 KB국민은행의 침투 경로에 압축돼 있다. 표적은 모두 은행의 견고한 핵심 계정계가 아닌 외부 지원 시스템이었다. 가장 먼저 아르텍스 흔적이 드러난 신한은행은 대출모집인용 조회 서비스에서 2만5729명의 고객 정보가 유출됐고, 여기에 주민등록번호 66건과 연계정보(CI) 97건이 포함됐다고 당국에 신고했다. KB국민은행 역시 내부 행원용 모바일 업무지원 시스템이 뚫리며 고객 119명의 정보가 새 나간 것으로 잠정 집계됐다.
공통점은 뚜렷하다. 보안 통제가 삼엄한 금융 코어 시스템이 아니라 외부 협력사나 이동 근무 직원을 위해 열어둔 웹 창구가 집중 표적이 됐다는 점이다. 금융당국은 공격 IP 접근 이력 분석을 통해 신한은행과 KB국민은행을 노린 침입 시도에서 유의미한 교차점을 확인하고 추적에 착수했다.
이후 금융당국이 전 금융권을 상대로 외곽 시스템 전수 점검을 지시한 사실은 금융당국의 점검 지시로 확인되지만, 이는 추가 피해를 막기 위한 선제적 방어 조치일 뿐 이번 사고의 기술적 원인이 공식 종결된 것과는 구분할 필요가 있다.
기업도 상용 제품도 아니다… 누구나 내려받는 오픈소스 ‘아르텍스’
아르텍스를 두고 ‘중국 AI 기업’으로 적은 기사도 있지만, 아르텍스는 회사도 상용 제품도 아니다. 깃허브(GitHub) 계정 Autumn-27이 7월 26일 공개한 오픈소스 프로젝트다. 라이선스는 AGPL-3.0으로, 누구나 자유롭게 내려받아 쓰고 수정하며 재배포할 수 있다.
구조는 대형언어모델(LLM) 기반 다중 에이전트 체계다. 목표를 쪼개는 에이전트, 공격 경로를 짜는 에이전트, 실제로 명령을 실행하는 에이전트 여럿이 역할을 나눠 정찰부터 취약점 확인까지 사람 개입 없이 자동으로 가동한다. 저장소 설명에는 수상 이력이 붙어 있다. 바이두(Baidu) 보안응급대응센터(BSRC)가 주최한 에이전트플러스 챌린지에서 150여개 팀을 제치고 우승한 프로젝트다.
다만 ‘우승’의 내역은 한 꺼풀 벗겨 볼 필요가 있다. 실전과 기술 평가 종합 1위에 올랐으나, 순수 벤치마크 단독 점수로는 바이두 과제 67.83점(7위), 텐센트(Tencent) TSecBench 89.78점(6위)이었다. 이 벤치마크 점수 역시 정해진 평가 과제와 특정 환경에서의 결과일 뿐, 실제 금융 시스템 침투 성능과 직결되는 것은 아니다.
흥미로운 점은 언론 보도가 집중된 날 이 저장소가 더 가파르게 확산됐다는 사실이다. 평소 하루 1~6건이던 복제(포크)가 10월 2일 하루에만 43건으로 치솟았다. 10월 3일 기준 별 1433개, 복제본 255개다.
첫 번째 착시: 콘솔 문자열 ‘흔적’이 증명하는 한계
침투 흔적의 근거는 두 갈래다. 먼저 문종현 지니언스(Genians) 시큐리티센터장이 공격 서버 HTML 분석을 통해 바로 그 문자열을 찾아 소셜 미디어에 1차 분석으로 공개했다. 이어 금융보안원 관계자 역시 금융권 침해사고 분석에서 “가장 먼저 사고를 신고한 신한은행의 로그와 공격자 IP 등을 역추적해 보니 아르텍스를 활용한 흔적들이 나왔다”고 전했다.
그 문자열은 아르텍스 웹 콘솔의 기본 제목이다. 저장소 설정 파일에 title: "ARTEX — 自主渗透测试控制台"로 박혀 있다. 신한은행 공격 서버에 아르텍스가 설치돼 콘솔이 외부로 노출됐다는 사실까지는 이 흔적으로 충분히 증명된다.
하지만 아르텍스가 유출의 어느 단계를 실제로 수행했는지는 다른 문제다.
여기서 숫자 하나를 경계해야 한다. 일부 보도는 “활성 아르텍스 서버가 약 400개”라고 전했으나, 출처와 측정 방법이 밝혀지지 않았다. 콘솔 제목 문자열로 단순 검색하면 정상적인 연구자가 테스트 목적으로 띄운 인스턴스도 똑같이 잡힌다. 이를 악성 공격 인프라 400개로 확대 해석해서는 안 된다.
금융위원회와 금융감독원, 신한은행 모두 아르텍스 사용을 공식 단정하지 않았다. 역추적으로 아르텍스 콘솔 흔적이 직접 확인된 곳은 신한은행 한 곳이다. 금융당국이 공격 IP 대조 분석을 통해 신한은행과 KB국민은행 공격 IP 일부가 일치한다는 사실을 파악했으나, 당국 설명대로 두 은행을 노린 세력이 동일 공격자라고 단정할 근거는 현재로선 없다.
두 번째 착시: 도구의 출신지와 공격자의 국적
도구가 중국어권에서 개발된 것은 사실이다. 개발자의 활동 이력도, 중국어 설명서도, 바이두 주최 대회도 이를 뒷받침한다. 하지만 오픈소스라는 사실이 그다음 논리를 뒤흔든다.
AGPL 라이선스 소프트웨어는 누구나 내려받아 설치할 수 있다. 실제로 10월 2일에는 아르텍스를 다국어로 현지화한 복제판 프로젝트(ScopeWeaver)까지 깃허브에 등록됐다. 도구의 출신지와 공격자의 국적은 같은 선 위에 서 있지 않다. 금융당국이 공식 파악한 범위도 “해외 유입”까지이며, 공격자는 해외 임대 프록시 서버를 이용해 IP를 지속적으로 바꿨다.
추적 단서가 전무한 것은 아니다. 아르텍스는 단독으로 작동하지 않는다. 저장소 소스코드를 열어보면 “설정된 키가 없으면 탐색 엔진은 멈춰 선다(an LLM is required)”고 명시돼 있다. 사용자가 LLM 모델의 API 키를 입력해야만 엔진이 가동된다. 미국이나 서구권 모델, 예컨대 앤트로픽(Anthropic)이나 오픈AI(OpenAI) 모델을 정상 계정으로 썼다면 제공사 서버에 결제와 사용 로그가 남는다.
하지만 이번 공격자는 이 정상 경로를 우회했다. 아르텍스에 LLM API 프록시인 CLIProxyAPI를 연동해 모델 호출 요청을 중계시켰다는 점이 당국이 파악한 운용 방식이다. 그 프록시 뒤편에 실제로 어떤 모델이 연결됐는지는 공개되지 않았다.
추적 단서는 또 있다. 아르텍스는 모델에 전달한 프롬프트 요청과 수신한 응답 원문을 자체 데이터베이스에 저장한다. 공격 서버를 확보할 경우 모델 제공사의 접근 기록과 무관하게 공격자가 AI에 무엇을 지시했는지 복원될 여지가 있다. 추적의 1차 표적이 모델 서비스 기업이 아니라 공격 서버 자체인 이유다.
대형 모델 자체 호스팅과 API 연동… 공격자가 마주하는 기술적 제약
추적 회피용 익명성과 파괴적 성능은 서로 반대편을 가리킨다.
수사망을 피하기 위해 중국계 오픈웨이트(open-weights) 모델을 자체 서버에 직접 올려 구동하면 되지 않느냐는 반론이 나온다. 하지만 하드웨어 실측 데이터를 살펴보면 현실은 그렇게 간단하지 않다.
보안 벤치마크에서 유의미한 점수를 기록한 오픈웨이트 모델은 대부분 압도적인 크기를 지닌다. 4비트로 양자화 압축하더라도 GLM-5.3은 약 376GB, 딥시크-V4-프로(DeepSeek-V4-Pro)는 800GB대에 달한다. 개인용 최상위 그래픽카드 한 장(24~32GB)에 겨우 담기는 것은 Qwen3.8-27B 수준인데, 이 소형 모델 단독의 침투 테스트 역량은 검증된 바 없다. 카네기멜런대 실험에서 최고 성능으로 평가받은 모델 역시 27B급이 아니라 2조4000억개 파라미터 규모의 초대형 모델이었다.
800GB대 모델을 4비트로 구동하려면 서버용 가속기가 여러 장 결합돼야 한다. 엔비디아(Nvidia) H100 한 장의 VRAM이 80GB, H200이 141GB, B200이 180GB다. 성능이 검증된 대형 모델을 자체 호스팅하는 순간 수천만원대 고가 하드웨어나 클라우드 인프라 임대 영역으로 넘어가며, 비용과 관리 흔적이 고스란히 노출된다.
추론 속도 역시 현실적 제약이다. 대회 주최 측의 공식 기록에 따르면 아르텍스는 공방 챌린지 당시 토큰 4억5650만개 소모를 5시간여 만에 기록했다. 다만 이 수치는 대회 주최 측 인프라에서 수많은 과제를 동시 수행한 총합일 뿐이며, 이번 사고에서 실제 소모된 토큰량이나 단일 모델의 처리속도와 동일시할 수는 없다. 그럼에도 일반 소비자용 그래픽카드로 30B급 모델을 돌리면 초당 수십 토큰에 그쳐, 대형 모델의 실시간 대응과는 현격한 격차가 존재한다.
물론 공격자의 인프라가 ‘자체 호스팅’과 ‘정상 상용 API’라는 두 가지 선택지로만 좁혀지는 것은 아니다. 해외 임대 가상서버(VPS), 다단계 프록시 체인, 불법 취득된 도용 계정 등 다양한 우회 경로가 존재할 수 있다. 다만 상용 API를 경유했다 하더라도 해당 기업의 정책과 관할권에 따라 로그 보존 기간과 수사 협조 범위가 달라지는 만큼, 특정 경로를 썼다는 이유만으로 추적의 성패를 예단하기는 어렵다.
세 번째 착시: AI 없이도 뚫리는 고전적 ‘권한검증 결함’
핵심은 사건의 본질이 정교한 인공지능 해킹이 아니라는 점이다.
보안업계의 정밀 분석에 따르면 신한은행이 뚫린 유력한 경로는 파라미터 변조(Parameter Tampering)였다. 대출모집인은 본래 본인이 담당하는 고객 번호로만 조회가 허용돼야 마땅하다. 하지만 공격자가 웹 요청 속 식별 번호를 타인의 값으로 조작해 지속 전송하자, 백엔드 서버가 요청자의 인가 권한을 재확인하지 않고 타인의 개인정보를 그대로 응답한 것이다.
로그인을 통과하는 인증(authentication)은 이뤄졌으나, 해당 자원에 접근할 자격이 있는지 확인하는 인가(authorization) 검증이 누락돼 있었다. 보안 실무와 교과서에 수십 년째 단골로 등장하는 기초적 권한검증 결함이다. 내부 시스템에 악성코드를 침투시킨 것이 아니라 정상 접속 상태에서 변수 값만 바꿔 보냈기 때문에, 네트워크 관제 모니터링에서는 평범한 트래픽으로 보였다. KB국민은행 역시 직원용 모바일 지원 기능의 인가 허점을 노출하며 유사한 방식으로 당했다.
“AI가 바꾼 것은 뚫는 기술이 아니라 대상을 찾는 속도와 비용이다. 정작 문을 열어준 것은 수십 년째 방치된 외곽 API의 권한검증 결함이었다.”
그렇다면 이번 사고에서 AI는 실제로 어떤 역할을 수행했을까. 현재 확보된 사실과 기술적 증거를 대조하면 세 가지 시나리오로 압축된다.
첫째, 아르텍스가 금융사 외곽 시스템의 표적 탐색이나 취약점 점검에 직접 사용됐을 가능성이다. 이를 최종 입증하려면 공격 서버의 작업 로그나 아르텍스 자체 데이터베이스 기록을 확보해 은행 시스템에 유입된 웹 요청의 시간과 파라미터 규칙을 1:1로 대조해야 한다. 둘째, 실제 공격은 다른 침투 도구나 자동화 스크립트가 수행했고 아르텍스는 공격 서버 내에 단순 테스트 환경으로만 방치돼 있었을 가능성이다. 단순히 HTML 화면에 콘솔 제목이 남아 있었다는 정황만으로는 이 가능성을 배제할 수 없다. 셋째, AI 도구와 전혀 무관하게 기존에 유출된 계정 정보(크리덴셜 스터핑)나 고전적 웹 요청 조작 스크립트가 주된 수단이었을 가능성이다. 이는 실제 유입된 HTTP 패킷의 간격과 헤더 구조를 분석해야 규명할 수 있다.
결국 AI가 바꾼 것은 침투 기술 그 자체가 아니라 약한 고리를 찾아내는 탐색 비용일 가능성이 크다. 데일리시큐가 인용한 보안 전문가의 분석 역시 “이번 사고에서 AI는 공격 대상을 발굴하고 취약점을 탐색하는 시간과 비용을 획기적으로 낮춘 보조 도구로 이해해야 한다”고 선을 그었다.
진짜 쟁점: 활짝 열린 외곽 문과 무차별 풀린 침투 무기
결국 열쇠는 공격 도구의 국적이 아니라 수비 진영의 문단속에 있다.
진짜 경계해야 할 사안은 ‘중국 AI’라는 자극적인 표제가 아니라 두 가지 명백한 현실이다. 첫째는 신한은행과 KB국민은행 등 금융권 외곽 API의 인가 검증이 무력화돼 있었다는 사실이며, 둘째는 대회 우승 수준의 자율 침투 도구가 인터넷 공간에 누구나 취득할 수 있는 형태로 개방돼 있다는 점이다.
아르텍스 깃허브 저장소에는 “개인 학습과 코드 연구, 로컬 기술 검증 용도로만 제한하며, 어떠한 온라인 시스템이나 웹사이트에도 실제 테스트를 시도하지 말라”는 면책 경고문이 기재돼 있다. 하지만 이를 기술적으로 강제하는 안전장치는 존재하지 않는다. 개발자의 선의에 기댄 당부일 뿐이며, 오픈소스 라이선스인 AGPL은 본질적으로 소프트웨어의 용도 제한을 허용하지 않는다.
방어 진영의 실질적 대응책 역시 외곽 API의 쇄신으로 수렴한다. 보안 전문가들은 외부에 노출된 대고객·협력사 API의 인가 구조를 전수 재점검하고, 비정상적 대량 조회가 포착됐을 때 보안 조직이 즉각 차단 조치를 취할 수 있도록 선제적 대응 권한을 부여하는 체계가 시급하다고 입을 모은다. 공격자의 IP 하나를 차단하더라도 새 프록시와 우회 서버로 갈아타면 무차별적인 스캔 공격이 반복되기 때문이다.
남은 과제는 수사 당국의 실측 규명이다. 공격에 최종 연동된 모델의 정체와 아르텍스가 신한은행과 KB국민은행 데이터 유출의 어느 단계까지 직접 관여했는지는 아직 베일에 싸여 있다. 금융보안원 관계자는 다만 한 가지 결론을 명확히 못 박았다. “사람의 개입 없이 AI가 독자적으로 판단하여 금융사를 공격한 것은 아니다.”